task: name: "Update Runner Image ($MACOS_VERSION)" env: matrix: - MACOS_VERSION: sequoia XCODE_VERSIONS: "\"26.0.1\",16.4,16.3,16.2,16.1,16" ADDITIONAL_IOS_BUILDS: "18.5,18.4,18.2,17.5" ADDITIONAL_TVOS_BUILDS: "17.5" XCODE_COMPONENTS: "\"MetalToolchain\"" DISK_SIZE: 380 - MACOS_VERSION: tahoe XCODE_VERSIONS: "\"26.5\",\"26.4.1\",\"26.3\",\"26.2\",\"26.1.1\",\"26.0.1\"" XCODE_COMPONENTS: "\"MetalToolchain\"" ADDITIONAL_IOS_BUILDS: "18.6" DISK_SIZE: 330 <<: *defaults pull_base_script: - tart pull ghcr.io/cirruslabs/macos-$MACOS_VERSION-base:latest init_xcode_script: packer init templates/xcode.pkr.hcl build_xcode_script: | packer build -var tag=runner -var disk_size=$DISK_SIZE \ -var disk_free_mb=100000 \ -var macos_version="$MACOS_VERSION" \ -var xcode_version="[$XCODE_VERSIONS]" \ -var additional_ios_builds="[$ADDITIONAL_IOS_BUILDS]" \ -var additional_tvos_builds="[$ADDITIONAL_TVOS_BUILDS]" \ -var xcode_components="[$XCODE_COMPONENTS]" \ -var expected_runtimes_file="data/expected.$MACOS_VERSION.runtimes.txt" \ templates/xcode.pkr.hcl finalize_script: | if [[ -f "scripts/finalize-$MACOS_VERSION.sh" ]]; then packer build -var vm_name="$MACOS_VERSION-xcode:runner" \ -var script_path="scripts/finalize-$MACOS_VERSION.sh" \ templates/exex-script.pkr.hcl else echo "Skipping prepare script for $MACOS_VERSION" fi push_script: | if [[ -z "$CIRRUS_PR" ]]; then tart push "$MACOS_VERSION-xcode:runner" ghcr.io/cirruslabs/macos-runner:$MACOS_VERSION else echo "Skipping pushing for PR..." fi always: cleanup_script: - tart delete "$MACOS_VERSION-xcode:runner"