Skip to content

Commit 560c4d5

Browse files
committed
chore: improve release automation
1 parent 6165124 commit 560c4d5

18 files changed

+377
-276
lines changed
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,5 @@
2222
<!--- Go over all the following items and put an `x` in all the boxes that apply -->
2323
- [ ] Pull request title follows the format `RNMT-XXXX <title>`
2424
- [ ] Code follows the code style of this project
25-
- [ ] CHANGELOG.md file is correctly updated
2625
- [ ] Changes require an update to the documentation
2726
- [ ] Documentation has been updated accordingly

.github/workflows/continuous_integration.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
jobs:
1111
sonarcloud:
1212
name: Unit-Tests
13-
runs-on: macos-15
13+
runs-on: macos-latest
1414
steps:
1515
- name: Checkout
1616
uses: actions/checkout@v4
@@ -25,7 +25,7 @@ jobs:
2525
run: brew link --overwrite swiftlint || brew install swiftlint
2626

2727
- name: Set up XCode
28-
run: sudo xcode-select --switch /Applications/Xcode_26.0.app
28+
run: sudo xcode-select --switch /Applications/Xcode_26.2.app/Contents/Developer
2929

3030
- name: Bundle Install
3131
run: bundle install

.github/workflows/prepare_release.yml

Lines changed: 0 additions & 81 deletions
This file was deleted.

.github/workflows/release.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Release
2+
3+
on:
4+
workflow_dispatch: {}
5+
6+
env:
7+
XCODE_VERSION: 26.2
8+
NODE_VERSION: '24'
9+
10+
permissions:
11+
contents: write
12+
packages: write
13+
14+
jobs:
15+
release:
16+
runs-on: macos-15
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v5
20+
with:
21+
fetch-depth: 0
22+
token: ${{ secrets.CAP_GH_RELEASE_TOKEN }}
23+
24+
- name: Setup Node.js
25+
uses: actions/setup-node@v6
26+
with:
27+
node-version: ${{ env.NODE_VERSION }}
28+
29+
- name: Install dependencies
30+
run: |
31+
npm i
32+
33+
- name: Install CocoaPods
34+
run: |
35+
gem install cocoapods --no-document
36+
37+
- name: Set Xcode version
38+
run: |
39+
sudo xcode-select -s /Applications/Xcode_${{ env.XCODE_VERSION }}.app/Contents/Developer
40+
41+
- name: Run semantic-release
42+
env:
43+
GITHUB_TOKEN: ${{ secrets.CAP_GH_RELEASE_TOKEN }}
44+
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
45+
run: |
46+
npx semantic-release
47+
48+

.github/workflows/release_and_publish.yml

Lines changed: 0 additions & 67 deletions
This file was deleted.

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,3 +91,7 @@ iOSInjectionProject/
9191

9292
# macOS
9393
.DS_Store
94+
95+
# Node.js / npm
96+
node_modules/
97+
package-lock.json

.releaserc.json

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
{
2+
"branches": ["main"],
3+
"tagFormat": "${version}",
4+
"plugins": [
5+
"@semantic-release/commit-analyzer",
6+
"@semantic-release/release-notes-generator",
7+
[
8+
"@semantic-release/exec",
9+
{
10+
"prepareCmd": "bash ./scripts/update_xcodeproj_version.sh ${nextRelease.version} \"OSInAppBrowserLib.xcodeproj/project.pbxproj\" && bash ./scripts/update_readme_version.sh ${nextRelease.version} \"OSInAppBrowserLib\" \"README.md\" && bash ./scripts/build_framework.sh \"OSInAppBrowserLib\" \"LICENSE\""
11+
}
12+
],
13+
"@semantic-release/changelog",
14+
[
15+
"@semantic-release/npm",
16+
{
17+
"npmPublish": false
18+
}
19+
],
20+
[
21+
"@semantic-release/git",
22+
{
23+
"assets": [
24+
"CHANGELOG.md",
25+
"OSInAppBrowserLib.xcodeproj/project.pbxproj",
26+
"OSInAppBrowserLib.podspec",
27+
"package.json",
28+
"README.md"
29+
],
30+
"message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
31+
}
32+
],
33+
[
34+
"@semantic-release/github",
35+
{
36+
"assets": [
37+
{
38+
"path": "OSInAppBrowserLib.zip",
39+
"label": "OSInAppBrowserLib XCFramework"
40+
}
41+
],
42+
"successComment": false,
43+
"failComment": false,
44+
"releasedLabels": false
45+
}
46+
],
47+
[
48+
"@semantic-release/exec",
49+
{
50+
"publishCmd": "bash ./scripts/publish_cocoapods.sh ${nextRelease.version} \"OSInAppBrowserLib\""
51+
}
52+
]
53+
]
54+
}

CHANGELOG.md

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
1-
# Changelog
2-
All notable changes to this project will be documented in this file.
3-
4-
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5-
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6-
71
## 2.3.1
82

93
### Fixes

OSInAppBrowserLib.podspec

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1+
require 'json'
2+
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
3+
14
Pod::Spec.new do |spec|
2-
spec.name = 'OSInAppBrowserLib'
3-
spec.version = '2.3.1'
5+
spec.name = package['name']
6+
spec.version = package['version']
47

5-
spec.summary = 'The `OSInAppBrowserLib` is a library that provides a web browser view to load a web page within a Mobile Application.'
8+
spec.summary = package['description']
69
spec.description = <<-DESC
710
The InAppBrowserLib library behaves as a standard web browser and is useful to load untrusted content without risking your application's security.
811
@@ -18,8 +21,8 @@ Pod::Spec.new do |spec|
1821
DESC
1922

2023
spec.homepage = 'https://github.com/OutSystems/OSInAppBrowserLib-iOS'
21-
spec.license = { :type => 'MIT', :file => 'LICENSE' }
22-
spec.author = { 'OutSystems Mobile Ecosystem' => 'rd.mobileecosystem.team@outsystems.com' }
24+
spec.license = { :type => package['license'], :file => 'LICENSE' }
25+
spec.author = { package['author'] => package['email'] }
2326

2427
spec.source = { :http => "https://github.com/OutSystems/OSInAppBrowserLib-iOS/releases/download/#{spec.version}/OSInAppBrowserLib.zip", :type => "zip" }
2528
spec.vendored_frameworks = "OSInAppBrowserLib.xcframework"

OSInAppBrowserLib.zip

-2.02 MB
Binary file not shown.

0 commit comments

Comments
 (0)