10163f55a5
This PR pins GitHub Actions to full commit SHAs and adds a CI check to keep them pinned. The check uses `zizmor` via the official `zizmorcore/zizmor-action`. ## Notes The `zizmor` config currently disables a small set of rules that already fail on existing workflows. These rules are listed explicitly in `.zizmor.yml` and can be re-enabled later as the corresponding findings are fixed. For this PR, the main goal is to enforce SHA pinning for GitHub Actions. Broader GitHub Actions hardening can be handled in follow-up changes. ### Motivation and context <!-- Why is this change required? What problem does it solve? If it fixes an open issue, please link to the issue here. Describe your changes in detail, add screenshots. --> ### How has this been tested? <!-- Please describe in detail how you tested your changes. Include details of your testing environment, and the tests you ran to see how your change affects other areas of the code, etc. --> ### Checklist <!-- Go over all the following points, and put an `x` in all the boxes that apply. If an item isn't applicable for some reason, then ~~explicitly strikethrough~~ the whole line. If you don't do that, GitHub will show incorrect progress for the pull request. If you're unsure about any of these, don't hesitate to ask. We're here to help! --> - [x] I submit my changes into the `develop` branch - [ ] I have created a changelog fragment <!-- see top comment in CHANGELOG.md --> - [ ] I have updated the documentation accordingly - [ ] I have added tests to cover my changes - [ ] I have linked related issues (see [GitHub docs]( https://help.github.com/en/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword)) ### License - [x] I submit _my code changes_ under the same [MIT License]( https://github.com/cvat-ai/cvat/blob/develop/LICENSE) that covers the project. Feel free to contact the maintainers if that's a concern. --------- Co-authored-by: Roman Donchenko <roman@cvat.ai>
73 lines
2.9 KiB
YAML
73 lines
2.9 KiB
YAML
# For most projects, this workflow file will not need changing; you simply need
|
||
# to commit it to your repository.
|
||
#
|
||
# You may wish to alter this file to override the set of languages analyzed,
|
||
# or to provide custom queries or build logic.
|
||
#
|
||
# ******** NOTE ********
|
||
# We have attempted to detect the languages in your repository. Please check
|
||
# the `language` matrix defined below to confirm you have the correct set of
|
||
# supported CodeQL languages.
|
||
#
|
||
name: "CodeQL"
|
||
|
||
on:
|
||
push:
|
||
branches: [ "develop", master, release-* ]
|
||
pull_request:
|
||
# The branches below must be a subset of the branches above
|
||
branches: [ "develop" ]
|
||
schedule:
|
||
- cron: '27 19 * * 4'
|
||
|
||
jobs:
|
||
analyze:
|
||
name: Analyze
|
||
runs-on: ubuntu-latest
|
||
permissions:
|
||
actions: read
|
||
contents: read
|
||
security-events: write
|
||
|
||
strategy:
|
||
fail-fast: false
|
||
matrix:
|
||
language: [ 'javascript', 'python' ]
|
||
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
||
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
|
||
|
||
steps:
|
||
- name: Checkout repository
|
||
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||
|
||
# Initializes the CodeQL tools for scanning.
|
||
- name: Initialize CodeQL
|
||
uses: github/codeql-action/init@e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81 # v4.37.3
|
||
with:
|
||
languages: ${{ matrix.language }}
|
||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||
# By default, queries listed here will override any specified in a config file.
|
||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||
|
||
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
|
||
# queries: security-extended,security-and-quality
|
||
|
||
|
||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||
# If this step fails, then you should remove it and run the build manually (see below)
|
||
- name: Autobuild
|
||
uses: github/codeql-action/autobuild@e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81 # v4.37.3
|
||
|
||
# ℹ️ Command-line programs to run using the OS shell.
|
||
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
|
||
|
||
# If the Autobuild fails above, remove it and uncomment the following three lines.
|
||
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
|
||
|
||
# - run: |
|
||
# echo "Run, Build Application using script"
|
||
# ./location_of_script_within_repo/buildscript.sh
|
||
|
||
- name: Perform CodeQL Analysis
|
||
uses: github/codeql-action/analyze@e4fba868fa4b1b91e1fdab776edc8cfbe6e9fb81 # v4.37.3
|