name: 'Composite Xcode Path' description: 'Get Xcode version to be used across all actions' inputs: xcode-version: description: Xcode version to use, in semver(ish)-style matching the format on the Actions runner image. See available versions at https://github.com/actions/runner-images/blame/main/images/macos/macos-14-Readme.md#xcode required: false default: '26.0' outputs: xcode-path: description: "Path to current Xcode version" value: ${{ steps.xcode-path.outputs.xcode-path }} runs: using: "composite" steps: - name: Set XCODE_PATH env var env: XCODE_PATH: "/Applications/Xcode_${{ inputs.xcode-version }}.app" run: echo "XCODE_PATH=${{ env.XCODE_PATH }}" >> $GITHUB_ENV shell: bash - name: Set Xcode version run: sudo xcode-select -s ${{ env.XCODE_PATH }} shell: bash - name: Enable new build system integration run: defaults write com.apple.dt.XCBuild EnableSwiftBuildSystemIntegration 1 shell: bash - name: Output Xcode path id: xcode-path run: echo "xcode-path=$(echo ${{ env.XCODE_PATH }})" >> $GITHUB_OUTPUT shell: bash