codeql-analysis.yml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. # @file
  2. # GitHub Workflow for CodeQL Analysis
  3. #
  4. # Copyright (c) Microsoft Corporation.
  5. #
  6. # SPDX-License-Identifier: BSD-2-Clause-Patent
  7. ##
  8. name: "CodeQL"
  9. on:
  10. push:
  11. branches:
  12. - master
  13. pull_request:
  14. branches:
  15. - master
  16. paths-ignore:
  17. - '**/*.bat'
  18. - '**/*.md'
  19. - '**/*.py'
  20. - '**/*.rst'
  21. - '**/*.sh'
  22. - '**/*.txt'
  23. schedule:
  24. # https://crontab.guru/#20_23_*_*_4
  25. - cron: '20 23 * * 4'
  26. jobs:
  27. analyze:
  28. name: Analyze
  29. runs-on: windows-2019
  30. permissions:
  31. actions: read
  32. contents: read
  33. security-events: write
  34. strategy:
  35. fail-fast: false
  36. matrix:
  37. package: [
  38. "ArmPkg",
  39. "CryptoPkg",
  40. "DynamicTablesPkg",
  41. "FatPkg",
  42. "FmpDevicePkg",
  43. "IntelFsp2Pkg",
  44. "IntelFsp2WrapperPkg",
  45. "MdeModulePkg",
  46. "MdePkg",
  47. "PcAtChipsetPkg",
  48. "PrmPkg",
  49. "SecurityPkg",
  50. "ShellPkg",
  51. "SourceLevelDebugPkg",
  52. "StandaloneMmPkg",
  53. "UefiCpuPkg",
  54. "UnitTestFrameworkPkg"]
  55. steps:
  56. - name: Checkout repository
  57. uses: actions/checkout@v4
  58. - name: Install Python
  59. uses: actions/setup-python@v4
  60. with:
  61. python-version: '3.10.6'
  62. # Initializes the CodeQL tools for scanning.
  63. - name: Initialize CodeQL
  64. uses: github/codeql-action/init@v2
  65. with:
  66. languages: 'cpp'
  67. # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
  68. # Learn more about CodeQL language support at https://codeql.github.com/docs/codeql-overview/supported-languages-and-frameworks/
  69. config-file: ./.github/codeql/codeql-config.yml
  70. # Note: Add new queries to codeql-config.yml file as they are enabled.
  71. - name: Install/Upgrade pip Modules
  72. run: pip install -r pip-requirements.txt --upgrade
  73. - name: Setup
  74. run: stuart_setup -c .pytool/CISettings.py -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019
  75. - name: Update
  76. run: stuart_update -c .pytool/CISettings.py -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019
  77. - name: Build Tools From Source
  78. run: python BaseTools/Edk2ToolsBuild.py -t VS2019
  79. - name: CI Build
  80. run: stuart_ci_build -c .pytool/CISettings.py -p ${{ matrix.package }} -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019
  81. - name: Perform CodeQL Analysis
  82. uses: github/codeql-action/analyze@v2