Skip to content

Commit cb1bc1c

Browse files
committed
Update release pipelines to upload release artifacts
1 parent 4334f8c commit cb1bc1c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+593
-74
lines changed

.github/actions/archive/action.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,12 @@ runs:
2626
run: |
2727
echo "${{ inputs.app-store-key }}" > AuthKey_${{ inputs.app-store-key-id }}.p8
2828
29-
xcodebuild archive \
29+
xcodebuild clean archive \
3030
-allowProvisioningUpdates \
3131
-allowProvisioningDeviceRegistration \
32+
-skipPackagePluginValidation \
33+
-skipMacroValidation \
34+
-onlyUsePackageVersionsFromResolvedFile \
3235
-authenticationKeyID ${{ inputs.app-store-key-id }} \
3336
-authenticationKeyIssuerID ${{ inputs.app-store-key-issuer-id }} \
3437
-authenticationKeyPath "${PWD}/AuthKey_${{ inputs.app-store-key-id }}.p8" \
@@ -38,6 +41,4 @@ runs:
3841
-archivePath '${{ inputs.archive-path }}' \
3942
-resultBundlePath BuildResults.xcresult
4043
41-
./Tools/xcresulttool-github BuildResults.xcresult
42-
4344
rm -rf AuthKey_${{ inputs.app-store-key-id }}.p8

.github/actions/build-for-testing/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ inputs:
1818
runs:
1919
using: composite
2020
steps:
21-
- name: Cache Swift Packages
21+
- name: Xcode Cache
2222
uses: actions/cache@v3
2323
with:
2424
path: |

.github/actions/export/action.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Notarize
1+
name: Export
22
inputs:
33
app-store-key:
44
description: App Store key in PEM PKCS#8 format
@@ -24,8 +24,7 @@ inputs:
2424
runs:
2525
using: composite
2626
steps:
27-
- id: notarize
28-
shell: bash
27+
- shell: bash
2928
working-directory: Apple
3029
run: |
3130
echo "${{ inputs.app-store-key }}" > AuthKey_${{ inputs.app-store-key-id }}.p8

.github/actions/notarize/action.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Notarize
2+
inputs:
3+
app-store-key:
4+
description: App Store key in PEM PKCS#8 format
5+
required: true
6+
app-store-key-id:
7+
description: App Store key ID
8+
required: true
9+
app-store-key-issuer-id:
10+
description: App Store key issuer ID
11+
required: true
12+
archive-path:
13+
description: Xcode archive path
14+
required: true
15+
export-path:
16+
description: The path to export the archive to
17+
required: true
18+
outputs:
19+
notarized-app:
20+
description: The compressed and notarized app
21+
value: ${{ steps.notarize.outputs.notarized-app }}
22+
runs:
23+
using: composite
24+
steps:
25+
- id: notarize
26+
shell: bash
27+
working-directory: Apple
28+
run: |
29+
echo "${{ inputs.app-store-key }}" > AuthKey_${{ inputs.app-store-key-id }}.p8
30+
31+
echo '{"destination":"upload","method":"developer-id"}' \
32+
| plutil -convert xml1 -o ExportOptions.plist -
33+
34+
xcodebuild \
35+
-exportArchive \
36+
-allowProvisioningUpdates \
37+
-allowProvisioningDeviceRegistration \
38+
-authenticationKeyID ${{ inputs.app-store-key-id }} \
39+
-authenticationKeyIssuerID ${{ inputs.app-store-key-issuer-id }} \
40+
-authenticationKeyPath "${PWD}/AuthKey_${{ inputs.app-store-key-id }}.p8" \
41+
-archivePath '${{ inputs.archive-path }}' \
42+
-exportOptionsPlist ExportOptions.plist
43+
44+
until xcodebuild \
45+
-exportNotarizedApp \
46+
-allowProvisioningUpdates \
47+
-allowProvisioningDeviceRegistration \
48+
-authenticationKeyID ${{ inputs.app-store-key-id }} \
49+
-authenticationKeyIssuerID ${{ inputs.app-store-key-issuer-id }} \
50+
-authenticationKeyPath "${PWD}/AuthKey_${{ inputs.app-store-key-id }}.p8" \
51+
-archivePath '${{ inputs.archive-path }}' \
52+
-exportPath ${{ inputs.export-path }}
53+
do
54+
echo "Failed to export app, trying again in 10s..."
55+
sleep 10
56+
done
57+
58+
rm -rf AuthKey_${{ inputs.app-store-key-id }}.p8 ExportOptions.plist

.github/actions/test-without-building/action.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,17 @@ inputs:
1818
runs:
1919
using: composite
2020
steps:
21-
- shell: bash
22-
id: vars
23-
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
2421
- shell: bash
2522
working-directory: Apple
2623
run: |
2724
xcodebuild test-without-building \
2825
-scheme '${{ inputs.scheme }}' \
2926
-destination '${{ inputs.destination }}' \
3027
${{ inputs.test-plan && '-testPlan ' }}${{ inputs.test-plan }} \
31-
-resultBundlePath "${{ inputs.artifact-prefix }}-${{ steps.vars.outputs.sha_short }}.xcresult"
28+
-resultBundlePath "${{ inputs.artifact-prefix }}.xcresult"
3229
- uses: kishikawakatsumi/xcresulttool@v1
3330
if: always()
3431
with:
35-
path: Apple/${{ inputs.artifact-prefix }}-${{ steps.vars.outputs.sha_short }}.xcresult
32+
path: Apple/${{ inputs.artifact-prefix }}.xcresult
3633
title: ${{ inputs.check-name }}
3734
show-passed-tests: false

.github/workflows/build-appimage.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
name: Build AppImage
22
on:
33
push:
4-
branches: [main]
4+
branches:
5+
- main
56
pull_request:
7+
branches:
8+
- "*"
69
jobs:
710
appimage:
811
name: Build AppImage
@@ -17,7 +20,7 @@ jobs:
1720
docker cp temp:/app/burrow-gtk/build-appimage/Burrow-x86_64.AppImage .
1821
docker rm temp
1922
- uses: actions/upload-artifact@v4
23+
name: Upload to GitHub
2024
with:
2125
name: AppImage
2226
path: Burrow-x86_64.AppImage
23-

.github/workflows/build-apple.yml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Apple Build
1+
name: Build Apple Apps
22
on:
33
push:
44
branches:
@@ -12,7 +12,7 @@ concurrency:
1212
jobs:
1313
build:
1414
name: Build App (${{ matrix.platform }})
15-
runs-on: macos-13
15+
runs-on: macos-14
1616
strategy:
1717
fail-fast: false
1818
matrix:
@@ -53,7 +53,6 @@ jobs:
5353
- name: Install Rust
5454
uses: dtolnay/rust-toolchain@stable
5555
with:
56-
toolchain: stable
5756
targets: ${{ join(matrix.rust-targets, ', ') }}
5857
- name: Build
5958
id: build
@@ -64,7 +63,7 @@ jobs:
6463
app-store-key: ${{ secrets.APPSTORE_KEY }}
6564
app-store-key-id: ${{ secrets.APPSTORE_KEY_ID }}
6665
app-store-key-issuer-id: ${{ secrets.APPSTORE_KEY_ISSUER_ID }}
67-
- name: Xcode Unit Test
66+
- name: Run Unit Tests
6867
if: ${{ matrix.xcode-unit-test != '' }}
6968
continue-on-error: true
7069
uses: ./.github/actions/test-without-building
@@ -74,7 +73,7 @@ jobs:
7473
test-plan: ${{ matrix.xcode-unit-test }}
7574
artifact-prefix: unit-tests-${{ matrix.sdk-name }}
7675
check-name: Xcode Unit Tests (${{ matrix.platform }})
77-
- name: Xcode UI Test
76+
- name: Run UI Tests
7877
if: ${{ matrix.xcode-ui-test != '' }}
7978
continue-on-error: true
8079
uses: ./.github/actions/test-without-building

.github/workflows/build-docker.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ jobs:
3333
images: ghcr.io/${{ github.repository }}
3434
tags: |
3535
type=sha
36+
type=match,pattern=builds/(.*),group=1
3637
type=raw,value=latest,enable={{is_default_branch}}
3738
- name: Build and Push
3839
uses: docker/build-push-action@v4

.github/workflows/build-rpm.yml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
1+
on: workflow_dispatch
12
name: Build RPM
2-
on:
3-
push:
4-
branches: [ "main" ]
5-
pull_request:
6-
branches:
7-
- "*"
83
jobs:
94
build:
105
name: Build RPM
@@ -20,4 +15,3 @@ jobs:
2015
strip -s target/release/burrow
2116
- name: Build RPM
2217
run: cargo generate-rpm -p burrow
23-

.github/workflows/build-rust.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Rust Build
1+
name: Build Rust Crate
22
on:
33
push:
44
branches:

.github/workflows/lint-git.yml

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,14 @@ jobs:
88
name: Git Lint
99
runs-on: ubuntu-latest
1010
steps:
11-
- uses: actions/checkout@v3
12-
with:
13-
ref: ${{ github.event.pull_request.head.sha }}
14-
fetch-depth: 0
15-
- name: Install Gitlint
16-
shell: bash
17-
run: python -m pip install gitlint
18-
- name: Run Gitlint
19-
shell: bash
20-
run: gitlint --commits "${{ github.event.pull_request.base.sha }}..HEAD"
11+
- name: Checkout
12+
uses: actions/checkout@v4
13+
with:
14+
ref: ${{ github.event.pull_request.head.sha }}
15+
fetch-depth: 0
16+
- name: Install
17+
shell: bash
18+
run: python -m pip install gitlint
19+
- name: Lint
20+
shell: bash
21+
run: gitlint --commits "${{ github.event.pull_request.base.sha }}..HEAD"

.github/workflows/lint-swift.yml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
name: Swift Lint
22
on:
3-
push:
4-
branches:
5-
- main
63
pull_request:
74
branches:
85
- "*"
@@ -14,8 +11,6 @@ jobs:
1411
image: ghcr.io/realm/swiftlint:latest
1512
steps:
1613
- name: Checkout
17-
uses: actions/checkout@v3
18-
with:
19-
ssh-key: ${{ secrets.DEPLOY_KEY }}
14+
uses: actions/checkout@v4
2015
- name: Lint
2116
run: swiftlint lint --reporter github-actions-logging
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Release (AppImage)
2+
on:
3+
release:
4+
types:
5+
- created
6+
jobs:
7+
appimage:
8+
name: Build AppImage
9+
runs-on: ubuntu-latest
10+
container: docker
11+
steps:
12+
- name: Checkout
13+
uses: actions/checkout@v4
14+
with:
15+
fetch-depth: 0
16+
- name: Build
17+
run: |
18+
docker build -t appimage-builder . -f burrow-gtk/build-aux/Dockerfile
19+
docker create --name temp appimage-builder
20+
docker cp temp:/app/burrow-gtk/build-appimage/Burrow-x86_64.AppImage .
21+
docker rm temp
22+
- name: Upload to GitHub
23+
uses: SierraSoftworks/[email protected]
24+
with:
25+
token: ${{ secrets.GITHUB_TOKEN }}
26+
release_tag: ${{ github.ref_name }}
27+
overwrite: 'true'
28+
files: |
29+
Burrow-x86_64.AppImage

0 commit comments

Comments
 (0)