Snyk Security #145
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
name: Snyk Security | |
on: | |
push: | |
branches: ["dev"] | |
schedule: | |
- cron: "0 0 * * *" | |
workflow_dispatch: | |
permissions: | |
contents: read | |
jobs: | |
snyk: | |
permissions: | |
contents: read # for actions/checkout to fetch code | |
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results | |
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Snyk CLI to check for security issues | |
# Snyk can be used to break the build when it detects security issues. | |
# In this case we want to upload the SAST issues to GitHub Code Scanning | |
uses: snyk/actions/setup@806182742461562b67788a64410098c9d9b96adb | |
# Application dependencies | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 20 | |
env: | |
# This is where you will need to introduce the Snyk API token created with your Snyk account | |
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }} | |
# Authenticate Snyk | |
# Use || true to not fail the pipeline | |
- name: Snyk Auth | |
run: snyk auth ${{ secrets.SNYK_TOKEN }} | |
# Runs Snyk Code (SAST) analysis and uploads result into GitHub. | |
# Use || true to not fail the pipeline | |
- name: Snyk Code test | |
run: snyk code test --sarif > snyk-code.sarif || true | |
# Install Dependencies | |
- name: Install Dependencies | |
run: npm pkg set scripts.prepare=" " && npm install --legacy-peer-deps | |
# Runs Snyk Open Source (SCA) analysis and uploads result to Snyk. | |
- name: Snyk Open Source monitor | |
run: snyk monitor --all-projects | |
# Build the docker image for testing | |
- name: Build a Docker image | |
run: docker build -f Dockerfile.dev -t widget-image . | |
# Runs Snyk Container (Container and SCA) analysis and uploads result to Snyk. | |
- name: Snyk Container monitor | |
run: snyk container monitor widget-image | |
# Push the Snyk Code results into GitHub Code Scanning tab | |
- name: Upload result to GitHub Code Scanning | |
uses: github/codeql-action/upload-sarif@v2 | |
with: | |
sarif_file: snyk-code.sarif |