-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add first GHA * Add daily check * Remove travis
- Loading branch information
Showing
5 changed files
with
126 additions
and
44 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
--- | ||
name: Daily security check | ||
on: | ||
schedule: | ||
- cron: '0 0 * * *' | ||
workflow_dispatch: | ||
|
||
jobs: | ||
security: | ||
runs-on: ubuntu-latest | ||
timeout-minutes: 10 | ||
steps: | ||
- name: Checkout repo | ||
uses: actions/checkout@v4 | ||
|
||
# PHP checks | ||
- name: Check for php composer project | ||
id: check_composer | ||
uses: andstor/file-existence-action@v2 | ||
with: | ||
files: "composer.lock" | ||
- name: Vulnerability check | ||
run: php composer audit | ||
if: steps.check_composer.outputs.files_exists == 'true' | ||
|
||
# node-yarn checks | ||
- name: Check for node-yarn project | ||
id: check_node_yarn | ||
uses: andstor/file-existence-action@v2 | ||
with: | ||
files: "yarn.lock" | ||
- name: Setup node | ||
if: steps.check_node_yarn.outputs.files_exists == 'true' | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: 14 | ||
- name: Yarn Audit | ||
if: steps.check_node_yarn.outputs.files_exists == 'true' | ||
run: yarn audit --level high --groups dependencies optionalDependencies | ||
|
||
# node-npm checks | ||
- name: Check for node-npm project | ||
id: check_node_npm | ||
uses: andstor/file-existence-action@v2 | ||
with: | ||
files: "package.lock" | ||
- name: Setup node | ||
if: steps.check_node_npm.outputs.files_exists == 'true' | ||
uses: actions/setup-node@v3 | ||
with: | ||
node-version: 14 | ||
- name: npm audit | ||
if: steps.check_node_npm.outputs.files_exists == 'true' | ||
run: npm audit --audit-level=high | ||
|
||
# python checks | ||
- name: Check for python project | ||
id: check_python | ||
uses: andstor/file-existence-action@v2 | ||
with: | ||
files: "requirements.txt" | ||
- name: Safety checks Python dependencies | ||
if: steps.check_python.outputs.files_exists == 'true' | ||
uses: pyupio/[email protected] | ||
|
||
# java checks | ||
- name: Check for java maven project | ||
id: check_maven | ||
uses: andstor/file-existence-action@v2 | ||
with: | ||
files: "pom.xml" | ||
- name: Setup java if needed | ||
if: steps.check_maven.outputs.files_exists == 'true' | ||
uses: actions/setup-java@v3 | ||
with: | ||
java-version: 11 | ||
distribution: 'temurin' | ||
cache: 'maven' | ||
- name: Set up maven cache if needed | ||
if: steps.check_maven.outputs.files_exists == 'true' | ||
uses: actions/cache@v1 | ||
with: | ||
path: ~/.m2/repository | ||
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | ||
restore-keys: | | ||
${{ runner.os }}-maven- | ||
- name: Check java | ||
if: steps.check_maven.outputs.files_exists == 'true' | ||
run: mvn org.owasp:dependency-check-maven:check | ||
|
||
# Send results | ||
- name: Send to Slack if something failed | ||
if: failure() | ||
uses: rtCamp/action-slack-notify@v2 | ||
env: | ||
SLACK_CHANNEL: surfconext-nightly-check | ||
SLACK_COLOR: ${{ job.status }} | ||
SLACK_ICON: https://static.surfconext.nl/logos/idp/surfnet.png | ||
SLACK_MESSAGE: 'Dependency check failed :crying_cat_face:' | ||
SLACK_TITLE: ${{ github.repository }} wants attention | ||
SLACK_USERNAME: NightlySecurityCheck | ||
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
name: Run QA tests (static analysis, lint and unit tests) | ||
on: [pull_request] | ||
|
||
jobs: | ||
run-qa-tests: | ||
runs-on: ubuntu-latest | ||
defaults: | ||
run: | ||
working-directory: /var/www/html/ | ||
container: | ||
image: ghcr.io/openconext/openconext-basecontainers/php82-apache2-node20-composer2:latest | ||
volumes: | ||
- .:/var/www/html | ||
|
||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
|
||
- name: Composer install | ||
run: composer install | ||
|
||
- name: Run QA tests | ||
run: composer check |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -31,7 +31,7 @@ | |
} | ||
}, | ||
"scripts": { | ||
"test": [ | ||
"check": [ | ||
"@phpunit", | ||
"@security-tests" | ||
], | ||
|