Use macos-12 runner for x64 macOS jobs (#9801)

GitHub made arm64 runners generally available and changed macos-latest label to point to them.
The runner architecture is coupled with GH-hosted runners OS version: macos-13 is the last one to run on x64.

This PR essentially brings back the previous behavior, by explicitly requesting that all our x64 macOS jobs are run on macos-12 (as was before). 
We should eventually migrate to macos-13 for x64 macOS and macos-14/macos-latest for arm64 macOS. However, this leads to issues with `npm install` getting stuck, so it should be probably reattempted after the CI rework.
This commit is contained in:
Michał Wawrzyniec Urbańczyk 2024-04-29 02:09:09 +02:00 committed by GitHub
parent 8e03e3be9c
commit 447f4b5ac6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 19 additions and 12 deletions

View File

@ -107,7 +107,7 @@ jobs:
enso-build-ci-gen-job-ci-check-backend-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-ci-check-backend-graal-vm-ce-macos-x86_64:
name: Engine (GraalVM CE) (macos, x86_64) name: Engine (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -354,7 +354,7 @@ jobs:
enso-build-ci-gen-job-jvm-tests-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-jvm-tests-graal-vm-ce-macos-x86_64:
name: JVM Tests (GraalVM CE) (macos, x86_64) name: JVM Tests (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -640,7 +640,7 @@ jobs:
enso-build-ci-gen-job-standard-library-tests-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-standard-library-tests-graal-vm-ce-macos-x86_64:
name: Standard Library Tests (GraalVM CE) (macos, x86_64) name: Standard Library Tests (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack

View File

@ -61,7 +61,7 @@ jobs:
enso-build-ci-gen-job-build-backend-macos-x86_64: enso-build-ci-gen-job-build-backend-macos-x86_64:
name: Build Backend (macos, x86_64) name: Build Backend (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -214,7 +214,7 @@ jobs:
enso-build-ci-gen-job-new-gui-build-macos-x86_64: enso-build-ci-gen-job-new-gui-build-macos-x86_64:
name: GUI build (macos, x86_64) name: GUI build (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -385,7 +385,7 @@ jobs:
needs: needs:
- enso-build-ci-gen-job-build-backend-macos-x86_64 - enso-build-ci-gen-job-build-backend-macos-x86_64
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack

View File

@ -202,7 +202,7 @@ jobs:
needs: needs:
- enso-build-ci-gen-draft-release-linux-x86_64 - enso-build-ci-gen-draft-release-linux-x86_64
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -492,7 +492,7 @@ jobs:
- enso-build-ci-gen-draft-release-linux-x86_64 - enso-build-ci-gen-draft-release-linux-x86_64
- enso-build-ci-gen-job-upload-backend-macos-x86_64 - enso-build-ci-gen-job-upload-backend-macos-x86_64
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack

View File

@ -75,7 +75,7 @@ jobs:
enso-build-ci-gen-job-ci-check-backend-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-ci-check-backend-graal-vm-ce-macos-x86_64:
name: Engine (GraalVM CE) (macos, x86_64) name: Engine (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -220,7 +220,7 @@ jobs:
enso-build-ci-gen-job-jvm-tests-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-jvm-tests-graal-vm-ce-macos-x86_64:
name: JVM Tests (GraalVM CE) (macos, x86_64) name: JVM Tests (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack
@ -390,7 +390,7 @@ jobs:
enso-build-ci-gen-job-standard-library-tests-graal-vm-ce-macos-x86_64: enso-build-ci-gen-job-standard-library-tests-graal-vm-ce-macos-x86_64:
name: Standard Library Tests (GraalVM CE) (macos, x86_64) name: Standard Library Tests (GraalVM CE) (macos, x86_64)
runs-on: runs-on:
- macos-latest - macos-12
steps: steps:
- if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent') - if: startsWith(runner.name, 'GitHub Actions') || startsWith(runner.name, 'Hosted Agent')
name: Installing wasm-pack name: Installing wasm-pack

View File

@ -66,6 +66,8 @@ impl RunsOn for RunnerLabel {
RunnerLabel::MacOS => Some("MacOS".to_string()), RunnerLabel::MacOS => Some("MacOS".to_string()),
RunnerLabel::Linux => Some("Linux".to_string()), RunnerLabel::Linux => Some("Linux".to_string()),
RunnerLabel::Windows => Some("Windows".to_string()), RunnerLabel::Windows => Some("Windows".to_string()),
RunnerLabel::MacOS12 => Some("MacOS12".to_string()),
RunnerLabel::MacOS13 => Some("MacOS13".to_string()),
RunnerLabel::MacOSLatest => Some("MacOSLatest".to_string()), RunnerLabel::MacOSLatest => Some("MacOSLatest".to_string()),
RunnerLabel::LinuxLatest => Some("LinuxLatest".to_string()), RunnerLabel::LinuxLatest => Some("LinuxLatest".to_string()),
RunnerLabel::WindowsLatest => Some("WindowsLatest".to_string()), RunnerLabel::WindowsLatest => Some("WindowsLatest".to_string()),
@ -93,7 +95,7 @@ impl RunsOn for OS {
impl RunsOn for (OS, Arch) { impl RunsOn for (OS, Arch) {
fn runs_on(&self) -> Vec<RunnerLabel> { fn runs_on(&self) -> Vec<RunnerLabel> {
match self { match self {
(OS::MacOS, Arch::X86_64) => runs_on(OS::MacOS, RunnerType::GitHubHosted), (OS::MacOS, Arch::X86_64) => vec![RunnerLabel::MacOS12],
(os, Arch::X86_64) => runs_on(*os, RunnerType::SelfHosted), (os, Arch::X86_64) => runs_on(*os, RunnerType::SelfHosted),
(OS::MacOS, Arch::AArch64) => { (OS::MacOS, Arch::AArch64) => {
let mut ret = runs_on(OS::MacOS, RunnerType::SelfHosted); let mut ret = runs_on(OS::MacOS, RunnerType::SelfHosted);

View File

@ -1014,6 +1014,11 @@ pub enum RunnerLabel {
Windows, Windows,
#[serde(rename = "engine")] #[serde(rename = "engine")]
Engine, Engine,
#[serde(rename = "macos-12")]
MacOS12,
/// macos-13 is the last x64 version of the GitHub-hosted macOS runner.
#[serde(rename = "macos-13")]
MacOS13,
#[serde(rename = "macos-latest")] #[serde(rename = "macos-latest")]
MacOSLatest, MacOSLatest,
#[serde(rename = "ubuntu-latest")] #[serde(rename = "ubuntu-latest")]