.github/workflows/actions.yml
name: PHP actions
on:
push:
branches:
- developer
pull_request:
branches:
- developer
jobs:
composer:
name: Composer
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: 🔎 Check IP
run: curl https://api.ipify.org
- name: Validate composer.json and composer.lock
run: composer validate
- name: Cache Composer dependencies
uses: actions/cache@v3
with:
path: /tmp/composer-cache
key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }}
- name: Install dependencies
run: composer install --prefer-dist --no-progress --no-suggest
code:
name: Code
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: PHP VarDump Check Action
uses: umutphp/php-var-dump-check-action@v1
with:
exclude: 'vendor,tests'
- name: Check PHP syntax errors
uses: overtrue/phplint@8.0
- name: DevSkim
uses: microsoft/DevSkim-Action@v1
- name: codecov.io/validate
run: curl --data-binary @codecov.yml https://codecov.io/validate
copilot:
name: CoPilot
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Set up JDK 1.8
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: 18
- name: Upload to CoPilot
run: bash <(curl -s https://copilot.blackducksoftware.com/ci/githubactions/scripts/upload)
test_swagger_editor_validator_remote:
runs-on: ubuntu-latest
name: Swagger Editor Validator Remote
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Validate OpenAPI definition - WebservicePremium.yaml
uses: char0n/swagger-editor-validate@v1.3.1
with:
definition-file: api/doc/WebservicePremium.yaml
- name: Validate OpenAPI definition - ManageConsents.yaml
uses: char0n/swagger-editor-validate@v1.3.1
with:
definition-file: api/doc/ManageConsents.yaml
- name: Validate OpenAPI definition - WebserviceStandard.yaml
uses: char0n/swagger-editor-validate@v1.3.1
with:
definition-file: api/doc/WebserviceStandard.yaml
gitGuardian:
name: GitGuardian scan
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: GitGuardian scan
uses: GitGuardian/gg-shield-action@master
env:
GITHUB_PUSH_BEFORE_SHA: ${{ github.event.before }}
GITHUB_PUSH_BASE_SHA: ${{ github.event.base }}
GITHUB_PULL_BASE_SHA: ${{ github.event.pull_request.base.sha }}
GITHUB_DEFAULT_BRANCH: ${{ github.event.repository.default_branch }}
GITGUARDIAN_API_KEY: ${{ secrets.GITGUARDIAN_API_KEY }}
#
# Documentation:
# https://help.github.com/en/articles/workflow-syntax-for-github-actions
#
build:
name: Lint Code Base
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Lint Code Base
uses: docker://github/super-linter:v4.9.6
env:
DEFAULT_BRANCH: developer
FILTER_REGEX_EXCLUDE: .*(*.min.js|*.min.css).*s
VALIDATE_ALL_CODEBASE: false
VALIDATE_PHP: true
VALIDATE_JSON: true
VALIDATE_YAML: true
VALIDATE_XML: true
VALIDATE_BASH: true
VALIDATE_DOCKER: true
VALIDATE_CSS: true
VALIDATE_OPENAPI: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}