From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by mx.groups.io with SMTP id smtpd.web10.26219.1669845698625641061 for ; Wed, 30 Nov 2022 14:01:38 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=LVFrMpEr; spf=pass (domain: redhat.com, ip: 170.10.129.124, mailfrom: osteffen@redhat.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1669845697; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=R0hAdTeo/d/ROPcqEhCs9PKOXKHzzEZGshZyyUFcQFo=; b=LVFrMpEr1essoAB2X7JJIKNNRjea/dwnQBLOkFOqfvqeFOqBqW6glcMk1Krk1QZxpA4l/4 U8DGgx+VYSu3bBQZurRv9l5XYx22XVIBoSBt/3We4sYJVflJFz9+4BVzEEs1+7LrSvf5Kj vs36+LXmzQDQM6VU/TwVnDzr9jYB4jo= Received: from mail-lj1-f197.google.com (mail-lj1-f197.google.com [209.85.208.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-665-vn9MF4sbOFOS7PFAgNQGnw-1; Wed, 30 Nov 2022 17:01:36 -0500 X-MC-Unique: vn9MF4sbOFOS7PFAgNQGnw-1 Received: by mail-lj1-f197.google.com with SMTP id e15-20020a05651c038f00b0027740a4e92fso4335346ljp.16 for ; Wed, 30 Nov 2022 14:01:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=R0hAdTeo/d/ROPcqEhCs9PKOXKHzzEZGshZyyUFcQFo=; b=q21C+dABAboGkTB5eetVhXMQlj1QUmbwqRBvzw/94375ZqLCNaiBH5hNeFG0458iJ7 c8r/WQXzgV+cymNZatOzc7hHlbizUJaAWhfLWrtl62cSNSA6jSt0Ni4bwvlb3qcpSEBh x+yPPz9GPXRxjNXxrQnh/a3x7x86LgYlmuF8rGvyCOtTGiygZ44Wpx1Qa7JaW7pOPPPu BUo5qQAgOjXxQJaVg5Tf/ZNw8VyQgg8/LIAqr/nAOxWOtQmXiyOmUFJwhO6XSfimO9Rw AiaAliZiqPnt8NKmdlxOfTu09lcHLI0/tk9iVXzViDjUKp3tCnyRoHZ9i0fSAkkuKNK8 NJLw== X-Gm-Message-State: ANoB5pkHCPdUqBD8OYcxsFI9G6TgN7GETjlbqoEqz9ttedy2H6KH2ckr X7esPNShstkBziUJt7gV04DyiDy5GlMyH+5jTkfqeFwmXTjlpr1VwLYIIexSXeL497/KTQVho63 U5jDvHsc7c0oR8q71pRdFPVc+VUJf/w== X-Received: by 2002:ac2:5e70:0:b0:4ad:3f25:60f4 with SMTP id a16-20020ac25e70000000b004ad3f2560f4mr15358631lfr.92.1669845694255; Wed, 30 Nov 2022 14:01:34 -0800 (PST) X-Google-Smtp-Source: AA0mqf4soeyn8zMiMZ32f0P+6MjHXvJ+oYrcPpoaVf43g5MHYJrs+AeVKB2LSLaXHmcp7cp+dm3DFgABnTqXbQ7IpiU= X-Received: by 2002:ac2:5e70:0:b0:4ad:3f25:60f4 with SMTP id a16-20020ac25e70000000b004ad3f2560f4mr15358624lfr.92.1669845694046; Wed, 30 Nov 2022 14:01:34 -0800 (PST) Received: from 567203818698 named unknown by gmailapi.google.com with HTTPREST; Wed, 30 Nov 2022 14:01:33 -0800 From: "Oliver Steffen" X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221130220125.1112760-1-osteffen@redhat.com> References: <20221130220125.1112760-1-osteffen@redhat.com> MIME-Version: 1.0 Date: Wed, 30 Nov 2022 14:01:33 -0800 Message-ID: Subject: [PATCH v9 01/12] CI: make Python version configurable To: devel@edk2.groups.io Cc: Andrew Fish , Ard Biesheuvel , Bob Feng , Daniel Schaefer , Gerd Hoffmann , Jiewen Yao , Jordan Justen , Leif Lindholm , Liming Gao , Michael D Kinney , Michael Kubacki , Ray Ni , Sami Mujawar , Sean Brogan , Sunil V L , Yuwei Chen , Zhiguang Liu , Pawel Polawski , Chris Fernald , Oliver Steffen X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Add a new parameter "usePythonVersion" to the CI job templates. This makes it possible to specify the version of Python to use. The default value is '', in which case Python will not be downloaded at runtime and the one provided by the VM/container image will be used. Additionally, add a template .azurepipelines/templates/defaults.yml, from which the default Pyhton version string can be obtained. Signed-off-by: Oliver Steffen --- .azurepipelines/Windows-VS2019.yml | 4 ++++ .azurepipelines/templates/defaults.yml | 3 +++ .azurepipelines/templates/platform-build-run-steps.yml | 6 +++++- .azurepipelines/templates/pr-gate-build-job.yml | 2 ++ .azurepipelines/templates/pr-gate-steps.yml | 6 ++++-- 5 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 .azurepipelines/templates/defaults.yml diff --git a/.azurepipelines/Windows-VS2019.yml b/.azurepipelines/Windows-VS2019.yml index e4bd4b1d2283..89bccde82575 100644 --- a/.azurepipelines/Windows-VS2019.yml +++ b/.azurepipelines/Windows-VS2019.yml @@ -12,9 +12,13 @@ pr: - master - stable/* +variables: + - template: templates/defaults.yml + jobs: - template: templates/pr-gate-build-job.yml parameters: tool_chain_tag: 'VS2019' vm_image: 'windows-2019' arch_list: "IA32,X64" + usePythonVersion: ${{ variables.default_python_version }} diff --git a/.azurepipelines/templates/defaults.yml b/.azurepipelines/templates/defaults.yml new file mode 100644 index 000000000000..314d03e33af8 --- /dev/null +++ b/.azurepipelines/templates/defaults.yml @@ -0,0 +1,3 @@ + +variables: + default_python_version: ">=3.10.6" diff --git a/.azurepipelines/templates/platform-build-run-steps.yml b/.azurepipelines/templates/platform-build-run-steps.yml index 40a31a509fc5..8803d80cf51c 100644 --- a/.azurepipelines/templates/platform-build-run-steps.yml +++ b/.azurepipelines/templates/platform-build-run-steps.yml @@ -34,6 +34,9 @@ parameters: - name: extra_install_step type: stepList default: [] +- name: usePythonVersion + type: string + default: '' steps: - checkout: self @@ -42,8 +45,9 @@ steps: - task: UsePythonVersion@0 inputs: - versionSpec: ">=3.10.6" + versionSpec: ${{ parameters.usePythonVersion }} architecture: "x64" + condition: ne('${{ parameters.usePythonVersion }}', '') - script: pip install -r pip-requirements.txt --upgrade displayName: 'Install/Upgrade pip modules' diff --git a/.azurepipelines/templates/pr-gate-build-job.yml b/.azurepipelines/templates/pr-gate-build-job.yml index 7f88b41dc8d3..f0ef1142da49 100644 --- a/.azurepipelines/templates/pr-gate-build-job.yml +++ b/.azurepipelines/templates/pr-gate-build-job.yml @@ -12,6 +12,7 @@ parameters: tool_chain_tag: '' vm_image: '' arch_list: '' + usePythonVersion: '' # Build step jobs: @@ -77,3 +78,4 @@ jobs: build_pkgs: $(Build.Pkgs) build_targets: $(Build.Targets) build_archs: ${{ parameters.arch_list }} + usePythonVersion: ${{ parameters.usePythonVersion }} diff --git a/.azurepipelines/templates/pr-gate-steps.yml b/.azurepipelines/templates/pr-gate-steps.yml index cb431e53fcd1..27a44c06011c 100644 --- a/.azurepipelines/templates/pr-gate-steps.yml +++ b/.azurepipelines/templates/pr-gate-steps.yml @@ -12,6 +12,7 @@ parameters: build_pkgs: '' build_targets: '' build_archs: '' + usePythonVersion: '' steps: - checkout: self @@ -20,8 +21,9 @@ steps: - task: UsePythonVersion@0 inputs: - versionSpec: '>=3.10.6' - architecture: 'x64' + versionSpec: ${{ parameters.usePythonVersion }} + architecture: "x64" + condition: ne('${{ parameters.usePythonVersion }}', '') - script: pip install -r pip-requirements.txt --upgrade displayName: 'Install/Upgrade pip modules' -- 2.38.1