Skip to content

Commit ac466b5

Browse files
committed
ci: improve ci release process
1 parent 4743abe commit ac466b5

File tree

1 file changed

+32
-17
lines changed

1 file changed

+32
-17
lines changed

.github/workflows/create-release-pr.yml

Lines changed: 32 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ on:
3535

3636
jobs:
3737
update-version:
38-
runs-on: ubuntu-latest
38+
runs-on: macos-latest
3939

4040
env:
4141
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -146,6 +146,13 @@ jobs:
146146
echo "prev_ios=$IOS_VERSION" >> $GITHUB_OUTPUT
147147
148148
# Cordova specific steps
149+
- name: Setup Capacitor
150+
run: |
151+
bun link
152+
cd example/IonicCapOneSignal
153+
bun install --frozen-lockfile
154+
bun run build
155+
149156
- name: Update Android SDK version
150157
if: inputs.android_version != ''
151158
run: |
@@ -157,13 +164,24 @@ jobs:
157164
158165
if echo "$RELEASE" | grep -q "\"id\""; then
159166
# Update plugin.xml with new version
160-
sed -i "s|<framework src=\"com\.onesignal:OneSignal:[^\"]*\" />|<framework src=\"com.onesignal:OneSignal:${VERSION}\" />|" plugin.xml
167+
# mac os sed syntax
168+
sed -i '' 's|<framework src="com\.onesignal:OneSignal:[^"]*" />|<framework src="com.onesignal:OneSignal:'"$VERSION"'" />|' plugin.xml
161169
echo "✓ Updated plugin.xml with Android SDK ${VERSION}"
170+
171+
cd example/IonicCapOneSignal
172+
bunx cap sync android
173+
git add .
162174
else
163175
echo "✗ Android SDK version ${VERSION} not found"
164176
exit 1
165177
fi
166178
179+
- name: setup-cocoapods
180+
if: inputs.ios_version != ''
181+
uses: maxim-lobanov/setup-cocoapods@v1
182+
with:
183+
version: latest
184+
167185
- name: Update iOS SDK version
168186
if: inputs.ios_version != ''
169187
run: |
@@ -175,25 +193,22 @@ jobs:
175193
176194
if echo "$RELEASE" | grep -q "\"id\""; then
177195
# Update plugin.xml with new version
178-
sed -i "s|<pod name=\"OneSignalXCFramework\" spec=\"[^\"]*\" />|<pod name=\"OneSignalXCFramework\" spec=\"${VERSION}\" />|" plugin.xml
196+
# mac os sed syntax
197+
sed -i '' "s|<pod name=\"OneSignalXCFramework\" spec=\"[^\"]*\" />|<pod name=\"OneSignalXCFramework\" spec=\"${VERSION}\" />|" plugin.xml
179198
echo "✓ Updated plugin.xml with iOS SDK ${VERSION}"
180199
181-
# Need to clear the Podfile.lock to force a re-install of the framework
182-
rm -f example/IonicCapOneSignal/ios/App/Podfile.lock
200+
# Need to regenerate the Podfile.lock
201+
cd example/IonicCapOneSignal/ios/App
202+
rm -f Podfile.lock
203+
cd ../..
204+
bunx cap sync ios
205+
git add .
206+
183207
else
184208
echo "✗ iOS SDK version ${VERSION} not found"
185209
exit 1
186210
fi
187211
188-
- name: Capacitor update
189-
run: |
190-
bun link
191-
cd example/IonicCapOneSignal
192-
bun install --frozen-lockfile
193-
bun run build
194-
bunx cap sync || exit 1
195-
git add .
196-
197212
- name: Update sdk version
198213
run: |
199214
NEW_VERSION="${{ inputs.cordova_version }}"
@@ -209,13 +224,13 @@ jobs:
209224
npm pkg set version="$NEW_VERSION"
210225
211226
# Update plugin.xml cordova plugin version (target <plugin> element specifically)
212-
sed -i 's|<plugin \(xmlns="[^"]*" xmlns:android="[^"]*" id="[^"]*"\) version="[^"]*"|<plugin \1 version="'"$NEW_VERSION"'"|' plugin.xml
227+
sed -i '' 's|<plugin \(xmlns="[^"]*" xmlns:android="[^"]*" id="[^"]*"\) version="[^"]*"|<plugin \1 version="'"$NEW_VERSION"'"|' plugin.xml
213228
214229
# Update OneSignalPush.java wrapper version
215-
sed -i "s/OneSignalWrapper\.setSdkVersion(\"[^\"]*\")/OneSignalWrapper.setSdkVersion(\"$WRAPPER_VERSION\")/g" src/android/com/onesignal/cordova/OneSignalPush.java
230+
sed -i '' "s/OneSignalWrapper\.setSdkVersion(\"[^\"]*\")/OneSignalWrapper.setSdkVersion(\"$WRAPPER_VERSION\")/g" src/android/com/onesignal/cordova/OneSignalPush.java
216231
217232
# Update OneSignalPush.m wrapper version
218-
sed -i "s/OneSignalWrapper\.sdkVersion = @\"[^\"]*\"/OneSignalWrapper.sdkVersion = @\"$WRAPPER_VERSION\"/g" src/ios/OneSignalPush.m
233+
sed -i '' "s/OneSignalWrapper\.sdkVersion = @\"[^\"]*\"/OneSignalWrapper.sdkVersion = @\"$WRAPPER_VERSION\"/g" src/ios/OneSignalPush.m
219234
220235
git add package.json plugin.xml src/android/com/onesignal/cordova/OneSignalPush.java src/ios/OneSignalPush.m
221236

0 commit comments

Comments
 (0)