Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,8 @@ _Describe the PR shortly_
- [ ] `sdkVersion` property in logs is correct
- [ ] `sdkPlatform` property in logs is correct

# dSYMs:
- [ ] attached

# Resolved issues
_list of issues resolved by this PR_
6 changes: 3 additions & 3 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ runs:
using: composite
steps:
- name: Setup Node.js
uses: actions/setup-node@v4
uses: actions/setup-node@v6
with:
node-version: '20'
node-version: '24'
node-version-file: .nvmrc

- name: Upgrade npm for trusted publishing
run: npm install -g npm@latest
shell: bash
Expand Down
67 changes: 22 additions & 45 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Setup
uses: ./.github/actions/setup
Expand All @@ -31,25 +31,12 @@ jobs:
- name: Format check
run: yarn prettier --check

# no tests yet 😥
# test:
# runs-on: ubuntu-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v4

# - name: Setup
# uses: ./.github/actions/setup

# - name: Run unit tests
# run: yarn test --maxWorkers=2 --coverage

build-library:
runs-on: ubuntu-latest
needs: [lint]
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Setup
uses: ./.github/actions/setup
Expand All @@ -62,23 +49,23 @@ jobs:
needs: build-library
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Setup
uses: ./.github/actions/setup

- name: Install JDK
uses: actions/setup-java@v4
uses: actions/setup-java@v5
with:
distribution: 'zulu'
java-version: '17'
distribution: "zulu"
java-version: "17"

- name: Finalize Android SDK
run: |
/bin/bash -c "yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses > /dev/null"

- name: Cache Gradle
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: |
~/.gradle/wrapper
Expand All @@ -94,31 +81,21 @@ jobs:
run: |
yarn build:android

# !! Currently build iOS is not working due to issues with XCode version
# build-ios:
# runs-on: macos-14
# needs: build-library

# steps:
# - name: Checkout
# uses: actions/checkout@v4

# - name: Setup Xcode version
# uses: maxim-lobanov/setup-xcode@v1.6.0
# with:
# xcode-version: '15.4.0'


build-ios:
runs-on: macos-latest
needs: build-library
steps:
- name: Checkout
uses: actions/checkout@v6

# - name: Setup
# uses: ./.github/actions/setup
- name: Setup
uses: ./.github/actions/setup

# - name: Install cocoapods
# run: |
# cd example/ios
# pod install
- name: Install pods
working-directory: ./example/ios
run: pod install

# - name: Build example for iOS
# working-directory: ./example
# run: |
# yarn build:ios
- name: Build example for iOS
working-directory: ./example
run: |
yarn build:ios
32 changes: 25 additions & 7 deletions .github/workflows/publish-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Setup
uses: ./.github/actions/setup
Expand All @@ -36,19 +36,37 @@ jobs:
- name: Get latest version
run: echo "PACKAGE_VERSION=$(node scripts/extract_version.js)" >> $GITHUB_ENV

- name: Download dSYMs
env:
PR_BODY: ${{ github.event.pull_request.body }}
run: |
url=$(echo "$PR_BODY" | grep -oE 'https://[^ )]*dSYMs\.zip' | head -n 1)
if [ -n "$url" ]; then
echo "Found dSYMs URL: $url"
curl -L -o dSYMs.zip "$url"
else
echo "No dSYMs.zip URL found in PR body."
fi

- name: GitHub Release
uses: softprops/action-gh-release@v2
with:
name: freeRASP ${{ env.PACKAGE_VERSION }}
tag_name: v${{ env.PACKAGE_VERSION }}
body_path: ${{ github.workspace }}-CURRENT_CHANGELOG.md
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
FILES=""
if [ -f dSYMs.zip ]; then
FILES="dSYMs.zip"
fi
gh release create v${{ env.PACKAGE_VERSION }} \
--title "freeRASP ${{ env.PACKAGE_VERSION }}" \
--notes-file ${{ github.workspace }}-CURRENT_CHANGELOG.md \
$FILES

publish_npmjs:
name: Publish release to npm.js
needs: release_gh
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6

- name: Setup
uses: ./.github/actions/setup
Expand Down
Loading