* [Patch 1/2] .github.workflows: Split MdeModulePkg and CryptoPkg analysis
2023-04-04 4:24 [Patch 0/2] Balance CI Execution Times Michael D Kinney
@ 2023-04-04 4:24 ` Michael D Kinney
2023-04-04 4:24 ` [Patch 2/2] .azurepilelines/templates: Split CryptoPkg builds Michael D Kinney
2023-04-04 13:55 ` [edk2-devel] [Patch 0/2] Balance CI Execution Times Michael Kubacki
2 siblings, 0 replies; 5+ messages in thread
From: Michael D Kinney @ 2023-04-04 4:24 UTC (permalink / raw)
To: devel; +Cc: Sean Brogan, Michael Kubacki
MdeModulePkg and CryptoPkg have double the CodeQL analysis
time of all other packages. Split these packages up to perform
separate analysis of IA32 and X64.
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Michael Kubacki <mikuback@linux.microsoft.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
---
.github/workflows/codeql-analysis.yml | 64 ++++++++++++++++++---------
1 file changed, 42 insertions(+), 22 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 33cc0bd6b46d..cc7f06f7b5b7 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -39,25 +39,45 @@ jobs:
strategy:
fail-fast: false
matrix:
- package: [
- "ArmPkg",
- "CryptoPkg",
- "DynamicTablesPkg",
- "FatPkg",
- "FmpDevicePkg",
- "IntelFsp2Pkg",
- "IntelFsp2WrapperPkg",
- "MdeModulePkg",
- "MdePkg",
- "PcAtChipsetPkg",
- "PrmPkg",
- "SecurityPkg",
- "ShellPkg",
- "SourceLevelDebugPkg",
- "StandaloneMmPkg",
- "UefiCpuPkg",
- "UnitTestFrameworkPkg"]
-
+ include:
+ - Package: "ArmPkg"
+ ArchList: "IA32,X64"
+ - Package: "CryptoPkg"
+ ArchList: "IA32"
+ - Package: "CryptoPkg"
+ ArchList: "X64"
+ - Package: "DynamicTablesPkg"
+ ArchList: "IA32,X64"
+ - Package: "FatPkg"
+ ArchList: "IA32,X64"
+ - Package: "FmpDevicePkg"
+ ArchList: "IA32,X64"
+ - Package: "IntelFsp2Pkg"
+ ArchList: "IA32,X64"
+ - Package: "IntelFsp2WrapperPkg"
+ ArchList: "IA32,X64"
+ - Package: "MdeModulePkg"
+ ArchList: "IA32"
+ - Package: "MdeModulePkg"
+ ArchList: "X64"
+ - Package: "MdePkg"
+ ArchList: "IA32,X64"
+ - Package: "PcAtChipsetPkg"
+ ArchList: "IA32,X64"
+ - Package: "PrmPkg"
+ ArchList: "IA32,X64"
+ - Package: "SecurityPkg"
+ ArchList: "IA32,X64"
+ - Package: "ShellPkg"
+ ArchList: "IA32,X64"
+ - Package: "SourceLevelDebugPkg"
+ ArchList: "IA32,X64"
+ - Package: "StandaloneMmPkg"
+ ArchList: "IA32,X64"
+ - Package: "UefiCpuPkg"
+ ArchList: "IA32,X64"
+ - Package: "UnitTestFrameworkPkg"
+ ArchList: "IA32,X64"
steps:
- name: Checkout repository
uses: actions/checkout@v3
@@ -83,16 +103,16 @@ jobs:
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
+ run: stuart_setup -c .pytool/CISettings.py -t DEBUG -a ${{ matrix.ArchList }} TOOL_CHAIN_TAG=VS2019
- name: Update
- run: stuart_update -c .pytool/CISettings.py -t DEBUG -a IA32,X64 TOOL_CHAIN_TAG=VS2019
+ run: stuart_update -c .pytool/CISettings.py -t DEBUG -a ${{ matrix.ArchList }} 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
+ run: stuart_ci_build -c .pytool/CISettings.py -p ${{ matrix.Package }} -t DEBUG -a ${{ matrix.ArchList }} TOOL_CHAIN_TAG=VS2019
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
--
2.39.1.windows.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Patch 2/2] .azurepilelines/templates: Split CryptoPkg builds
2023-04-04 4:24 [Patch 0/2] Balance CI Execution Times Michael D Kinney
2023-04-04 4:24 ` [Patch 1/2] .github.workflows: Split MdeModulePkg and CryptoPkg analysis Michael D Kinney
@ 2023-04-04 4:24 ` Michael D Kinney
2023-04-04 13:55 ` [edk2-devel] [Patch 0/2] Balance CI Execution Times Michael Kubacki
2 siblings, 0 replies; 5+ messages in thread
From: Michael D Kinney @ 2023-04-04 4:24 UTC (permalink / raw)
To: devel; +Cc: Sean Brogan, Michael Kubacki, Liming Gao
CryptoPkg has double the build time of all other packages.
Split CryptoPkg up matching the style applied to MdeModulePkg.
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Michael Kubacki <mikuback@linux.microsoft.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
---
.azurepipelines/templates/pr-gate-build-job.yml | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/.azurepipelines/templates/pr-gate-build-job.yml b/.azurepipelines/templates/pr-gate-build-job.yml
index 3999bb166813..689e2f0987ed 100644
--- a/.azurepipelines/templates/pr-gate-build-job.yml
+++ b/.azurepipelines/templates/pr-gate-build-job.yml
@@ -49,9 +49,12 @@ jobs:
TARGET_FMP_FAT_TEST:
Build.Pkgs: 'FmpDevicePkg,FatPkg,UnitTestFrameworkPkg,DynamicTablesPkg'
Build.Targets: 'DEBUG,RELEASE,NO-TARGET,NOOPT'
- TARGET_CRYPTO:
+ TARGET_CRYPTO_DEBUG:
Build.Pkgs: 'CryptoPkg'
- Build.Targets: 'DEBUG,RELEASE,NO-TARGET,NOOPT'
+ Build.Targets: 'DEBUG,NOOPT'
+ TARGET_CRYPTO_RELEASE:
+ Build.Pkgs: 'CryptoPkg'
+ Build.Targets: 'RELEASE,NO-TARGET'
TARGET_FSP:
Build.Pkgs: 'IntelFsp2Pkg,IntelFsp2WrapperPkg'
Build.Targets: 'DEBUG,RELEASE,NO-TARGET,NOOPT'
--
2.39.1.windows.1
^ permalink raw reply related [flat|nested] 5+ messages in thread