microsoft/mu_feature_ffa
Publicmirrored fromhttps://github.com/microsoft/mu_feature_ffaAvailable
.azurepipelines/MuDevOpsWrapper.yml
127lines · modecode
| 1 | ## @file |
| 2 | # Azure Pipeline build file for a build using mu_devops. |
| 3 | # |
| 4 | # To upload coverage results, set `coverage_upload_target` to `ado` or `codecov`. |
| 5 | # |
| 6 | # NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there |
| 7 | # instead of the file in this repo. |
| 8 | # |
| 9 | # - Mu DevOps Repo: https://github.com/microsoft/mu_devops |
| 10 | # - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml |
| 11 | # |
| 12 | # Copyright (c) Microsoft Corporation. |
| 13 | # SPDX-License-Identifier: BSD-2-Clause-Patent |
| 14 | ## |
| 15 | |
| 16 | resources: |
| 17 | repositories: |
| 18 | - repository: mu_devops |
| 19 | type: github |
| 20 | endpoint: microsoft |
| 21 | name: microsoft/mu_devops |
| 22 | ref: refs/tags/v18.0.6 |
| 23 | |
| 24 | parameters: |
| 25 | - name: do_ci_build |
| 26 | displayName: Perform Stuart CI Build |
| 27 | type: boolean |
| 28 | default: true |
| 29 | - name: do_ci_setup |
| 30 | displayName: Perform Stuart CI Setup |
| 31 | type: boolean |
| 32 | default: true |
| 33 | - name: do_non_ci_build |
| 34 | displayName: Perform non-CI Stuart Build |
| 35 | type: boolean |
| 36 | default: false |
| 37 | - name: do_non_ci_setup |
| 38 | displayName: Perform non-CI Stuart Setup |
| 39 | type: boolean |
| 40 | default: false |
| 41 | - name: do_pr_eval |
| 42 | displayName: Perform Stuart PR Evaluation |
| 43 | type: boolean |
| 44 | default: true |
| 45 | - name: container_build |
| 46 | displayName: Flag for whether this repo should do stuart_setup |
| 47 | type: boolean |
| 48 | default: false |
| 49 | - name: os_type |
| 50 | displayName: OS type on the self-hosted agent pools |
| 51 | type: string |
| 52 | values: |
| 53 | - Windows_NT |
| 54 | - Linux |
| 55 | default: Windows_NT |
| 56 | - name: build_matrix |
| 57 | displayName: Build matrix for this repository |
| 58 | type: object |
| 59 | - name: pool_name |
| 60 | displayName: Variable name that hosts pool name to be used for self-hosted agents |
| 61 | type: string |
| 62 | default: pool_name |
| 63 | - name: extra_install_step |
| 64 | displayName: Extra Install Steps |
| 65 | type: stepList |
| 66 | default: |
| 67 | - script: echo No extra steps provided |
| 68 | - name: extra_steps |
| 69 | displayName: Extra Steps to Run Before Build Steps |
| 70 | type: stepList |
| 71 | default: |
| 72 | - script: echo No extra steps provided |
| 73 | - name: extra_jobs |
| 74 | displayName: Extra Jobs to be run after build |
| 75 | type: jobList |
| 76 | default: [] |
| 77 | - name: rust_build |
| 78 | displayName: Whether Rust code is being built |
| 79 | type: boolean |
| 80 | default: false |
| 81 | - name: extra_cargo_steps |
| 82 | displayName: Extra Steps to Run Before Standard Cargo Steps |
| 83 | type: stepList |
| 84 | default: |
| 85 | - script: echo No extra cargo steps provided |
| 86 | |
| 87 | jobs: |
| 88 | - template: Jobs/PrGate.yml@mu_devops |
| 89 | parameters: |
| 90 | linux_container_image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:737aacc |
| 91 | ${{ if eq(parameters.rust_build, true) }}: |
| 92 | linux_container_options: --security-opt seccomp=unconfined |
| 93 | do_ci_build: ${{ parameters.do_ci_build }} |
| 94 | do_ci_setup: ${{ parameters.do_ci_setup }} |
| 95 | do_pr_eval: ${{ parameters.do_pr_eval }} |
| 96 | do_non_ci_setup: ${{ parameters.do_non_ci_setup }} |
| 97 | do_non_ci_build: ${{ parameters.do_non_ci_build }} |
| 98 | build_matrix: ${{ parameters.build_matrix }} |
| 99 | os_type: ${{ parameters.os_type }} |
| 100 | pool_name: ${{ parameters.pool_name }} |
| 101 | extra_install_step: ${{ parameters.extra_install_step }} |
| 102 | extra_steps: ${{ parameters.extra_steps }} |
| 103 | tool_chain_tag: $(tool_chain_tag) |
| 104 | vm_image: $(vm_image) |
| 105 | container_build: ${{ parameters.container_build }} |
| 106 | rust_build: ${{ parameters.rust_build }} |
| 107 | |
| 108 | - ${{ if eq(parameters.rust_build, true) }}: |
| 109 | - job: CargoCmds |
| 110 | displayName: Workspace Cargo Commands |
| 111 | |
| 112 | container: |
| 113 | |
| 114 | image: ghcr.io/microsoft/mu_devops/ubuntu-24-build:737aacc |
| 115 | options: --user root --name mu_devops_build_container --security-opt seccomp=unconfined |
| 116 | |
| 117 | steps: |
| 118 | - checkout: self |
| 119 | fetchDepth: 1 |
| 120 | clean: true |
| 121 | - ${{ parameters.extra_cargo_steps }} |
| 122 | - template: Steps/RustCargoSteps.yml@mu_devops |
| 123 | parameters: |
| 124 | container_build: true |
| 125 | |
| 126 | - ${{ parameters.extra_jobs }} |
| 127 | |
| 128 | |