diff --git a/.azurepipelines/MuDevOpsWrapper.yml b/.azurepipelines/MuDevOpsWrapper.yml index 25cf77b7c9..61b58b3a52 100644 --- a/.azurepipelines/MuDevOpsWrapper.yml +++ b/.azurepipelines/MuDevOpsWrapper.yml @@ -19,7 +19,7 @@ resources: type: github endpoint: microsoft name: microsoft/mu_devops - ref: refs/tags/v13.0.0 + ref: refs/tags/v14.0.1 parameters: - name: do_ci_build @@ -82,10 +82,9 @@ parameters: jobs: - template: Jobs/PrGate.yml@mu_devops parameters: - linux_container_image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:d412ccd + linux_container_image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:b089181 ${{ if eq(parameters.rust_build, true) }}: linux_container_options: --security-opt seccomp=unconfined - extra_build_args: --rust CODE_COVERAGE=TRUE CC_FLATTEN=TRUE CC_FULL=TRUE do_ci_build: ${{ parameters.do_ci_build }} do_ci_setup: ${{ parameters.do_ci_setup }} do_pr_eval: ${{ parameters.do_pr_eval }} @@ -106,7 +105,7 @@ jobs: container: - image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:d412ccd + image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:b089181 options: --user root --name mu_devops_build_container --security-opt seccomp=unconfined steps: diff --git a/.github/workflows/codeql-platform.yml b/.github/workflows/codeql-platform.yml index a50001cdac..463f6ad79b 100644 --- a/.github/workflows/codeql-platform.yml +++ b/.github/workflows/codeql-platform.yml @@ -211,7 +211,7 @@ jobs: - name: Download cargo-make if: steps.cargo_make_cache.outputs.cache-hit != 'true' - uses: robinraju/release-downloader@v1.11 + uses: robinraju/release-downloader@v1.12 with: repository: 'sagiegurari/cargo-make' tag: '${{ steps.get_cargo_tool_details.outputs.cargo_make_version }}' diff --git a/.github/workflows/issue-assignment.yml b/.github/workflows/issue-assignment.yml index 523fe4422f..dcc928d20c 100644 --- a/.github/workflows/issue-assignment.yml +++ b/.github/workflows/issue-assignment.yml @@ -23,4 +23,4 @@ jobs: contents: read issues: write - uses: microsoft/mu_devops/.github/workflows/IssueAssignment.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/IssueAssignment.yml@v14.0.1 diff --git a/.github/workflows/label-issues.yml b/.github/workflows/label-issues.yml index 5a3a542195..05cb6b46cd 100644 --- a/.github/workflows/label-issues.yml +++ b/.github/workflows/label-issues.yml @@ -36,4 +36,4 @@ jobs: contents: read pull-requests: write - uses: microsoft/mu_devops/.github/workflows/Labeler.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/Labeler.yml@v14.0.1 diff --git a/.github/workflows/label-issues/regex-pull-requests.yml b/.github/workflows/label-issues/regex-pull-requests.yml index 8cb0b12338..6540cf5915 100644 --- a/.github/workflows/label-issues/regex-pull-requests.yml +++ b/.github/workflows/label-issues/regex-pull-requests.yml @@ -10,24 +10,45 @@ # SPDX-License-Identifier: BSD-2-Clause-Patent # # For more information, see: -# https://github.com/github/issue-labeler +# https://github.com/srvaroa/labeler # Maintenance: Keep labels organized in ascending alphabetical order - easier to scan, identify duplicates, etc. +version: 1 +issues: False -type:backport: - - '\s*-\s*\[\s*[x|X]\s*\] Backport to release branch\?' +labels: + - label: type:backport + type: "pull_request" + body: '\s*\[\s*(x|X){1}\s*\]\s*Backport to release branch\?' -impact:breaking-change: - - '\s*-\s*\[\s*[x|X]\s*\] Breaking change\?' + - label: type:backport + type: "pull_request" + authors: ["mu-automation[bot]"] + branch : "repo-sync/mu_devops/default" + base-branch: "dev/20[0-9]{4}" -type:documentation: - - '\s*-\s*\[\s*[x|X]\s*\] Includes documentation\?' + - label: type:backport + type: "pull_request" + authors: ["dependabot[bot]"] + branch : "dependabot/*" + base-branch: "dev/20[0-9]{4}" -impact:non-functional: - - '\s*-\s*\[\s*(?![x|X])\s*\] Impacts functionality\?' + - label: impact:breaking-change + type: "pull_request" + body: '\s*\[\s*(x|X){1}\s*\]\s*Breaking\s*change\?' -impact:security: - - '\s*-\s*\[\s*[x|X]\s*\] Impacts security\?' + - label: type:documentation + type: "pull_request" + body: '\s*\[\s*(x|X){1}\s*\]\s*Includes\s*documentation\?' -impact:testing: - - '\s*-\s*\[\s*[x|X]\s*\] Includes tests\?' + - label: impact:non-functional + type: "pull_request" + body: '\s*\[\s*\]\s*Impacts\s*functionality\?' + + - label: impact:security + type: "pull_request" + body: '\s*\[\s*(x|X){1}\s*\]\s*Impacts\s*security\?' + + - label: impact:testing + type: "pull_request" + body: '\[\s*(x|X){1}\s*\]\s*Includes\s*tests\?' diff --git a/.github/workflows/label-sync.yml b/.github/workflows/label-sync.yml index aa1f931fa3..b7e906c7a5 100644 --- a/.github/workflows/label-sync.yml +++ b/.github/workflows/label-sync.yml @@ -28,4 +28,4 @@ jobs: permissions: issues: write - uses: microsoft/mu_devops/.github/workflows/LabelSyncer.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/LabelSyncer.yml@v14.0.1 diff --git a/.github/workflows/release-draft.yml b/.github/workflows/release-draft.yml index 5f2f07b21e..dce0b5045c 100644 --- a/.github/workflows/release-draft.yml +++ b/.github/workflows/release-draft.yml @@ -33,5 +33,5 @@ jobs: contents: write pull-requests: write - uses: microsoft/mu_devops/.github/workflows/ReleaseDrafter.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/ReleaseDrafter.yml@v14.0.1 secrets: inherit diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 3423cc1347..e986ea6b75 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -29,4 +29,4 @@ jobs: issues: write pull-requests: write - uses: microsoft/mu_devops/.github/workflows/Stale.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/Stale.yml@v14.0.1 diff --git a/.github/workflows/submodule-release-update.yml b/.github/workflows/submodule-release-update.yml index 18c0c33f7b..25b10fa06a 100644 --- a/.github/workflows/submodule-release-update.yml +++ b/.github/workflows/submodule-release-update.yml @@ -1,6 +1,13 @@ # This workflow automatically creates a pull request for any submodule in the repo # that has a new GitHub release available. The release must follow semantic versioning. # +# The GitHub App ID and private key should be stored in the repository as a variable named `MU_ACCESS_APP_ID` and a +# secret named `MU_ACCESS_APP_PRIVATE_KEY` respectively. +# +# The GitHub App must grant the following permissions: +# - Read and write access to repository contents +# - Read and write access to pull requests +# # NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there # instead of the file in this repo. # @@ -28,10 +35,17 @@ jobs: pull-requests: write steps: + - name: Generate Token + id: app-token + uses: actions/create-github-app-token@v2 + with: + app-id: $ + private-key: $ + - name: Update Submodules to Latest Release - uses: microsoft/mu_devops/.github/actions/submodule-release-updater@v13.0.0 + uses: microsoft/mu_devops/.github/actions/submodule-release-updater@v14.0.1 with: - GH_PAT: ${{ secrets.SUBMODULE_UPDATER_TOKEN }} + GH_PAT: ${{ steps.app-token.outputs.token }} GH_USER: "ProjectMuBot" GIT_EMAIL: "mubot@microsoft.com" GIT_NAME: "Project Mu Bot" diff --git a/.github/workflows/triage-issues.yml b/.github/workflows/triage-issues.yml index e4af65e9da..766864d063 100644 --- a/.github/workflows/triage-issues.yml +++ b/.github/workflows/triage-issues.yml @@ -23,4 +23,4 @@ jobs: permissions: issues: write - uses: microsoft/mu_devops/.github/workflows/IssueTriager.yml@v13.0.0 + uses: microsoft/mu_devops/.github/workflows/IssueTriager.yml@v14.0.1 diff --git a/Platforms/QemuQ35Pkg/PlatformBuild.py b/Platforms/QemuQ35Pkg/PlatformBuild.py index 2f573be6cd..98c66fa4bf 100644 --- a/Platforms/QemuQ35Pkg/PlatformBuild.py +++ b/Platforms/QemuQ35Pkg/PlatformBuild.py @@ -23,13 +23,14 @@ SetupSettingsManager) from edk2toolext.invocables.edk2_update import UpdateSettingsManager from edk2toolext.invocables.edk2_parse import ParseSettingsManager -from edk2toollib.utility_functions import GetHostInfo, RunCmd +from edk2toollib.utility_functions import RunCmd WORKSPACE_ROOT = str(Path(__file__).parent.parent.parent) # Declare test whose failure will not return a non-zero exit code FAILURE_EXEMPT_TESTS = { # example "PiValueTestApp.efi": datetime.datetime(3141, 5, 9, 2, 6, 53, 589793), + "LineParserTestApp.efi": datetime.datetime(2025, 5, 5, 0, 0, 0, 0) } # Allow failure exempt tests to be ignored for 90 days diff --git a/Platforms/QemuSbsaPkg/PlatformBuild.py b/Platforms/QemuSbsaPkg/PlatformBuild.py index acc65f1516..02e4b95375 100644 --- a/Platforms/QemuSbsaPkg/PlatformBuild.py +++ b/Platforms/QemuSbsaPkg/PlatformBuild.py @@ -27,6 +27,7 @@ # Declare test whose failure will not return a non-zero exit code FAILURE_EXEMPT_TESTS = { # example "PiValueTestApp.efi": datetime.datetime(3141, 5, 9, 2, 6, 53, 589793), + "LineParserTestApp.efi": datetime.datetime(2025, 5, 5, 0, 0, 0, 0) } # Allow failure exempt tests to be ignored for 90 days diff --git a/rust-toolchain.toml b/rust-toolchain.toml index bf482ec8f6..c4a10e0554 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = "1.80.0" +channel = "1.84.0" [tools] cargo-make = "0.37.24"