44 push :
55 branches :
66 - main
7- - v5
87 pull_request :
98 types : [opened, synchronize, reopened, labeled]
109
8382 - uses : ruby/setup-ruby@v1
8483 if : ${{ matrix.platform == 'ios' || matrix.platform == 'macos' }}
8584 with :
86- working-directory : ${{ matrix.platform == 'ios' && env.REACT_NATIVE_SAMPLE_PATH || ' samples/react-native-macos' }}
85+ working-directory : ${{ matrix.platform == 'ios' && env.REACT_NATIVE_SAMPLE_PATH || 'samples/react-native-macos' }}
8786 ruby-version : ' 3.3.0' # based on what is used in the sample
8887 bundler-cache : true # runs 'bundle install' and caches installed gems automatically
8988 cache-version : 1 # cache the installed gems
@@ -113,62 +112,39 @@ jobs:
113112 if : ${{ matrix.platform == 'ios' || matrix.platform == 'macos' }}
114113 working-directory : samples
115114 run : |
116- [[ "${{ matrix.platform }}" == "ios" ]] && cd react-native/ios
117- [[ "${{ matrix.platform }}" == "macos" ]] && cd react-native-macos/macos
115+ [[ "${{ matrix.platform }}" == "ios" ]] && cd react-native
116+ [[ "${{ matrix.platform }}" == "macos" ]] && cd react-native-macos
118117
119- [[ "${{ matrix.build-type }}" == "production" ]] && ENABLE_PROD=1 || ENABLE_PROD=0
120- [[ "${{ matrix.rn-architecture }}" == "new" ]] && ENABLE_NEW_ARCH=1 || ENABLE_NEW_ARCH=0
118+ [[ "${{ matrix.build-type }}" == "production" ]] && export ENABLE_PROD=1 || export ENABLE_PROD=0
119+ [[ "${{ matrix.rn-architecture }}" == "new" ]] && export ENABLE_NEW_ARCH=1 || export ENABLE_NEW_ARCH=0
121120 [[ "${{ matrix.ios-use-frameworks }}" == "dynamic-frameworks" ]] && export USE_FRAMEWORKS=dynamic
122- echo "ENABLE_PROD=$ENABLE_PROD"
123- echo "ENABLE_NEW_ARCH=$ENABLE_NEW_ARCH"
124- PRODUCTION=$ENABLE_PROD RCT_NEW_ARCH_ENABLED=$ENABLE_NEW_ARCH bundle exec pod install
125- cat Podfile.lock | grep $RN_SENTRY_POD_NAME
121+
122+ ./scripts/pod-install.sh
126123
127124 - name : Build Android App
128125 if : ${{ matrix.platform == 'android' }}
129- working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}/android
126+ working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}
130127 run : |
131- if [[ ${{ matrix.rn-architecture }} == 'new' ]]; then
132- perl -i -pe's/newArchEnabled=false/newArchEnabled=true/g' gradle.properties
133- echo 'New Architecture enabled'
134- elif [[ ${{ matrix.rn-architecture }} == 'legacy' ]]; then
135- perl -i -pe's/newArchEnabled=true/newArchEnabled=false/g' gradle.properties
136- echo 'Legacy Architecture enabled'
137- else
138- echo 'No changes for architecture: ${{ matrix.rn-architecture }}'
139- fi
140- [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug'
141- echo "Building $CONFIG"
142- [[ "${{ matrix.build-type }}" == "production" ]] && TEST_TYPE='release' || TEST_TYPE='debug'
143- echo "Building $TEST_TYPE"
128+ export RN_ARCHITECTURE="${{ matrix.rn-architecture }}"
129+ [[ "${{ matrix.build-type }}" == "production" ]] && export CONFIG='release' || export CONFIG='debug'
144130
145- ./gradlew ":app:assemble$CONFIG" -PreactNativeArchitectures=x86
131+ ./scripts/set-dsn-aos.mjs
132+ ./scripts/build-android.sh -PreactNativeArchitectures=x86
146133
147134 - name : Build iOS App
148135 if : ${{ matrix.platform == 'ios' }}
149- working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}/ios
136+ working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}
150137 run : |
151- [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug'
152- echo "Building $CONFIG"
153- mkdir -p "DerivedData"
154- derivedData="$(cd "DerivedData" ; pwd -P)"
155- set -o pipefail && xcodebuild \
156- -workspace sentryreactnativesample.xcworkspace \
157- -configuration "$CONFIG" \
158- -scheme sentryreactnativesample \
159- -sdk 'iphonesimulator' \
160- -destination 'generic/platform=iOS Simulator' \
161- ONLY_ACTIVE_ARCH=yes \
162- -derivedDataPath "$derivedData" \
163- build \
164- | tee xcodebuild.log \
165- | xcbeautify --quieter --is-ci --disable-colored-output
138+ [[ "${{ matrix.build-type }}" == "production" ]] && export CONFIG='Release' || export CONFIG='Debug'
139+
140+ ./scripts/set-dsn-ios.mjs
141+ ./scripts/build-ios.sh
166142
167143 - name : Build macOS App
168144 if : ${{ matrix.platform == 'macos' }}
169145 working-directory : samples/react-native-macos/macos
170146 run : |
171- [[ "${{ matrix.build-type }}" == "production" ]] && CONFIG='Release' || CONFIG='Debug'
147+ [[ "${{ matrix.build-type }}" == "production" ]] && export CONFIG='Release' || export CONFIG='Debug'
172148 echo "Building $CONFIG"
173149 mkdir -p "DerivedData"
174150 derivedData="$(cd "DerivedData" ; pwd -P)"
@@ -185,19 +161,19 @@ jobs:
185161
186162 - name : Archive iOS App
187163 if : ${{ matrix.platform == 'ios' && matrix.rn-architecture == 'new' && matrix.build-type == 'production' && matrix.ios-use-frameworks == 'no-frameworks' }}
164+ working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}
188165 run : |
189- cd ${{ env.REACT_NATIVE_SAMPLE_PATH }}/ios/DerivedData/Build/Products/Release-iphonesimulator
190166 zip -r \
191167 ${{ github.workspace }}/${{ env.IOS_APP_ARCHIVE_PATH }} \
192168 sentryreactnativesample.app
193169
194170 - name : Archive Android App
195171 if : ${{ matrix.platform == 'android' && matrix.rn-architecture == 'new' && matrix.build-type == 'production' }}
196172 run : |
197- mv ${{ env.REACT_NATIVE_SAMPLE_PATH }}/android/app/build/outputs/apk/release/app-release.apk app.apk
198173 zip -j \
199174 ${{ env.ANDROID_APP_ARCHIVE_PATH }} \
200- app.apk
175+ ${{ env.REACT_NATIVE_SAMPLE_PATH }}/app.apk \
176+ ${{ env.REACT_NATIVE_SAMPLE_PATH }}/app-androidTest.apk
201177
202178 - name : Upload iOS APP
203179 if : ${{ matrix.platform == 'ios' && matrix.rn-architecture == 'new' && matrix.build-type == 'production' && matrix.ios-use-frameworks == 'no-frameworks' }}
@@ -273,7 +249,9 @@ jobs:
273249 - name : Unzip Android APK
274250 if : ${{ matrix.platform == 'android' }}
275251 working-directory : ${{ env.REACT_NATIVE_SAMPLE_PATH }}
276- run : unzip ${{ env.ANDROID_APP_ARCHIVE_PATH }}
252+ run : |
253+ unzip ${{ env.ANDROID_APP_ARCHIVE_PATH }}
254+ rm app-androidTest.apk
277255
278256 - name : Enable Corepack
279257 run : npm i -g corepack
0 commit comments