Skip to content

Commit e9b463c

Browse files
authored
Modify CodeQL workflow for schedule and Rust build
Updated the CodeQL workflow to change the cron schedule and modify build mode for Rust.
1 parent 985649b commit e9b463c

1 file changed

Lines changed: 17 additions & 56 deletions

File tree

.github/workflows/codeql.yml

Lines changed: 17 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,3 @@
1-
# For most projects, this workflow file will not need changing; you simply need
2-
# to commit it to your repository.
3-
#
4-
# You may wish to alter this file to override the set of languages analyzed,
5-
# or to provide custom queries or build logic.
6-
#
7-
# ******** NOTE ********
8-
# We have attempted to detect the languages in your repository. Please check
9-
# the `language` matrix defined below to confirm you have the correct set of
10-
# supported CodeQL languages.
11-
#
121
name: "CodeQL Advanced"
132

143
on:
@@ -17,25 +6,15 @@ on:
176
pull_request:
187
branches: [ "main" ]
198
schedule:
20-
- cron: '33 3 * * 0'
9+
- cron: '22 22 * * *'
2110

2211
jobs:
2312
analyze:
2413
name: Analyze (${{ matrix.language }})
25-
# Runner size impacts CodeQL analysis time. To learn more, please see:
26-
# - https://gh.io/recommended-hardware-resources-for-running-codeql
27-
# - https://gh.io/supported-runners-and-hardware-resources
28-
# - https://gh.io/using-larger-runners (GitHub.com only)
29-
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
3014
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
3115
permissions:
32-
# required for all workflows
3316
security-events: write
34-
35-
# required to fetch internal or private CodeQL packs
3617
packages: read
37-
38-
# only required for workflows in private repositories
3918
actions: read
4019
contents: read
4120

@@ -46,56 +25,38 @@ jobs:
4625
- language: python
4726
build-mode: none
4827
- language: rust
49-
build-mode: none
50-
# CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'rust', 'swift'
51-
# Use `c-cpp` to analyze code written in C, C++ or both
52-
# Use 'java-kotlin' to analyze code written in Java, Kotlin or both
53-
# Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
54-
# To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
55-
# see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
56-
# If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
57-
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
28+
build-mode: manual
29+
5830
steps:
5931
- name: Checkout repository
6032
uses: actions/checkout@v4
6133

62-
# Add any setup steps before running the `github/codeql-action/init` action.
63-
# This includes steps like installing compilers or runtimes (`actions/setup-node`
64-
# or others). This is typically only required for manual builds.
65-
# - name: Setup runtime (example)
66-
# uses: actions/setup-example@v1
67-
68-
# Initializes the CodeQL tools for scanning.
6934
- name: Initialize CodeQL
7035
uses: github/codeql-action/init@v4
7136
with:
7237
languages: ${{ matrix.language }}
7338
build-mode: ${{ matrix.build-mode }}
74-
# If you wish to specify custom queries, you can do so here or in a config file.
75-
# By default, queries listed here will override any specified in a config file.
76-
# Prefix the list here with "+" to use these queries and those in the config file.
77-
78-
# For more 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
79-
# queries: security-extended,security-and-quality
8039

81-
# If the analyze step fails for one of the languages you are analyzing with
82-
# "We were unable to automatically build your code", modify the matrix above
83-
# to set the build mode to "manual" for that language. Then modify this step
84-
# to build your code.
85-
# ℹ️ Command-line programs to run using the OS shell.
86-
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
8740
- name: Run manual build steps
8841
if: matrix.build-mode == 'manual'
8942
shell: bash
9043
run: |
91-
echo 'If you are using a "manual" build mode for one or more of the' \
92-
'languages you are analyzing, replace this with the commands to build' \
93-
'your code, for example:'
94-
echo ' make bootstrap'
95-
echo ' make release'
96-
exit 1
44+
if [ "${{ matrix.language }}" = "rust" ]; then
45+
echo "Building Rust core for CodeQL tracing..."
46+
cargo build --verbose
47+
else
48+
echo "No manual build configured for ${{ matrix.language }}"
49+
exit 1
50+
fi
9751
9852
- name: Perform CodeQL Analysis
9953
uses: github/codeql-action/analyze@v4
10054
with:
10155
category: "/language:${{matrix.language}}"
56+
57+
- name: Upload SARIF as Artifact (Debug)
58+
uses: actions/upload-artifact@v4
59+
if: failure()
60+
with:
61+
name: codeql-sarif-debug-${{ matrix.language }}
62+
path: ${{ runner.temp }}/**/*.sarif

0 commit comments

Comments
 (0)