From 082799eb6f2d76e62e9639d0730facce6a8ef061 Mon Sep 17 00:00:00 2001 From: Fedor Korotkov Date: Wed, 12 Nov 2025 19:14:44 -0500 Subject: [PATCH] Fixed Xcodes installation (#304) * Fixed Xcodes installation * Removed redundant execution lock from Cirrus runner configuration --- .ci/cirrus.runner.yml | 1 - templates/xcode.pkr.hcl | 41 +++++++++++++++++++---------------------- 2 files changed, 19 insertions(+), 23 deletions(-) diff --git a/.ci/cirrus.runner.yml b/.ci/cirrus.runner.yml index 0fc6397..bbd7a1b 100644 --- a/.ci/cirrus.runner.yml +++ b/.ci/cirrus.runner.yml @@ -1,6 +1,5 @@ task: name: "Update Runner Image ($MACOS_VERSION)" - execution_lock: runner-image-update env: matrix: - MACOS_VERSION: sonoma diff --git a/templates/xcode.pkr.hcl b/templates/xcode.pkr.hcl index 59a2c5d..75ea818 100644 --- a/templates/xcode.pkr.hcl +++ b/templates/xcode.pkr.hcl @@ -76,9 +76,9 @@ locals { type = "shell" inline = [ "source ~/.zprofile", - "sudo /usr/local/bin/xcodes install ${version} --experimental-unxip --path /Users/admin/Downloads/Xcode_${version}.xip --select --empty-trash", + "sudo xcodes install ${version} --experimental-unxip --path /Users/admin/Downloads/Xcode_${version}.xip --select --empty-trash", // get selected xcode path, strip /Contents/Developer and move to GitHub compatible locations - "INSTALLED_PATH=$(/usr/local/bin/xcodes select -p)", + "INSTALLED_PATH=$(xcodes select -p)", "CONTENTS_DIR=$(dirname $INSTALLED_PATH)", "APP_DIR=$(dirname $CONTENTS_DIR)", "sudo mv $APP_DIR /Applications/Xcode_${version}.app", @@ -115,18 +115,6 @@ build { ] } - # Compatibility with GitHub Actions Runner Images, where - # /usr/local/bin belongs to the default user. Also see [2]. - # - # [1]: https://github.com/actions/runner-images/blob/6bbddd20d76d61606bea5a0133c950cc44c370d3/images/macos/scripts/build/configure-machine.sh#L96 - # [2]: https://github.com/actions/runner-images/discussions/7607 - provisioner "shell" { - inline = [ - "sudo chown admin /usr/local/bin", - "/usr/local/bin/xcodes version", - ] - } - provisioner "shell" { inline = [ "source ~/.zprofile", @@ -149,11 +137,8 @@ build { provisioner "shell" { inline = [ "source ~/.zprofile", - "wget -q https://github.com/XcodesOrg/xcodes/releases/latest/download/xcodes.zip -O xcodes.zip", - "unzip -q xcodes.zip", - "mv xcodes /usr/local/bin/", - "rm xcodes.zip", - "/usr/local/bin/xcodes version", + "brew install xcodes", + "xcodes version", ] } @@ -185,7 +170,7 @@ build { content { inline = [ "source ~/.zprofile", - "sudo /usr/local/bin/xcodes select '${var.xcode_version[2]}'", + "sudo xcodes select '${var.xcode_version[2]}'", "xcodebuild -downloadAllPlatforms", ] } @@ -197,7 +182,7 @@ build { content { inline = [ "source ~/.zprofile", - "sudo /usr/local/bin/xcodes select '${var.xcode_version[1]}'", + "sudo xcodes select '${var.xcode_version[1]}'", "xcodebuild -downloadAllPlatforms", ] } @@ -206,7 +191,7 @@ build { provisioner "shell" { inline = [ "source ~/.zprofile", - "sudo /usr/local/bin/xcodes select '${var.xcode_version[0]}'", + "sudo xcodes select '${var.xcode_version[0]}'", "xcodebuild -downloadAllPlatforms", ] } @@ -382,6 +367,18 @@ build { pause_before = "60s" } + # Compatibility with GitHub Actions Runner Images, where + # /usr/local/bin belongs to the default user. Also see [2]. + # + # [1]: https://github.com/actions/runner-images/blob/6bbddd20d76d61606bea5a0133c950cc44c370d3/images/macos/scripts/build/configure-machine.sh#L96 + # [2]: https://github.com/actions/runner-images/discussions/7607 + provisioner "shell" { + inline = [ + "sudo chown admin /usr/local/bin", + "xcodes version", + ] + } + // Install setup-info-generator provisioner "shell" { inline = [