11name : Android regression tests
2- run-name : ' ${{ inputs.RISK }} regressions on: ${{ inputs.BRANCH_TO_CHECKOUT }} (${{ inputs.APPIUM_REPO }}) '
2+ run-name : ' Android regression with risk: " ${{ inputs.RISK }}" '
33
44on :
55 workflow_dispatch :
66 inputs :
77 APK_URL :
8- description : ' url to test'
8+ description : ' apk (tar.xz) url to test'
99 required : true
1010 type : string
1111 default : https://oxen.rocks/session-foundation/session-android/release/1.20.3/session-android-20241101T052421Z-be16d3bf9-universal.tar.xz
2020 - ' low-risk'
2121 - ' '
2222
23- APPIUM_REPO :
24- description : ' appium repo to checkout'
25- required : true
26- type : choice
27- options :
28- - session-foundation/session-appium
29- - burtonemily/session-appium
30- - Miki-Session/session-appium
31- - bilb/session-appium
32- default : session-foundation/session-appium
33-
34- BRANCH_TO_CHECKOUT :
35- description : ' branch to checkout'
36- required : true
37- type : string
38- default : test-ci-regression
39-
40- # SHARD_NUMBER:
41- # description: 'shard number'
42- # required: true
43- # type: choice
44- # options:
45- # - '1'
46- # - '2'
47- # - '3'
48- # - '4'
49- # default: '1'
50-
51- # SHARD_COUNT:
52- # description: 'shard count'
53- # required: true
54- # type: choice
55- # options:
56- # - '1'
57- # - '2'
58- # - '3'
59- # - '4'
60- # default: '1'
61-
6223 PLAYWRIGHT_RETRIES_COUNT :
6324 description : ' retries of failing tests to do at most'
6425 required : true
9354 - ' 1'
9455 default : ' 1'
9556
96- # concurrency:
97- # group: ${{ github.workflow }}
98- # cancel-in-progress: true
99-
10057jobs :
10158 android-regression :
10259 runs-on : [self-hosted, linux, X64, qa-android]
10360 env :
104- IOS_APP_PATH_PREFIX : ' ../extracted/Session.app '
105- ANDROID_APK : ' .. /extracted/session-android.apk'
61+ IOS_APP_PATH_PREFIX : ' <just_not_empty> '
62+ ANDROID_APK : ' ./extracted/session-android.apk'
10663 APPIUM_ADB_FULL_PATH : ' /opt/android/platform-tools/adb'
10764 ANDROID_SDK_ROOT : ' /opt/android'
10865 PLAYWRIGHT_RETRIES_COUNT : ${{ github.event.inputs.PLAYWRIGHT_RETRIES_COUNT }}
10966 PRINT_FAILED_TEST_LOGS : ${{ github.event.inputs.PRINT_FAILED_TEST_LOGS }}
11067 PRINT_ONGOING_TEST_LOGS : ${{ github.event.inputs.PRINT_ONGOING_TEST_LOGS }}
111- IOS_FIRST_SIMULATOR : ' 49651A15-3E14-4BAF-8B8E-0C630C35B8DD'
112- IOS_SECOND_SIMULATOR : ' 7CA21E47-56AC-4B76-82A4-1D5199515F38'
113- IOS_THIRD_SIMULATOR : ' FE1DEDC7-D530-41E7-9B38-86ED2DDB97CD'
114- IOS_FOURTH_SIMULATOR : ' 561C621C-2CEF-4FCC-87B7-E6221718D15C'
115- IOS_FIFTH_SIMULATOR : ' 5AA87E03-5831-4209-87A0-21E5ECDC490F'
116- IOS_SIXTH_SIMULATOR : ' 6FB10AF3-3970-46BA-B414-1206AA4E726D'
117- IOS_SEVENTH_SIMULATOR : ' 0BDA36C0-83F4-46DF-ADC9-FF30E969D4BD'
118- IOS_EIGHTH_SIMULATOR : ' 1C61A0B6-3085-46B6-9B2E-6E9A1B594944'
119- IOS_NINTH_SIMULATOR : ' 7C69D129-BD40-4BC0-9A0D-6A7E990F23E8'
120- IOS_TENTH_SIMULATOR : ' 275E0C5B-2458-4490-831D-4CE86C8EC704'
121- IOS_ELEVENTH_SIMULATOR : ' EA5C5BCB-1E3E-4FFC-88BB-8D1DE354BC3B'
122- IOS_TWELFTH_SIMULATOR : ' 41514F87-DC49-4C81-B60C-03D1F8653A42'
123-
124- # echo "SHARD_NUMBER ${{ github.event.inputs.SHARD_NUMBER }}"
125- # echo "SHARD_COUNT ${{ github.event.inputs.SHARD_COUNT }}"
68+ PLAYWRIGHT_WORKERS_COUNT : ${{ github.event.inputs.PLAYWRIGHT_WORKERS_COUNT }}
69+ PLAYWRIGHT_REPEAT_COUNT : 0
70+ IOS_1_SIMULATOR : ' <just_not_empty>'
71+ IOS_2_SIMULATOR : ' <just_not_empty>'
72+ IOS_2_SIMULATOR : ' <just_not_empty>'
73+ IOS_4_SIMULATOR : ' <just_not_empty>'
74+ IOS_5_SIMULATOR : ' <just_not_empty>'
75+ IOS_6_SIMULATOR : ' <just_not_empty>'
76+ IOS_7_SIMULATOR : ' <just_not_empty>'
77+ IOS_8_SIMULATOR : ' <just_not_empty>'
78+ IOS_9_SIMULATOR : ' <just_not_empty>'
79+ IOS_10_SIMULATOR : ' <just_not_empty>'
80+ IOS_11_SIMULATOR : ' <just_not_empty>'
81+ IOS_12_SIMULATOR : ' <just_not_empty>'
12682
12783 steps :
12884 - uses : actions/checkout@v4
85+ with :
86+ lfs : true
87+
12988 - name : Runner Details
13089 run : |
131- echo "BRANCH_TO_CHECKOUT ${{ github.event.inputs.BRANCH_TO_CHECKOUT }}"
132- echo "APPIUM_REPO ${{ github.event.inputs.APPIUM_REPO }}"
13390 echo "APK_URL ${{ github.event.inputs.APK_URL }}"
13491 echo "RISK ${{ github.event.inputs.RISK }}"
13592
@@ -152,17 +109,9 @@ jobs:
152109 ls extracted
153110 pwd
154111
155- - uses : actions/checkout@v4
156- with :
157- repository : ${{ github.event.inputs.APPIUM_REPO }}
158- ref : ${{ github.event.inputs.BRANCH_TO_CHECKOUT }}
159- path : ' forked-session-appium'
160- lfs : true
161-
162112 - uses : actions/setup-node@v4
163113 with :
164- # node-version-file: 'forked-session-appium/.nvmrc'
165- node-version : 18.15.0
114+ node-version-file : ' .nvmrc'
166115
167116 - name : Install yarn
168117 run : |
@@ -172,20 +121,16 @@ jobs:
172121
173122 - name : Install test dependencies
174123 run : |
175- cd forked-session-appium
176124 ls
177125 git status
178- touch yarn.lock
179126 yarn install --immutable
180127
181128 - name : Start Appium server
182129 run : |
183- cd forked-session-appium
184- yarn "./node_modules/.bin/appium server --use-drivers=uiautomator2,xcuitest --port 8110 --allow-cors"
130+ yarn start-appium-server
185131
186- - name : Build the Android tests
132+ - name : Build the tests
187133 run : |
188- cd forked-session-appium
189134 yarn tsc
190135
191136 - name : Restart adb server
@@ -204,15 +149,13 @@ jobs:
204149
205150 - name : List all tests
206151 run : |
207- cd forked-session-appium
208152 pwd
209- npx playwright test --list --grep " @${{ github.event.inputs.RISK }}"
153+ yarn test "android @${{ github.event.inputs.RISK }}" --list
210154
211- - name : Run the tests # ${{ github.event.inputs.SHARD_NUMBER }}/${{ github.event.inputs.SHARD_COUNT }}
155+ - name : Run the tests
212156 run : |
213- cd forked-session-appium
214157 pwd
215- yarn test ' android " @${{ github.event.inputs.RISK }}"'
158+ yarn test " android @${{ github.event.inputs.RISK }}"
216159
217160 - name : Kill all running emulators
218161 if : always()
0 commit comments