Skip to content

Conversation

@vtaskow
Copy link
Contributor

@vtaskow vtaskow commented Dec 10, 2025

Why

Motivation

The previous structure of the workflows was not very efficient in terms of waiting time. Every scan was sequential and the runner was running out of memory on the last 2 scans which were the alibis. This workflow resolves the 'no disk space' error that the Snyk action was throwing and also allows for several scans to run in parallel, reducing the overall time a developer would wait for results.

What

Summary of changes

  • Bumped the Python version for Snyk to 3.12 as this is what we are using starting from Core 1.19
  • Installed tensorflow extra before the Snyk scan to allow Snyk to scan this package and its dependencies
  • Split workflow for scanning Docker images into 2:
    • In the first one, Snyk scans the executor, operator and RClone images
    • In the second one, only Python Docker images are scanned
  • The security_scans_python_v1.yml workflow has a changed structure:
    • In the first job, the conda base and python wrapper images are build and scanned(the python wrapper depends on the conda base)
    • Then 3 jobs depend on the the previous one:
      • The prepackaged server images use the python wrapper image as a base
      • The alibi explain and alibi detect server images depend on the conda base image as a base
    • All of those jobs so far include Snyk scans and all of them upload a result from the Snyk scan to the github registry temporarily
    • Once those 4 jobs finish, the last job is triggered, it downloads all the Snyk scan results and outputs success only if all of them are successful scans i.e. no High / Critical CVEs that can be fixed are present.

Full commit history is present at the working branch: #6962

@vtaskow vtaskow requested a review from tyndria December 10, 2025 18:24
@vtaskow vtaskow changed the title Refactor ci snyk scanning oom chore(ci-snyk): Refactor Snyk workflows to avoid 'no disk space' issues for Snyk Dec 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants