public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Oliver Steffen" <osteffen@redhat.com>
To: devel@edk2.groups.io
Cc: Abner Chang <abner.chang@amd.com>,
	Alexei Fedorov <Alexei.Fedorov@arm.com>,
	 Andrew Fish <afish@apple.com>,
	Anthony Perard <anthony.perard@citrix.com>,
	 Ard Biesheuvel <ardb+tianocore@kernel.org>,
	Bob Feng <bob.c.feng@intel.com>,
	 Brijesh Singh <brijesh.singh@amd.com>,
	Chasel Chiu <chasel.chiu@intel.com>,
	 Daniel Schaefer <git@danielschaefer.me>,
	Erdem Aktas <erdemaktas@google.com>,
	 Eric Dong <eric.dong@intel.com>,
	Gerd Hoffmann <kraxel@redhat.com>, Gua Guo <gua.guo@intel.com>,
	 Guo Dong <guo.dong@intel.com>,
	Guomin Jiang <guomin.jiang@intel.com>,
	 Hao A Wu <hao.a.wu@intel.com>, Igor Kulchytskyy <igork@ami.com>,
	James Bottomley <jejb@linux.ibm.com>,
	 James Lu <james.lu@intel.com>,
	Jian J Wang <jian.j.wang@intel.com>,
	 Jiaxin Wu <jiaxin.wu@intel.com>,
	Jiewen Yao <jiewen.yao@intel.com>,
	 Jordan Justen <jordan.l.justen@intel.com>,
	Julien Grall <julien@xen.org>,
	 Leif Lindholm <quic_llindhol@quicinc.com>,
	Liming Gao <gaoliming@byosoft.com.cn>,
	 Maciej Rabeda <maciej.rabeda@linux.intel.com>,
	 Michael D Kinney <michael.d.kinney@intel.com>,
	Michael Kubacki <mikuback@linux.microsoft.com>,
	 Min Xu <min.m.xu@intel.com>,
	Nate DeSimone <nathaniel.l.desimone@intel.com>,
	 Nickle Wang <nicklew@nvidia.com>,
	Peter Grehan <grehan@freebsd.org>,
	 Pierre Gondois <pierre.gondois@arm.com>,
	Rahul Kumar <rahul1.kumar@intel.com>,  Ray Ni <ray.ni@intel.com>,
	Rebecca Cran <rebecca@bsdio.com>,
	 Sami Mujawar <sami.mujawar@arm.com>,
	Sean Brogan <sean.brogan@microsoft.com>,
	 Sean Rhodes <sean@starlabs.systems>,
	Sebastien Boeuf <sebastien.boeuf@intel.com>,
	 Siyuan Fu <siyuan.fu@intel.com>, Star Zeng <star.zeng@intel.com>,
	 Sunil V L <sunilvl@ventanamicro.com>,
	Supreeth Venkatesh <supreeth.venkatesh@arm.com>,
	 Tom Lendacky <thomas.lendacky@amd.com>,
	Wei6 Xu <wei6.xu@intel.com>,  Xiaoyu Lu <xiaoyu1.lu@intel.com>,
	Yuwei Chen <yuwei.chen@intel.com>,
	 Zhichao Gao <zhichao.gao@intel.com>,
	Zhiguang Liu <zhiguang.liu@intel.com>,
	 Pawel Polawski <ppolawsk@redhat.com>,
	Chris Fernald <chris.fernald@outlook.com>,
	 Oliver Steffen <osteffen@redhat.com>
Subject: [PATCH v7 4/6] CI: Use Fedora 35 container (Linux only)
Date: Tue, 29 Nov 2022 14:26:42 -0500	[thread overview]
Message-ID: <CA+bRGFpncRxn-03dSotFtjS3is8wr_G1--KCgbH4LBbn0aaTxQ@mail.gmail.com> (raw)
In-Reply-To: <20221129192625.643896-1-osteffen@redhat.com>

Run all Linux based jobs in a container, using a custom Fedora 35 image
(gcc 11). The image is hosted on ghcr.io and the Dockerfiles are
here: https://github.com/tianocore/containers
The version numbers of gcc, iasl, and nasm are pinned to avoid
unintended upgrades during image rebuild.

Do not run apt-get in CI jobs to install qemu and gcc dependencies.
Assume the container image provides these.

Use Python from the container image, do not download at runtime.

Signed-off-by: Oliver Steffen <osteffen@redhat.com>
---
 .azurepipelines/Ubuntu-GCC5.yml                        | 2 ++
 .azurepipelines/templates/basetools-build-steps.yml    | 9 ---------
 ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml  | 7 +++----
 EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml | 3 +++
 OvmfPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml     | 7 +++----
 5 files changed, 11 insertions(+), 17 deletions(-)

diff --git a/.azurepipelines/Ubuntu-GCC5.yml b/.azurepipelines/Ubuntu-GCC5.yml
index 1acd8d2a46a7..7c7732d66fc0 100644
--- a/.azurepipelines/Ubuntu-GCC5.yml
+++ b/.azurepipelines/Ubuntu-GCC5.yml
@@ -18,5 +18,7 @@ jobs:
   parameters:
     tool_chain_tag: 'GCC5'
     vm_image: 'ubuntu-latest'
+    container: 'ghcr.io/tianocore/containers/fedora-35-test:0b7ecfa'
+    usePythonVersion: ''  # use Python from the container image
     arch_list: "IA32,X64,ARM,AARCH64,RISCV64,LOONGARCH64"

diff --git a/.azurepipelines/templates/basetools-build-steps.yml
b/.azurepipelines/templates/basetools-build-steps.yml
index d8c108c6e212..a72758bc3395 100644
--- a/.azurepipelines/templates/basetools-build-steps.yml
+++ b/.azurepipelines/templates/basetools-build-steps.yml
@@ -10,15 +10,6 @@ parameters:
   tool_chain_tag: ''

 steps:
-- ${{ if contains(parameters.tool_chain_tag, 'GCC') }}:
-  - bash: sudo apt-get update
-    displayName: Update apt
-    condition: and(gt(variables.pkg_count, 0), succeeded())
-
-  - bash: sudo apt-get install gcc g++ make uuid-dev
-    displayName: Install required tools
-    condition: and(gt(variables.pkg_count, 0), succeeded())
-
 - task: CmdLine@1
   displayName: Build Base Tools from source
   inputs:
diff --git a/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
b/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
index b07e3199f143..e29168537048 100644
--- a/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
+++ b/ArmVirtPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
@@ -75,6 +75,8 @@ jobs:
     pool:
       vmImage: $(vm_image)

+    container: 'ghcr.io/tianocore/containers/fedora-35-test:0b7ecfa'
+
     steps:
     - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
       parameters:
@@ -85,7 +87,4 @@ jobs:
         build_file: $(Build.File)
         build_flags: $(Build.Flags)
         run_flags: $(Run.Flags)
-        extra_install_step:
-        - bash: sudo apt-get install qemu
-          displayName: Install qemu
-          condition: and(gt(variables.pkg_count, 0), succeeded())
+        usePythonVersion: '' # use Python from the container image
diff --git a/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
index 416c15e70840..88f5df8a37d9 100644
--- a/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
+++ b/EmulatorPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
@@ -75,6 +75,8 @@ jobs:
     pool:
       vmImage: $(vm_image)

+    container: 'ghcr.io/tianocore/containers/fedora-35-test:0b7ecfa'
+
     steps:
     - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
       parameters:
@@ -85,3 +87,4 @@ jobs:
         build_file: $(Build.File)
         build_flags: $(Build.Flags)
         run_flags: $(Run.Flags)
+        usePythonVersion: '' # use Python from the container image
diff --git a/OvmfPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
b/OvmfPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
index 7160d95f7e04..836e73467ca2 100644
--- a/OvmfPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
+++ b/OvmfPkg/PlatformCI/.azurepipelines/Ubuntu-GCC5.yml
@@ -177,6 +177,8 @@ jobs:
     pool:
       vmImage: $(vm_image)

+    container: 'ghcr.io/tianocore/containers/fedora-35-test:0b7ecfa'
+
     steps:
     - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml
       parameters:
@@ -187,7 +189,4 @@ jobs:
         build_file: $(Build.File)
         build_flags: $(Build.Flags)
         run_flags: $(Run.Flags)
-        extra_install_step:
-        - bash: sudo apt-get install qemu
-          displayName: Install qemu
-          condition: and(gt(variables.pkg_count, 0), succeeded())
+        usePythonVersion: '' # use Python from the container image
-- 
2.38.1


  parent reply	other threads:[~2022-11-29 19:26 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20221129192625.643896-1-osteffen@redhat.com>
2022-11-29 19:26 ` [PATCH v7 1/6] CI: make Python version configurable Oliver Steffen
2022-11-30 14:12   ` Michael Kubacki
2022-11-30 17:52     ` Oliver Steffen
2022-11-30 18:26       ` Michael Kubacki
2022-11-29 19:26 ` [PATCH v7 2/6] CI: add ~/.local/bin to PATH (Linux only) Oliver Steffen
2022-11-29 19:26 ` [PATCH v7 3/6] CI: Allow running in a container Oliver Steffen
2022-11-29 19:26 ` Oliver Steffen [this message]
2022-11-29 19:26 ` [PATCH v7 5/6] BaseTools: Remove ext. gcc dependencies (Linux only) Oliver Steffen
2022-11-29 19:26 ` [PATCH v7 6/6] CI: use latest vm_image " Oliver Steffen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+bRGFpncRxn-03dSotFtjS3is8wr_G1--KCgbH4LBbn0aaTxQ@mail.gmail.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox