Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🌱 Add GitHub workflow to scan project with CodeQL #4252

Merged
merged 1 commit into from
Oct 31, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 58 additions & 0 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "CodeQL Advanced"

on:
# We are checking both `master` and `book-v4` branches:
# - `master` represents the latest development work.
# - `book-v4` is the latest stable release branch, which contains the latest published code,
# ensuring that any issues in production are identified and addressed promptly.
push:
branches: ["master", "book-v4"]
pull_request:
branches: ["master", "book-v4"]
schedule:
- cron: '30 20 * * 1' # Runs every Monday at 8:30 PM

jobs:
analyze:
name: Analyze Go
runs-on: ubuntu-latest
permissions:
security-events: write
packages: read
actions: read
contents: read

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: '1.22'

- name: Build and install Kubebuilder CLI
run: make install

# Preparing the project-v4 sample for CodeQL analysis:
# - `go mod tidy` ensures dependencies are fully resolved.
# - `make manifests` generates required manifests for a complete project structure.
# - `make build` builds the project code, ensuring all components are ready for CodeQL analysis.
- name: Build project-v4 sample project
run: |
cd testdata/project-v4
go mod tidy
echo 'Running build commands for Go in project-v4'
make manifests
make build

- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: go
build-mode: autobuild

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:go"
Loading