Skip to content

Update snyk-security.yml #47

Update snyk-security.yml

Update snyk-security.yml #47

Workflow file for this run

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# A sample workflow which sets up Snyk to analyze the full Snyk platform (Snyk Open Source, Snyk Code,
# Snyk Container and Snyk Infrastructure as Code)
# The setup installs the Snyk CLI - for more details on the possible commands
# check https://docs.snyk.io/snyk-cli/cli-reference
# The results of Snyk Code are then uploaded to GitHub Security Code Scanning
#
# In order to use the Snyk Action you will need to have a Snyk API token.
# More details in https://github.com/snyk/actions#getting-your-snyk-token
# or you can signup for free at https://snyk.io/login
#
# For more examples, including how to limit scans to only high-severity issues
# and fail PR checks, see https://github.com/snyk/actions/
name: Snyk Security
on:
push:
branches: ["main" ]
pull_request:
branches: ["main"]
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@85e6279cec87321a52edac9c87bce653a07cf6c2
- 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@cdb760004ba9ea4d525f2e043745dfe85bb9077e
with:
snyk-version: latest
- name: Set up Python
uses: actions/setup-python@19e4675e06535f6b54e894da5c1f044400bb4996
with:
python-version: '3.12.7'
- name: Create Sarif file's dir
run: mkdir sarif
- name: Install dependencies
run: |
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
if [ -f Pipfile ]; then pip install pipenv && pipenv install --dev; fi
if [ -f pyproject.toml ]; then pip install poetry && poetry install; fi
- name: Run Snyk to check for vulnerabilities
uses: snyk/actions/python-3.10@cdb760004ba9ea4d525f2e043745dfe85bb9077e
continue-on-error: true # To make sure that SARIF upload gets called
env:
SNYK_TOKEN: ${{ secrets.SNYK_SECRET_TOKEN }}
with:
args: --sarif-file-output=sarif/snyk.sarif
# Runs Snyk Open Source (SCA) analysis and uploads result to Snyk.
- name: Snyk Open Source monitor
continue-on-error: true # To make sure that SARIF upload gets called
env:
SNYK_TOKEN: ${{ secrets.SNYK_SECRET_TOKEN }}
run: snyk test monitor --all-projects --sarif-file-output=sarif/snyk.sarif
# Push the Snyk Code results into GitHub Code Scanning tab
- name: Upload result to GitHub Code Scanning
uses: github/codeql-action/upload-sarif@6349095d19ec30397ffb02a63b7aa4f867deb563
env:
SNYK_TOKEN: ${{ secrets.SNYK_SECRET_TOKEN }}
with:
sarif_file: sarif/snyk.sarif