diff --git a/.github/workflows/startos-iso.yaml b/.github/workflows/startos-iso.yaml index 473294e22..2871b5fb1 100644 --- a/.github/workflows/startos-iso.yaml +++ b/.github/workflows/startos-iso.yaml @@ -8,7 +8,7 @@ on: type: choice description: Environment options: - - "" + - NONE - dev - unstable - dev-unstable @@ -18,6 +18,16 @@ on: options: - standard - fast + platform: + type: choice + description: Platform + options: + - ALL + - x86_64 + - x86_64-nonfree + - aarch64 + - aarch64-nonfree + - raspberrypi push: branches: - master @@ -29,7 +39,7 @@ on: env: NODEJS_VERSION: "18.15.0" - ENVIRONMENT: '${{ fromJson(format(''["{0}", ""]'', github.event.inputs.environment || ''dev''))[github.event.inputs.environment == ''''] }}' + ENVIRONMENT: '${{ fromJson(format(''["{0}", ""]'', github.event.inputs.environment || ''dev''))[github.event.inputs.environment == ''NONE''] }}' jobs: all: @@ -37,27 +47,37 @@ jobs: strategy: fail-fast: false matrix: - platform: - [x86_64, x86_64-nonfree, aarch64, aarch64-nonfree, raspberrypi] + platform: >- + ${{ + fromJson( + format( + '[ + ["{0}"], + ["x86_64", "x86_64-nonfree", "aarch64", "aarch64-nonfree", "raspberrypi"] + ]', + github.event.inputs.platform || 'ALL' + ) + )[(github.event.inputs.platform || 'ALL') == 'ALL'] + }} runs-on: >- ${{ fromJson( format( '["ubuntu-22.04", "{0}"]', fromJson('{ - "x86_64": "buildjet-32vcpu-ubuntu-2204", - "x86_64-nonfree": "buildjet-32vcpu-ubuntu-2204", - "aarch64": "buildjet-8vcpu-ubuntu-2204-arm", - "aarch64-nonfree": "buildjet-8vcpu-ubuntu-2204-arm", - "raspberrypi": "buildjet-16vcpu-ubuntu-2204-arm", - }')[matrix.platform] + "x86_64": ["buildjet-32vcpu-ubuntu-2204", "buildjet-32vcpu-ubuntu-2204"], + "x86_64-nonfree": ["buildjet-32vcpu-ubuntu-2204", "buildjet-32vcpu-ubuntu-2204"], + "aarch64": ["buildjet-8vcpu-ubuntu-2204-arm", "buildjet-32vcpu-ubuntu-2204-arm"], + "aarch64-nonfree": ["buildjet-8vcpu-ubuntu-2204-arm", "buildjet-32vcpu-ubuntu-2204-arm"], + "raspberrypi": ["buildjet-16vcpu-ubuntu-2204-arm", "buildjet-32vcpu-ubuntu-2204-arm"], + }')[matrix.platform][github.event.inputs.platform == matrix.platform] ) )[github.event.inputs.runner == 'fast'] }} steps: - run: | sudo mount -t tmpfs tmpfs . - if: ${{ github.event.inputs.runner == 'fast' && (matrix.platform == 'x86_64' || matrix.platform == 'x86_64-nonfree') }} + if: ${{ github.event.inputs.runner == 'fast' && (matrix.platform == 'x86_64' || matrix.platform == 'x86_64-nonfree' || github.event.inputs.platform == matrix.platform) }} - uses: actions/checkout@v3 with: