Skip to content

Commit e3bb29b

Browse files
Create the release workflow (#433)
1 parent 5205421 commit e3bb29b

File tree

2 files changed

+49
-3
lines changed

2 files changed

+49
-3
lines changed

.github/workflows/publish-release.yml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: "Publish new release"
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
types:
8+
- closed
9+
10+
workflow_dispatch:
11+
inputs:
12+
version:
13+
description: 'Provide release version'
14+
type: string
15+
required: true
16+
17+
jobs:
18+
release:
19+
name: Publish new release
20+
runs-on: macos-13
21+
if: github.event_name == 'workflow_dispatch' || startsWith(github.event.pull_request.head.ref, 'release/')
22+
steps:
23+
- name: Install Bot SSH Key
24+
uses: webfactory/[email protected]
25+
with:
26+
ssh-private-key: ${{ secrets.BOT_SSH_PRIVATE_KEY }}
27+
- uses: actions/[email protected]
28+
- name: Extract version from branch name (for release branches)
29+
run: |
30+
if [[ "${{ github.event.inputs.version }}" != "" ]]; then
31+
echo "RELEASE_VERSION=${{ github.event.inputs.version }}" >> $GITHUB_ENV
32+
else
33+
BRANCH_NAME="${{ github.event.pull_request.head.ref }}"
34+
VERSION=${BRANCH_NAME#release/}
35+
echo "RELEASE_VERSION=$VERSION" >> $GITHUB_ENV
36+
fi
37+
- uses: ./.github/actions/ruby-cache
38+
- name: "Fastlane - Publish Release"
39+
env:
40+
GITHUB_TOKEN: ${{ secrets.CI_BOT_GITHUB_TOKEN }}
41+
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
42+
MATCH_PASSWORD: ${{ secrets.MATCH_PASSWORD }}
43+
APPSTORE_API_KEY: ${{ secrets.APPSTORE_API_KEY }}
44+
run: bundle exec fastlane publish_release version:${{ env.RELEASE_VERSION }} --verbose

fastlane/Fastfile

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,19 +69,21 @@ lane :release do |options|
6969
end
7070

7171
pod_lint
72-
version_number = release_ios_sdk(
72+
release_ios_sdk(
7373
version: options[:version],
7474
bump_type: options[:type],
7575
sdk_names: sdk_names,
7676
podspec_names: ['StreamChatSwiftUI', 'StreamChatSwiftUI-XCFramework'],
7777
github_repo: github_repo,
78-
extra_changes: extra_changes
78+
extra_changes: extra_changes,
79+
create_pull_request: true
7980
)
80-
publish_release(version: version_number)
8181
end
8282

8383
desc "Publish a new release to GitHub and CocoaPods"
8484
lane :publish_release do |options|
85+
xcversion(version: '15.0.1')
86+
8587
clean_products
8688
build_xcframeworks
8789
compress_frameworks

0 commit comments

Comments
 (0)