Skip to content

AppSec

AppSec #10428

Workflow file for this run

name: AppSec
on:
pull_request:
push:
branches: [master]
schedule:
- cron: '0 4 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
jobs:
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- run: yarn test:appsec:ci
- uses: codecov/codecov-action@v3
ubuntu:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:ci
- uses: ./.github/actions/node/20
- run: yarn test:appsec:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:ci
- uses: codecov/codecov-action@v3
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '18'
- uses: ./.github/actions/install
- run: yarn test:appsec:ci
- uses: codecov/codecov-action@v3
ldapjs:
runs-on: ubuntu-latest
env:
PLUGINS: ldapjs
services:
openldap:
image: bitnami/openldap:latest
ports:
- '1389:1389'
- '1636:1636'
env:
LDAP_ADMIN_USERNAME: 'admin'
LDAP_ADMIN_PASSWORD: 'adminpassword'
LDAP_USERS: 'user01,user02'
LDAP_PASSWORDS: 'password1,password2'
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
postgres:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:9.5
env:
POSTGRES_PASSWORD: postgres
ports:
- 5432:5432
env:
PG_TEST_NATIVE: 'true'
PLUGINS: pg|knex
SERVICES: postgres
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/18
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/20
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
mysql:
runs-on: ubuntu-latest
services:
mysql:
image: mariadb:10.4
env:
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_DATABASE: 'db'
ports:
- 3306:3306
env:
PLUGINS: mysql|mysql2|sequelize
SERVICES: mysql
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/18
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/20
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
express:
runs-on: ubuntu-latest
env:
PLUGINS: express|body-parser|cookie-parser
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
graphql:
runs-on: ubuntu-latest
env:
PLUGINS: apollo-server|apollo-server-express|apollo-server-fastify|apollo-server-core
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
mongodb-core:
runs-on: ubuntu-latest
services:
mongodb:
image: circleci/mongo
ports:
- 27017:27017
env:
PLUGINS: express-mongo-sanitize|mquery
SERVICES: mongo
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
mongoose:
runs-on: ubuntu-latest
services:
mongodb:
image: circleci/mongo
ports:
- 27017:27017
env:
PLUGINS: mongoose
SERVICES: mongo
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
sourcing:
runs-on: ubuntu-latest
env:
PLUGINS: cookie
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/18
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/20
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
next:
strategy:
matrix:
version:
- 18
- latest
runs-on: ubuntu-latest
env:
PLUGINS: next
PACKAGE_VERSION_RANGE: ${{ matrix.range }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/testagent/start
- uses: actions/setup-node@v3
with:
cache: yarn
node-version: ${{ matrix.version }}
- uses: ./.github/actions/install
- run: yarn test:appsec:plugins:ci
- if: always()
uses: ./.github/actions/testagent/logs
- uses: codecov/codecov-action@v3
lodash:
runs-on: ubuntu-latest
env:
PLUGINS: lodash
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: ./.github/actions/install
- uses: ./.github/actions/node/oldest
- run: yarn test:appsec:plugins:ci
- uses: ./.github/actions/node/latest
- run: yarn test:appsec:plugins:ci
- uses: codecov/codecov-action@v3
integration:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: yarn install
- uses: ./.github/actions/node/oldest
- run: yarn test:integration:appsec
- uses: ./.github/actions/node/latest
- run: yarn test:integration:appsec