Skip to content

Commit a4cbe30

Browse files
committed
Update the release PR message
1 parent 2a046d4 commit a4cbe30

File tree

7 files changed

+123
-30
lines changed

7 files changed

+123
-30
lines changed

.github/workflows/test.yml

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ name: "🧑‍🔬 Build and Test"
22

33
on:
44
workflow_dispatch:
5+
inputs:
6+
force-rebuild:
7+
required: false
8+
default: false
9+
type: boolean
10+
description: "Re-build Rust binaries"
511
push:
612
branches:
713
- 'run-on-ci/**'
@@ -21,6 +27,7 @@ jobs:
2127
binaries-path: ${{ env.BINARIES_PATH }}
2228
cache-key: ${{ env.CACHE_KEY }}
2329
cache-restore-key: ${{ env.CACHE_RESTORE_KEY }}
30+
force-rebuild: ${{ inputs.force-rebuild }}
2431

2532
steps:
2633
- run: echo "Just a hacky workaround for passing envs to jobs expecting them... ¯\_(ツ)_/¯"
@@ -34,24 +41,37 @@ jobs:
3441
binaries-path: ${{ needs.sharedInputs.outputs.binaries-path }}
3542
cache-key: ${{ needs.sharedInputs.outputs.cache-key }}
3643
cache-restore-key: ${{ needs.sharedInputs.outputs.cache-restore-key }}
44+
force-rebuild: "${{ needs.sharedInputs.outputs.force-rebuild }}"
45+
46+
testMacOS15:
47+
name: "🤖 Unit tests"
48+
needs: [sharedInputs, buildFFI]
49+
uses: ./.github/workflows/tmpl_test_macos15.yml
50+
secrets:
51+
codecov_token: ${{ secrets.CODECOV_TOKEN }}
52+
with:
53+
rust-target-path: ${{ needs.sharedInputs.outputs.rust-target-path }}
54+
binaries-path: ${{ needs.sharedInputs.outputs.binaries-path }}
55+
cache-key: ${{ needs.sharedInputs.outputs.cache-key }}
56+
cache-restore-key: ${{ needs.sharedInputs.outputs.cache-restore-key }}
57+
submit-coverage-report: true
3758

3859
testMacOS14:
3960
name: "🤖 Unit tests"
4061
needs: [sharedInputs, buildFFI]
41-
uses: ./.github/workflows/tmpl_test_macos14_arm64.yml
62+
uses: ./.github/workflows/tmpl_test_macos14.yml
4263
secrets:
4364
codecov_token: ${{ secrets.CODECOV_TOKEN }}
4465
with:
4566
rust-target-path: ${{ needs.sharedInputs.outputs.rust-target-path }}
4667
binaries-path: ${{ needs.sharedInputs.outputs.binaries-path }}
4768
cache-key: ${{ needs.sharedInputs.outputs.cache-key }}
4869
cache-restore-key: ${{ needs.sharedInputs.outputs.cache-restore-key }}
49-
submit-coverage-report: false
5070

5171
testMacOS13:
5272
name: "🤖 Unit tests"
5373
needs: [sharedInputs, buildFFI]
54-
uses: ./.github/workflows/tmpl_test_macos13_x86_64.yml
74+
uses: ./.github/workflows/tmpl_test_macos13.yml
5575
with:
5676
rust-target-path: ${{ needs.sharedInputs.outputs.rust-target-path }}
5777
binaries-path: ${{ needs.sharedInputs.outputs.binaries-path }}

.github/workflows/tmpl_build_rust_binaries.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@ on:
1515
cache-restore-key:
1616
required: true
1717
type: string
18+
force-rebuild:
19+
required: true
20+
type: string
1821

1922
jobs:
2023
buildRustBinaries:
@@ -44,17 +47,18 @@ jobs:
4447
restore-keys: |
4548
${{ inputs.cache-restore-key }}-${{ runner.os }}
4649
47-
- name: "🔍 Check binaries in ${{ inputs.binaries-path }}"
50+
- name: "🔍 Check binaries exist in ${{ inputs.binaries-path }}"
4851
id: check_files
4952
uses: andstor/file-existence-action@v3
5053
with:
5154
files: "Resources/**/libpact_ffi.a"
5255

5356
- name: "🛠 Prepare Tools"
57+
if: ${{ steps.check_files.outputs.files_exists == 'false' || inputs.force-rebuild == 'true' }}
5458
run: |
55-
sh Support/Scripts/prepare_build_tools
59+
sh Support/Scripts/Config/prepare_build_tools
5660
5761
- name: "🎁 Build FFI binaries (skipping if cached)"
58-
if: steps.check_files.outputs.files_exists == 'false'
62+
if: ${{ steps.check_files.outputs.files_exists == 'false' || inputs.force-rebuild == 'true' }}
5963
run: |
60-
sh Support/Scripts/build_rust_dependencies
64+
sh Support/Scripts/CI/build_rust_dependencies

.github/workflows/tmpl_test_macos13_x86_64.yml renamed to .github/workflows/tmpl_test_macos13.yml

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "On macOS 13 (intel)"
1+
name: "macOS 13"
22

33
on:
44
workflow_call:
@@ -15,12 +15,13 @@ on:
1515
cache-restore-key:
1616
required: true
1717
type: string
18+
1819
env:
19-
DEVELOPER_DIR: /Applications/Xcode_15.4.app/Contents/Developer
20+
DEVELOPER_DIR: /Applications/Xcode_15.2.app/Contents/Developer
2021

2122
jobs:
2223
testMacOS13:
23-
name: "⚗️ macOS 13 (Intel)"
24+
name: "🖥️ macOS 13"
2425
runs-on: macos-13
2526

2627
strategy:
@@ -30,14 +31,14 @@ jobs:
3031
- scheme: "PactSwiftMockServer-iOS"
3132
destination: "platform=iOS Simulator,name=iPhone 14 Pro"
3233
- scheme: "PactSwiftMockServer-macOS"
33-
destination: "arch=x86_64"
34+
destination: "" # Intentionally left empty
3435

3536
env:
3637
SCHEME: ${{ matrix.scheme }}
3738
DESTINATION: ${{ matrix.destination }}
3839

3940
concurrency:
40-
group: test-macos13_x86_64-${{ github.ref }}-${{ matrix.scheme }}
41+
group: test-macos13-${{ github.ref }}-${{ matrix.scheme }}
4142
cancel-in-progress: true
4243

4344
steps:
@@ -56,10 +57,7 @@ jobs:
5657
restore-keys: |
5758
${{ inputs.cache-restore-key }}-${{ runner.os }}
5859
59-
- name: "🛠 Prepare Tools"
60-
run: |
61-
sh Support/Scripts/Config/prepare_build_tools
62-
6360
- name: "⚗️ Run tests"
6461
run: |
62+
sh Support/Scripts/Config/prepare_build_tools
6563
sh Support/Scripts/test
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: "macOS 14"
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
rust-target-path:
7+
required: true
8+
type: string
9+
binaries-path:
10+
required: true
11+
type: string
12+
cache-key:
13+
required: true
14+
type: string
15+
cache-restore-key:
16+
required: true
17+
type: string
18+
secrets:
19+
codecov_token:
20+
required: true
21+
22+
env:
23+
DEVELOPER_DIR: /Applications/Xcode_16.0.app/Contents/Developer
24+
25+
jobs:
26+
testMacOS14:
27+
name: "🖥️ macOS 14"
28+
runs-on: macos-14
29+
30+
strategy:
31+
fail-fast: true
32+
matrix:
33+
include:
34+
- scheme: "PactSwiftMockServer-iOS"
35+
destination: "platform=iOS Simulator,name=iPhone 15 Pro"
36+
- scheme: "PactSwiftMockServer-macOS"
37+
destination: "" # Intentionally left empty
38+
39+
env:
40+
SCHEME: ${{ matrix.scheme }}
41+
DESTINATION: ${{ matrix.destination }}
42+
43+
concurrency:
44+
group: test-macos14-${{ github.ref }}-${{ matrix.scheme }}
45+
cancel-in-progress: true
46+
47+
steps:
48+
- name: "♻️ Checkout repository"
49+
uses: actions/checkout@v4
50+
with:
51+
submodules: recursive
52+
53+
- name: "♼ Cache rust binaries"
54+
uses: actions/cache@v4
55+
with:
56+
path: |
57+
${{ inputs.rust-target-path }}
58+
${{ inputs.binaries-path }}
59+
key: ${{ inputs.cache-restore-key }}-${{ runner.os }}-${{ hashFiles('**/libpact_ffi.version') }}
60+
restore-keys: |
61+
${{ inputs.cache-restore-key }}-${{ runner.os }}
62+
63+
- name: "🛠 Prepare Tools"
64+
run: |
65+
sh Support/Scripts/Config/prepare_build_tools
66+
67+
- name: "⚗️ Run tests"
68+
run: |
69+
sh Support/Scripts/test

.github/workflows/tmpl_test_macos14_arm64.yml renamed to .github/workflows/tmpl_test_macos15.yml

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "On macOS 14 (latest)"
1+
name: "macOS 14"
22

33
on:
44
workflow_call:
@@ -21,33 +21,32 @@ on:
2121
secrets:
2222
codecov_token:
2323
required: true
24-
workflow_dispatch:
2524

2625
env:
27-
DEVELOPER_DIR: /Applications/Xcode_15.3.app/Contents/Developer
26+
DEVELOPER_DIR: /Applications/Xcode_16.2.app/Contents/Developer
2827

2928
jobs:
3029
testMacOS14:
31-
name: "⚗️ macOS (latest)"
32-
runs-on: macos-latest
30+
name: "🖥️ macOS 15"
31+
runs-on: macos-15
3332

3433
strategy:
3534
fail-fast: true
3635
matrix:
3736
include:
3837
- scheme: "PactSwiftMockServer-iOS"
39-
destination: "platform=iOS Simulator,name=iPhone 15 Pro"
38+
destination: "platform=iOS Simulator,name=iPhone 16 Pro"
4039
submit_code_coverage: true
4140
- scheme: "PactSwiftMockServer-macOS"
42-
destination: "arch=arm64"
43-
submit_code_coverage: true
41+
destination: "" # Intentionally left empty
42+
submit_code_coverage: false
4443

4544
env:
4645
SCHEME: ${{ matrix.scheme }}
4746
DESTINATION: ${{ matrix.destination }}
4847

4948
concurrency:
50-
group: test-macos14-latest-${{ github.ref }}-${{ matrix.scheme }}
49+
group: test-macos15-${{ github.ref }}-${{ matrix.scheme }}
5150
cancel-in-progress: true
5251

5352
steps:
@@ -66,10 +65,13 @@ jobs:
6665
restore-keys: |
6766
${{ inputs.cache-restore-key }}-${{ runner.os }}
6867
69-
- name: "⚗️ Run tests"
68+
- name: "🛠 Prepare Tools"
7069
run: |
7170
sh Support/Scripts/Config/prepare_build_tools
72-
sh Support/Scrips/test
71+
72+
- name: "⚗️ Run tests"
73+
run: |
74+
sh Support/Scripts/test
7375
7476
- name: "⬆️ Upload coverage reports"
7577
if: ${{ matrix.submit_code_coverage && inputs.submit-coverage-report }}

Support/Scripts/Config/prepare_build_tools

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
set -euo pipefail
2222

2323
# "import"
24-
sourc "${BASH_SOURCE[0]%/*}/../utils.sh"
24+
source "${BASH_SOURCE[0]%/*}/../utils.sh"
2525

2626
brew update
2727

@@ -32,7 +32,7 @@ function brew_install {
3232
echo -e "🍺 Installing $YELLOW$tool$NOCOLOR via Homebrew..."
3333
executeCommand "brew install $tool"
3434
else
35-
echo -e "👍 $LIGHT_BLUE$tool$NOCOLOR is already installed."
35+
echo -e "🍻 $LIGHT_BLUE$tool$NOCOLOR is already installed."
3636
fi
3737
}
3838

Support/Scripts/release

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ function github_create_release_for {
182182
function github_create_pull_request_for_new_version {
183183
local version_tag="$1"
184184
local version_branch="$2"
185-
local pr_message="Release: $version_tag ($REPO_OWNER/$RELEASE_REPO_NAME/releases/tag/$version_tag)"
185+
local pr_message="Release: [$version_tag](https://github.com/$REPO_OWNER/$RELEASE_REPO_NAME/releases/tag/$version_tag)"
186186
local dry_run=; dry_run=$([ "$DRY_RUN" = true ] && echo "--dry-run" || echo "")
187187
local open_pr_cmd="gh pr create --draft --base main --head \"$version_branch\" $dry_run --title \"$version_tag\" --body \"$pr_message\" --repo $REPO_OWNER/$XCPRODUCT_NAME"
188188

0 commit comments

Comments
 (0)