mirror of
https://github.com/stablyai/orca.git
synced 2026-10-31 00:57:45 +00:00
perf(ci): accelerate adhoc release builds and runner scheduling (#31297)
This commit is contained in:
@@ -27,6 +27,10 @@ on:
|
||||
description: Also merge every lane's slot into the desktop orcad template artifact
|
||||
type: boolean
|
||||
default: false
|
||||
fast_runners:
|
||||
description: Use faster runners where the platform and architecture are available
|
||||
type: boolean
|
||||
default: false
|
||||
# Release and dev builds qualify every platform for the template they ship.
|
||||
workflow_call:
|
||||
inputs:
|
||||
@@ -38,6 +42,10 @@ on:
|
||||
description: Upload each lane's release slot and merge them into the orcad-template artifact
|
||||
type: boolean
|
||||
default: false
|
||||
fast_runners:
|
||||
description: Use faster runners where the platform and architecture are available
|
||||
type: boolean
|
||||
default: false
|
||||
# Requalify fresh builds daily; publish missing immutable Windows cache keys.
|
||||
schedule:
|
||||
- cron: '30 11 * * *'
|
||||
@@ -55,7 +63,7 @@ jobs:
|
||||
if: >-
|
||||
github.event_name == 'push' ||
|
||||
(github.event_name == 'pull_request' && github.event.pull_request.draft != true)
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ${{ inputs.fast_runners && 'blacksmith-2vcpu-ubuntu-2404' || 'ubuntu-latest' }}
|
||||
timeout-minutes: 5
|
||||
outputs:
|
||||
should_run: ${{ steps.scope.outputs.should_run || steps.graph.outputs.should_run }}
|
||||
@@ -142,7 +150,9 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: ${{ fromJSON(needs.changes.outputs.runners || '["ubuntu-22.04","ubuntu-24.04-arm","macos-15","macos-15-intel","windows-2022","windows-11-arm"]') }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
# Keep platform keys stable for slot names and Windows cross-compilation.
|
||||
runs-on: >-
|
||||
${{ inputs.fast_runners && fromJSON('{"ubuntu-22.04":"blacksmith-8vcpu-ubuntu-2204","ubuntu-24.04-arm":"blacksmith-8vcpu-ubuntu-2404-arm","macos-15":"blacksmith-6vcpu-macos-15","windows-2022":"blacksmith-8vcpu-windows-2025"}')[matrix.os] || matrix.os }}
|
||||
timeout-minutes: 20
|
||||
env:
|
||||
ORCA_BACKGROUND_LAUNCH: '1'
|
||||
@@ -314,7 +324,7 @@ jobs:
|
||||
${{ !cancelled() && needs.changes.outputs.should_run != 'false' &&
|
||||
needs.changes.outputs.qualification != 'false' &&
|
||||
(github.event_name != 'pull_request' || github.event.pull_request.draft != true) }}
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ${{ inputs.fast_runners && 'blacksmith-8vcpu-ubuntu-2404' || 'ubuntu-latest' }}
|
||||
timeout-minutes: 15
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
@@ -354,7 +364,7 @@ jobs:
|
||||
image: quay.io/pypa/manylinux_2_28_x86_64@sha256:407f771c51a2c3e83ebe5a7970b4289ead3a6db21d9b9c089168775cad11d328
|
||||
- os: ubuntu-24.04-arm
|
||||
image: quay.io/pypa/manylinux_2_28_aarch64@sha256:c22ffd129ac99a8a42d1f2c2f4e88a9089288dd9ee987a7092da1c7dc48f27a9
|
||||
runs-on: ${{ matrix.os }}
|
||||
runs-on: ${{ inputs.fast_runners && (matrix.os == 'ubuntu-22.04' && 'blacksmith-8vcpu-ubuntu-2204' || 'blacksmith-8vcpu-ubuntu-2404-arm') || matrix.os }}
|
||||
container: ${{ matrix.image }}
|
||||
timeout-minutes: 25
|
||||
env:
|
||||
@@ -416,7 +426,7 @@ jobs:
|
||||
(github.event_name != 'pull_request' || github.event.pull_request.draft != true) &&
|
||||
(github.event_name != 'pull_request' || inputs.build_template || inputs.ref != '' ||
|
||||
needs.changes.outputs.native_compatibility != 'false') }}
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: ${{ inputs.fast_runners && 'blacksmith-8vcpu-ubuntu-2204' || 'ubuntu-22.04' }}
|
||||
timeout-minutes: 20
|
||||
env:
|
||||
ORCA_BACKGROUND_LAUNCH: '1'
|
||||
@@ -475,7 +485,7 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-22.04, ubuntu-24.04-arm]
|
||||
runs-on: ${{ matrix.os }}
|
||||
runs-on: ${{ inputs.fast_runners && (matrix.os == 'ubuntu-22.04' && 'blacksmith-8vcpu-ubuntu-2204' || 'blacksmith-8vcpu-ubuntu-2404-arm') || matrix.os }}
|
||||
timeout-minutes: 20
|
||||
env:
|
||||
ORCA_BACKGROUND_LAUNCH: '1'
|
||||
@@ -532,7 +542,7 @@ jobs:
|
||||
needs.persistence.result == 'success' && needs.mobile_web_bundle.result == 'success' &&
|
||||
needs.linux_glibc_floor.result == 'success' &&
|
||||
needs.linux_glibc217_compat.result == 'success' && needs.linux_musl.result == 'success' }}
|
||||
runs-on: ubuntu-latest
|
||||
runs-on: ${{ inputs.fast_runners && 'blacksmith-4vcpu-ubuntu-2404' || 'ubuntu-latest' }}
|
||||
timeout-minutes: 30
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
Reference in New Issue
Block a user