# @file # GitHub Workflow for CodeQL Analysis # # Copyright (c) Microsoft Corporation. # # SPDX-License-Identifier: BSD-2-Clause-Patent ## name: "CodeQL" on: push: branches: - master pull_request: branches: - master paths-ignore: - '**/*.bat' - '**/*.md' - '**/*.py' - '**/*.rst' - '**/*.sh' - '**/*.txt' schedule: # https://crontab.guru/#20_23_*_*_4 - cron: '20 23 * * 4' jobs: analyze: name: Analyze runs-on: windows-2019 permissions: actions: read contents: read security-events: write strategy: fail-fast: false matrix: package: [ "ArmPkg", "CryptoPkg", "DynamicTablesPkg", "FatPkg", "FmpDevicePkg", "IntelFsp2Pkg", "IntelFsp2WrapperPkg", "MdeModulePkg", "MdePkg", "PcAtChipsetPkg", "PrmPkg", "SecurityPkg", "ShellPkg", "SourceLevelDebugPkg", "StandaloneMmPkg", "UefiCpuPkg", "UnitTestFrameworkPkg"] steps: - name: Checkout repository uses: actions/checkout@v4 - name: Install Python uses: actions/setup-python@v4 with: python-version: '3.10.6' # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: 'cpp' # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ] # Learn more about CodeQL language support at https://codeql.github.com/docs/codeql-overview/supported-languages-and-frameworks/ config-file: ./.github/codeql/codeql-config.yml # Note: Add new queries to codeql-config.yml file as they are enabled. - name: Install/Upgrade pip Modules run: pip install -r pip-requirements.txt --upgrade - name: Setup run: stuart_setup -c .pytool/CISettings.py -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019 - name: Update run: stuart_update -c .pytool/CISettings.py -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019 - name: Build Tools From Source run: python BaseTools/Edk2ToolsBuild.py -t VS2019 - name: CI Build run: stuart_ci_build -c .pytool/CISettings.py -p ${{ matrix.package }} -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019 - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v2