Add Forgejo namespace workflow stack
This commit is contained in:
parent
482fd5d085
commit
865b676c99
68 changed files with 9709 additions and 11 deletions
97
.forgejo/workflows/build-apple.yml
Normal file
97
.forgejo/workflows/build-apple.yml
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
name: Build Apple
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- "**"
|
||||
workflow_dispatch:
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build App (${{ matrix.platform }})
|
||||
runs-on: namespace-profile-macos-large
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- platform: macOS
|
||||
destination: platform=macOS
|
||||
rust-targets: x86_64-apple-darwin,aarch64-apple-darwin
|
||||
- platform: iOS Simulator
|
||||
destination: platform=iOS Simulator,name=iPhone 17 Pro
|
||||
rust-targets: aarch64-apple-ios-sim,x86_64-apple-ios
|
||||
env:
|
||||
CARGO_INCREMENTAL: 0
|
||||
RUST_BACKTRACE: short
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: https://code.forgejo.org/actions/checkout@v4
|
||||
with:
|
||||
token: ${{ github.token }}
|
||||
fetch-depth: 0
|
||||
submodules: recursive
|
||||
|
||||
- name: Select Xcode
|
||||
shell: bash
|
||||
run: |
|
||||
set -euo pipefail
|
||||
candidates=(
|
||||
"/Applications/Xcode_26.1.app/Contents/Developer"
|
||||
"/Applications/Xcode_26_1.app/Contents/Developer"
|
||||
"/Applications/Xcode.app/Contents/Developer"
|
||||
"/Applications/Xcode/Xcode.app/Contents/Developer"
|
||||
)
|
||||
selected=""
|
||||
for candidate in "${candidates[@]}"; do
|
||||
if [[ -d "$candidate" ]]; then
|
||||
selected="$candidate"
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [[ -z "$selected" ]] && command -v xcode-select >/dev/null 2>&1; then
|
||||
selected="$(xcode-select -p)"
|
||||
fi
|
||||
if [[ -z "$selected" ]]; then
|
||||
echo "::error ::Unable to locate an Xcode toolchain" >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "DEVELOPER_DIR=$selected" >> "$GITHUB_ENV"
|
||||
DEVELOPER_DIR="$selected" /usr/bin/xcodebuild -version || true
|
||||
|
||||
- name: Install Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
toolchain: 1.85.0
|
||||
targets: ${{ matrix.rust-targets }}
|
||||
|
||||
- name: Install Protobuf
|
||||
shell: bash
|
||||
run: |
|
||||
set -euo pipefail
|
||||
if ! command -v protoc >/dev/null 2>&1; then
|
||||
brew install protobuf
|
||||
fi
|
||||
|
||||
- name: Build
|
||||
shell: bash
|
||||
working-directory: Apple
|
||||
run: |
|
||||
set -euo pipefail
|
||||
xcodebuild build \
|
||||
-project Burrow.xcodeproj \
|
||||
-scheme App \
|
||||
-destination '${{ matrix.destination }}' \
|
||||
-skipPackagePluginValidation \
|
||||
-skipMacroValidation \
|
||||
-onlyUsePackageVersionsFromResolvedFile \
|
||||
-clonedSourcePackagesDirPath SourcePackages \
|
||||
-packageCachePath "$PWD/PackageCache" \
|
||||
-derivedDataPath "$PWD/DerivedData" \
|
||||
CODE_SIGNING_ALLOWED=NO \
|
||||
CODE_SIGNING_REQUIRED=NO \
|
||||
CODE_SIGN_IDENTITY="" \
|
||||
DEVELOPMENT_TEAM=""
|
||||
Loading…
Add table
Add a link
Reference in a new issue