Skip to content

Commit 23a54b2

Browse files
committed
Files.yml: Add remaining Mu repo pipelines to file sync
Some repos were left out of the original file sync change because they had custom build steps. Those pipeline files need to be in Mu DevOps to consolidate various versioning and other details in the file and it is also more straightforward to follow a process where all pipeline files are simply maintained in the same repo/place. This change adds each repo's file as a unique file in the `.sync` directory. While some level of commonality could be achieved with templating, that would likely introduce unnecessary complexity. These files can have the flexibility to customize most changes directly in the file without having to worry about adjusting template input that affects other custom step YAML files. Breaking out the files like this also allows separate file history tracking which is beneficial in 1:1 file to repo mapping. Here the files map from their directory to their repo and the files can pick up any common Mu DevOps customization needed before they are synced. Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
1 parent 8c34d43 commit 23a54b2

15 files changed

Lines changed: 437 additions & 20 deletions

File tree

.sync/Files.yml

Lines changed: 55 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -27,24 +27,69 @@
2727
# set up to use the YAML file. The file is simply available for pipelines to be connected
2828
# if needed.
2929
group:
30-
# Azure Pipelines - All
30+
# Azure Pipelines - Custom - microsoft/mu_feature_config
3131
- files:
32-
- source: .sync/azure_pipelines/Ubuntu-CLANGPDB.yml
32+
- source: .sync/azure_pipelines/custom/mu_feature_config/Ubuntu-GCC5.yml
33+
dest: .azurepipelines/Ubuntu-GCC5.yml
34+
- source: .sync/azure_pipelines/custom/mu_feature_config/Windows-VS.yml
35+
dest: .azurepipelines/Windows-VS.yml
36+
repos: |
37+
microsoft/mu_feature_config
38+
39+
# Azure Pipelines - Custom - microsoft/mu_feature_ipmi
40+
- files:
41+
- source: .sync/azure_pipelines/custom/mu_feature_ipmi/Ubuntu-GCC5.yml
42+
dest: .azurepipelines/Ubuntu-GCC5.yml
43+
- source: .sync/azure_pipelines/custom/mu_feature_ipmi/Windows-VS.yml
44+
dest: .azurepipelines/Windows-VS.yml
45+
repos: |
46+
microsoft/mu_feature_ipmi
47+
48+
# Azure Pipelines - Custom - microsoft/mu_feature_mm_supv
49+
- files:
50+
- source: .sync/azure_pipelines/custom/mu_feature_mm_supv/Ubuntu-GCC5.yml
51+
dest: .azurepipelines/Ubuntu-GCC5.yml
52+
- source: .sync/azure_pipelines/custom/mu_feature_mm_supv/Windows-VS.yml
53+
dest: .azurepipelines/Windows-VS.yml
54+
repos: |
55+
microsoft/mu_feature_mm_supv
56+
57+
# Azure Pipelines - Custom - microsoft/mu_oem_sample
58+
- files:
59+
- source: .sync/azure_pipelines/custom/mu_oem_sample/Ubuntu-GCC5.yml
60+
dest: .azurepipelines/Ubuntu-GCC5.yml
61+
- source: .sync/azure_pipelines/custom/mu_oem_sample/Windows-VS.yml
62+
dest: .azurepipelines/Windows-VS.yml
63+
repos: |
64+
microsoft/mu_oem_sample
65+
66+
# Azure Pipelines - Custom - microsoft/mu_tiano_platforms
67+
- files:
68+
- source: .sync/azure_pipelines/custom/mu_tiano_platforms/Ubuntu-GCC5.yml
69+
dest: .azurepipelines/Ubuntu-GCC5.yml
70+
- source: .sync/azure_pipelines/custom/mu_tiano_platforms/Windows-VS.yml
71+
dest: .azurepipelines/Windows-VS.yml
72+
repos: |
73+
microsoft/mu_tiano_platforms
74+
75+
# Azure Pipelines - Matrix Dependent - All
76+
- files:
77+
- source: .sync/azure_pipelines/matrix_dependent/Ubuntu-CLANGPDB.yml
3378
dest: .azurepipelines/Ubuntu-CLANGPDB.yml
34-
- source: .sync/azure_pipelines/Ubuntu-GCC5.yml
79+
- source: .sync/azure_pipelines/matrix_dependent/Ubuntu-GCC5.yml
3580
dest: .azurepipelines/Ubuntu-GCC5.yml
36-
- source: .sync/azure_pipelines/Windows-CLANGPDB.yml
81+
- source: .sync/azure_pipelines/matrix_dependent/Windows-CLANGPDB.yml
3782
dest: .azurepipelines/Windows-CLANGPDB.yml
38-
- source: .sync/azure_pipelines/Windows-VS.yml
83+
- source: .sync/azure_pipelines/matrix_dependent/Windows-VS.yml
3984
dest: .azurepipelines/Windows-VS.yml
4085
repos: |
4186
microsoft/mu_basecore
4287
43-
# Azure Pipelines - GCC & VS Only
88+
# Azure Pipelines - Matrix Dependent - GCC & VS Only
4489
- files:
45-
- source: .sync/azure_pipelines/Ubuntu-GCC5.yml
90+
- source: .sync/azure_pipelines/matrix_dependent/Ubuntu-GCC5.yml
4691
dest: .azurepipelines/Ubuntu-GCC5.yml
47-
- source: .sync/azure_pipelines/Windows-VS.yml
92+
- source: .sync/azure_pipelines/matrix_dependent/Windows-VS.yml
4893
dest: .azurepipelines/Windows-VS.yml
4994
repos: |
5095
microsoft/mu_common_intel_min_platform
@@ -54,24 +99,14 @@ group:
5499
microsoft/mu_tiano_plus
55100
56101
# Azure Pipelines - Ignored Repos
57-
# - mu
102+
# - microsoft/mu
58103
# - Does not build firmware code
59104
# - microsoft/mu_crypto_release
60105
# - Has a custom release process
61-
# - mu_devops
106+
# - microsoft/mu_devops
62107
# - Does not build firmware code
63-
# - mu_feature_config
64-
# - Custom pipeline steps
65-
# - microsoft/mu_feature_ipmi
66-
# - Custom pipeline steps
67-
# - microsoft/mu_feature_mm_supv
68-
# - Custom pipeline steps
69108
# - microsoft/mu_feature_uefi_variable
70109
# - Not connected to pipelines yet
71-
# - microsoft/mu_oem_sample
72-
# - Custom pipeline steps
73-
# - microsoft/mu_tiano_platforms
74-
# - Custom pipeline steps
75110

76111
# CI Configuration - Markdown Lint - Common Settings
77112
- files:
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
## @file
2+
# Azure Pipeline build file for a build using ubuntu and GCC5.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-arm-64-x86-64
24+
- group: tool-chain-ubuntu-gcc
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
extra_steps:
33+
- script: sudo apt-get install mingw-w64
34+
displayName: Install Windows Resource Compiler for Linux
35+
packages: SetupDataPkg
36+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
37+
tool_chain_tag: $(tool_chain_tag)
38+
vm_image: $(vm_image)
39+
40+
- template: Jobs/Python/RunDevTests.yml@mu_devops
41+
parameters:
42+
code_cov_enabled: true
43+
custom_job_name: ubuntu
44+
root_package_folder: SetupDataPkg/Tools
45+
vm_image: $(vm_image)
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
## @file
2+
# Azure Pipeline build file for a build using Windows and Visual Studio.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-x86-64
24+
- group: tool-chain-windows-visual-studio-latest
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
packages: SetupDataPkg
33+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
34+
tool_chain_tag: $(tool_chain_tag)
35+
vm_image: $(vm_image)
36+
37+
- template: Jobs/Python/RunDevTests.yml@mu_devops
38+
parameters:
39+
code_cov_enabled: true
40+
custom_job_name: windows
41+
root_package_folder: SetupDataPkg/Tools
42+
vm_image: $(vm_image)
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
## @file
2+
# Azure Pipeline build file for a build using ubuntu and GCC5.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-arm64-x86-64
24+
- group: tool-chain-ubuntu-gcc
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
packages: IpmiFeaturePkg
33+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
34+
tool_chain_tag: $(tool_chain_tag)
35+
vm_image: $(vm_image)
36+
container_build: true
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
## @file
2+
# Azure Pipeline build file for a build using Windows and Visual Studio.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-arm64-x86-64
24+
- group: tool-chain-windows-visual-studio-latest
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
packages: IpmiFeaturePkg
33+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
34+
tool_chain_tag: $(tool_chain_tag)
35+
vm_image: $(vm_image)
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
## @file
2+
# Azure Pipeline build file for a build using ubuntu and GCC5.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-x86-64
24+
- group: tool-chain-ubuntu-gcc
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
do_pr_eval: false
33+
packages: MmSupervisorPkg
34+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
35+
tool_chain_tag: $(tool_chain_tag)
36+
vm_image: $(vm_image)
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
## @file
2+
# Azure Pipeline build file for a build using Windows and Visual Studio.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-x86-64
24+
- group: tool-chain-windows-visual-studio-latest
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: false
32+
do_pr_eval: false
33+
packages: MmSupervisorPkg
34+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
35+
tool_chain_tag: $(tool_chain_tag)
36+
vm_image: $(vm_image)
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
## @file
2+
# Azure Pipeline build file for a build using ubuntu and GCC5.
3+
#
4+
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
5+
# instead of the file in this repo.
6+
#
7+
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
8+
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
9+
#
10+
# Copyright (c) Microsoft Corporation.
11+
# SPDX-License-Identifier: BSD-2-Clause-Patent
12+
##
13+
14+
resources:
15+
repositories:
16+
- repository: mu_devops
17+
type: github
18+
endpoint: microsoft
19+
name: microsoft/mu_devops
20+
ref: main
21+
22+
variables:
23+
- group: architectures-arm-64-x86-64
24+
- group: tool-chain-ubuntu-gcc
25+
26+
jobs:
27+
- template: Jobs/PrGate.yml@mu_devops
28+
parameters:
29+
arch_list: $(arch_list)
30+
do_ci_build: true
31+
do_ci_setup: true
32+
do_non_ci_setup: true
33+
extra_steps:
34+
- script: sudo apt-get install mingw-w64
35+
displayName: Install Windows Resource Compiler for Linux
36+
packages: OemPkg
37+
target_list: DEBUG,RELEASE,NO-TARGET,NOOPT
38+
tool_chain_tag: $(tool_chain_tag)
39+
vm_image: $(vm_image)

0 commit comments

Comments
 (0)