diff options
author | Sean Brogan <sean.brogan@microsoft.com> | 2020-04-19 01:06:33 -0700 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2020-04-28 18:07:59 +0000 |
commit | 951a03536c63e08daea6f39a9d47247f122ad8c4 (patch) | |
tree | 69d2c051a1f6a1ea701579fd4919b972b87b13f7 /EmulatorPkg/PlatformCI/.azurepipelines | |
parent | 0c7f189e60c16ce636bfc140da11533a96a42c44 (diff) | |
download | edk2-951a03536c63e08daea6f39a9d47247f122ad8c4.tar.gz |
EmulatorPkg: Add Platform CI and configuration for Core CI
REF:https://bugzilla.tianocore.org/show_bug.cgi?id=2570
Add new Azure Pipeline definitions to build and run EmulatorPkg with:
* Ubuntu GCC5
* Windows VS2019
Add PyTool based build of EmulatorPkg
Add EmulatorPkg.ci.yaml for Core CI
Add ReadMe.md for details and instructions
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Andrew Fish <afish@apple.com>
Cc: Ray Ni <ray.ni@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Shenglei Zhang <shenglei.zhang@intel.com>
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Acked-by: Ray Ni <ray.ni@intel.com>
Diffstat (limited to 'EmulatorPkg/PlatformCI/.azurepipelines')
-rw-r--r-- | EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml | 95 | ||||
-rw-r--r-- | EmulatorPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml | 85 |
2 files changed, 180 insertions, 0 deletions
diff --git a/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml new file mode 100644 index 0000000000..12ef8226ff --- /dev/null +++ b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml @@ -0,0 +1,95 @@ +## @file
+# Azure Pipeline build file for building a platform.
+#
+# Platform: EmulatorPkg
+# OS: Ubuntu
+# Toolchain: GCC5
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+trigger:
+ - master
+pr:
+ - master
+jobs:
+ - job: Platform_CI
+ variables:
+ package: 'EmulatorPkg'
+ vm_image: 'ubuntu-latest'
+ should_run: false
+ run_flags: "MAKE_STARTUP_NSH=TRUE"
+
+ #Use matrix to speed up the build process
+ strategy:
+ matrix:
+ EmulatorPkg_X64_DEBUG:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_X64_RELEASE:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_X64_NOOPT:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_DEBUG:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32"
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_RELEASE:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32"
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_NOOPT:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32"
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+
+ workspace:
+ clean: all
+
+ pool:
+ vmImage: $(vm_image)
+
+ steps:
+ - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
+ parameters:
+ tool_chain_tag: GCC5
+ build_pkg: $(package)
+ build_target: $(Build.Target)
+ build_arch: $(Build.Arch)
+ build_file: $(Build.File)
+ build_flags: $(Build.Flags)
+ run_flags: $(Run.Flags)
+ # Add steps to install some IA32 only dependencies
+ extra_install_step:
+ - bash: sudo dpkg --add-architecture i386
+ displayName: Add i386 to dpkg
+ condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())
+ - bash: sudo apt-get update
+ displayName: do apt-get update
+ condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())
+ - bash: sudo apt-get install libc6-dev:i386 libx11-dev:i386 libxext-dev:i386 lib32gcc-7-dev
+ displayName: Add additional i386 packages
+ condition: and(gt(variables.pkg_count, 0), eq(variables['Build.Arch'], 'IA32'), succeeded())
diff --git a/EmulatorPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml b/EmulatorPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml new file mode 100644 index 0000000000..a5baf4b606 --- /dev/null +++ b/EmulatorPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml @@ -0,0 +1,85 @@ +## @file
+# Azure Pipeline build file for building a platform.
+#
+# Platform: EMULATORPKG
+# OS: Windows
+# Toolchain: VS2019
+#
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+##
+trigger:
+ - master
+pr:
+ - master
+
+jobs:
+ - job: Platform_CI
+ variables:
+ package: 'EmulatorPkg'
+ vm_image: 'windows-latest'
+ should_run: true
+ run_flags: "MAKE_STARTUP_NSH=TRUE"
+
+ #Use matrix to speed up the build process
+ strategy:
+ matrix:
+ EmulatorPkg_X64_DEBUG:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_X64_RELEASE:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_X64_NOOPT:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "X64"
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_DEBUG:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32 "
+ Build.Flags: ""
+ Build.Target: "DEBUG"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_RELEASE:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32 "
+ Build.Flags: ""
+ Build.Target: "RELEASE"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+ EmulatorPkg_IA32_NOOPT:
+ Build.File: "$(package)/PlatformCI/PlatformBuild.py"
+ Build.Arch: "IA32 "
+ Build.Flags: ""
+ Build.Target: "NOOPT"
+ Run.Flags: $(run_flags)
+ Run: $(should_run)
+
+ workspace:
+ clean: all
+
+ pool:
+ vmImage: $(vm_image)
+
+ steps:
+ - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
+ parameters:
+ tool_chain_tag: VS2019
+ build_pkg: $(package)
+ build_target: $(Build.Target)
+ build_arch: $(Build.Arch)
+ build_file: $(Build.File)
+ build_flags: $(Build.Flags)
+ run_flags: $(Run.Flags)
|