-
Notifications
You must be signed in to change notification settings - Fork 40
87 lines (69 loc) · 2.92 KB
/
Copy pathrelease-please.yml
File metadata and controls
87 lines (69 loc) · 2.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
name: Run Release Please
on:
push:
branches:
- main
jobs:
release-package:
runs-on: macos-15
permissions:
id-token: write # Needed if using OIDC to get release secrets.
contents: write # Contents and pull-requests are for release-please to make releases.
pull-requests: write
steps:
- uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38 # v4.4.0
id: release
with:
target-branch: ${{ github.ref_name }}
- uses: actions/checkout@v4
with:
fetch-depth: 0 # Full history is required for proper changelog generation
#
# This step runs and updates an existing PR
#
- uses: ./.github/actions/update-versions
if: ${{ steps.release.outputs.prs_created == 'true' }}
with:
branch: ${{ fromJSON(steps.release.outputs.pr).headBranchName }}
#
# These remaining steps are ONLY run if a release was actually created
#
- uses: launchdarkly/gh-actions/actions/release-secrets@release-secrets-v1.2.0
if: ${{ steps.release.outputs.releases_created == 'true' }}
name: 'Get Cocoapods token'
with:
aws_assume_role: ${{ vars.AWS_ROLE_ARN }}
ssm_parameter_pairs: '/production/common/releasing/cocoapods/token = COCOAPODS_TRUNK_TOKEN'
- uses: maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # 60606e260d2fc5762a71e64e74b2174e8ea3c8bd
if: ${{ steps.release.outputs.releases_created == 'true' }}
with:
xcode-version: 16.4
- uses: ./.github/actions/lint
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/build-ios
if: ${{ steps.release.outputs.releases_created == 'true' }}
with:
ios-sim: 'platform=iOS Simulator,name=iPhone 16'
- uses: ./.github/actions/build-macos
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/build-tvos
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/build-watchos
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/test-swiftpm
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/contract-tests
if: ${{ steps.release.outputs.releases_created == 'true' }}
with:
token: ${{ secrets.GITHUB_TOKEN }}
- uses: ./.github/actions/build-docs
if: ${{ steps.release.outputs.releases_created == 'true' }}
- uses: ./.github/actions/publish
if: ${{ steps.release.outputs.releases_created == 'true' }}
with:
token: ${{secrets.GITHUB_TOKEN}}
dry_run: false
- uses: ./.github/actions/publish-docs
if: ${{ steps.release.outputs.releases_created == 'true' }}
with:
token: ${{secrets.GITHUB_TOKEN}}