project-auto-wizard 0.15.0 → 0.15.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.ja.md +1 -1
- package/README.ko.md +1 -1
- package/README.md +2 -2
- package/README.zh-CN.md +1 -1
- package/package.json +1 -1
- package/payload/config/breaking-changes.json +31 -5
- package/payload/config/wizard-prompts.yml +0 -4
- package/payload/scripts/messages.py +156 -26
- package/payload/scripts/version_manager.py +69 -40
- package/payload/version.yml.template +2 -2
- package/payload/workflows/common/PROJECT-COMMON-AI-PR-SUMMARY.yaml +3 -0
- package/payload/workflows/common/PROJECT-COMMON-AUTO-CHANGELOG-CONTROL.yaml +15 -1
- package/payload/workflows/common/PROJECT-COMMON-README-VERSION-UPDATE.yaml +61 -12
- package/payload/workflows/common/PROJECT-COMMON-RELEASE-PUBLISH.yaml +46 -10
- package/payload/workflows/common/PROJECT-COMMON-VERSION-CONTROL.yaml +40 -11
- package/payload/workflows/flutter/PROJECT-FLUTTER-ANDROID-FIREBASE-CICD.yaml +24 -8
- package/payload/workflows/flutter/PROJECT-FLUTTER-ANDROID-PLAYSTORE-CICD.yaml +29 -10
- package/payload/workflows/flutter/PROJECT-FLUTTER-ANDROID-SELFHOSTED-CICD.yaml +57 -23
- package/payload/workflows/flutter/PROJECT-FLUTTER-ANDROID-TEST-APK.yaml +155 -72
- package/payload/workflows/flutter/PROJECT-FLUTTER-APP-BUILD-TRIGGER.yaml +49 -20
- package/payload/workflows/flutter/PROJECT-FLUTTER-CI.yaml +162 -62
- package/payload/workflows/flutter/PROJECT-FLUTTER-IOS-TEST-TESTFLIGHT.yaml +184 -87
- package/payload/workflows/flutter/PROJECT-FLUTTER-IOS-TESTFLIGHT.yaml +38 -15
- package/payload/workflows/go/PROJECT-GO-CI.yaml +14 -5
- package/payload/workflows/go/PROJECT-GO-PR-PREVIEW.yaml +375 -120
- package/payload/workflows/go/PROJECT-GO-SIMPLE-CICD.yaml +9 -4
- package/payload/workflows/python/PROJECT-PYTHON-CI.yaml +12 -4
- package/payload/workflows/python/PROJECT-PYTHON-PR-PREVIEW.yaml +375 -120
- package/payload/workflows/python/PROJECT-PYTHON-SIMPLE-CICD.yaml +9 -4
- package/payload/workflows/react/PROJECT-REACT-CI.yaml +38 -9
- package/payload/workflows/react/PROJECT-REACT-CICD.yaml +19 -5
- package/payload/workflows/spring/PROJECT-SPRING-CI.yml +71 -35
- package/payload/workflows/spring/server-deploy/PROJECT-SPRING-NONSTOP-NGINX-CICD.yaml +9 -6
- package/payload/workflows/spring/server-deploy/PROJECT-SPRING-NONSTOP-TRAEFIK-CICD.yaml +7 -4
- package/payload/workflows/spring/server-deploy/PROJECT-SPRING-PR-PREVIEW.yaml +425 -144
- package/payload/workflows/spring/server-deploy/PROJECT-SPRING-SIMPLE-CICD.yaml +7 -4
- package/src/cli/args.js +17 -7
- package/src/commands/doctor.js +11 -0
- package/src/commands/dry-run.js +9 -1
- package/src/commands/full.js +5 -2
- package/src/commands/interactive.js +4 -1
- package/src/commands/status.js +14 -1
- package/src/core/copy/simple.js +31 -0
- package/src/core/copy/workflows.js +2 -2
- package/src/core/deploy-style.js +1 -1
- package/src/core/detect.js +3 -2
- package/src/core/types.js +15 -8
- package/src/core/version-yml.js +52 -6
- package/src/i18n/catalog/en/cli.js +1 -0
- package/src/i18n/catalog/en/commands.js +8 -0
- package/src/i18n/catalog/en/core2.js +3 -0
- package/src/i18n/catalog/ko/cli.js +1 -0
- package/src/i18n/catalog/ko/commands.js +8 -0
- package/src/i18n/catalog/ko/core2.js +3 -0
- package/src/index.js +4 -1
- package/src/ui/env-plan.js +1 -1
- package/src/ui/prompts.js +7 -3
- package/payload/workflows/next/PROJECT-NEXT-CI.yaml +0 -241
- package/payload/workflows/next/PROJECT-NEXT-CICD.yaml +0 -330
|
@@ -82,6 +82,7 @@ jobs:
|
|
|
82
82
|
issue_number: ${{ steps.issue_info.outputs.issue_number }}
|
|
83
83
|
branch_name: ${{ steps.issue_info.outputs.branch_name }}
|
|
84
84
|
commit_hash: ${{ steps.build_info.outputs.commit_hash }}
|
|
85
|
+
commit_sha: ${{ steps.build_info.outputs.commit_sha }}
|
|
85
86
|
pr_number: ${{ steps.build_info.outputs.pr_number }}
|
|
86
87
|
build_number: ${{ steps.build_info.outputs.build_number }}
|
|
87
88
|
progress_comment_id: ${{ steps.progress_comment.outputs.comment_id }}
|
|
@@ -102,6 +103,7 @@ jobs:
|
|
|
102
103
|
- name: Load messages
|
|
103
104
|
working-directory: ${{ github.workspace }}
|
|
104
105
|
run: |
|
|
106
|
+
[ -f .paw-msg/.github/scripts/messages.py ] || { echo "::error::messages.py is missing; rerun \`npx project-auto-wizard --mode full --force\`"; exit 1; }
|
|
105
107
|
cp .paw-msg/.github/scripts/messages.py "$RUNNER_TEMP/paw_messages.py"
|
|
106
108
|
LANG_CODE=$(cd .paw-msg && python3 "$RUNNER_TEMP/paw_messages.py" lang)
|
|
107
109
|
rm -rf .paw-msg
|
|
@@ -113,14 +115,18 @@ jobs:
|
|
|
113
115
|
id: verify_branch
|
|
114
116
|
if: github.event_name == 'repository_dispatch'
|
|
115
117
|
uses: actions/github-script@v9
|
|
118
|
+
env:
|
|
119
|
+
PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_BRANCH_NAME: ${{ github.event.client_payload.branch_name }}
|
|
120
|
+
PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER: ${{ github.event.client_payload.pr_number }}
|
|
121
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
116
122
|
with:
|
|
117
123
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
118
124
|
script: |
|
|
119
125
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
120
126
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
121
|
-
const branchName =
|
|
122
|
-
const prNumber =
|
|
123
|
-
const runId =
|
|
127
|
+
const branchName = process.env.PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_BRANCH_NAME;
|
|
128
|
+
const prNumber = process.env.PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER;
|
|
129
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
124
130
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
125
131
|
|
|
126
132
|
console.log(msg('apk_test.branch_check_log', { branch: branchName }));
|
|
@@ -184,17 +190,21 @@ jobs:
|
|
|
184
190
|
id: progress_comment
|
|
185
191
|
if: github.event_name == 'repository_dispatch' && github.event.client_payload.pr_number != ''
|
|
186
192
|
uses: actions/github-script@v9
|
|
193
|
+
env:
|
|
194
|
+
PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER: ${{ github.event.client_payload.pr_number }}
|
|
195
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
196
|
+
PAW_IN_STEPS_FIREBASE_CHECK_OUTPUTS_AVAILABLE: ${{ steps.firebase_check.outputs.available }}
|
|
187
197
|
with:
|
|
188
198
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
189
199
|
script: |
|
|
190
200
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
191
201
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
192
202
|
const row = (name, status, elapsed = '-') => `| ${msg('apk_test.step_' + name)} | ${msg('apk_test.st_' + status)} | ${elapsed} |`;
|
|
193
|
-
const prNumber = parseInt(
|
|
194
|
-
const runId =
|
|
203
|
+
const prNumber = parseInt(process.env.PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER);
|
|
204
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
195
205
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
196
206
|
const startTime = Date.now();
|
|
197
|
-
const firebaseAvailable =
|
|
207
|
+
const firebaseAvailable = process.env.PAW_IN_STEPS_FIREBASE_CHECK_OUTPUTS_AVAILABLE === 'true';
|
|
198
208
|
|
|
199
209
|
const rows = [
|
|
200
210
|
row('prepare', 'running'),
|
|
@@ -233,22 +243,28 @@ jobs:
|
|
|
233
243
|
ref: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref }}
|
|
234
244
|
|
|
235
245
|
- name: Pull latest changes
|
|
246
|
+
env:
|
|
247
|
+
PAW_BRANCH_NAME: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref_name }}
|
|
236
248
|
run: |
|
|
237
249
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
238
|
-
BRANCH_NAME="$
|
|
250
|
+
BRANCH_NAME="$PAW_BRANCH_NAME"
|
|
239
251
|
m apk_test.pull_branch branch="$BRANCH_NAME"
|
|
240
252
|
git pull origin "$BRANCH_NAME" || m apk_test.pull_failed
|
|
241
253
|
|
|
242
254
|
- name: Extract issue info from the branch name
|
|
243
255
|
id: issue_info
|
|
256
|
+
env:
|
|
257
|
+
PAW_BRANCH_NAME: ${{ github.event.client_payload.branch_name }}
|
|
258
|
+
PAW_ISSUE_NUMBER: ${{ github.event.client_payload.issue_number }}
|
|
259
|
+
PAW_REF_NAME: ${{ github.ref_name }}
|
|
244
260
|
run: |
|
|
245
261
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
246
262
|
# For repository_dispatch, take the branch name from client_payload
|
|
247
263
|
if [ "${{ github.event_name }}" == "repository_dispatch" ]; then
|
|
248
|
-
BRANCH_NAME="$
|
|
249
|
-
ISSUE_NUMBER="$
|
|
264
|
+
BRANCH_NAME="$PAW_BRANCH_NAME"
|
|
265
|
+
ISSUE_NUMBER="$PAW_ISSUE_NUMBER"
|
|
250
266
|
else
|
|
251
|
-
BRANCH_NAME="$
|
|
267
|
+
BRANCH_NAME="$PAW_REF_NAME"
|
|
252
268
|
# Extract the issue number from the branch name (`<date>_#<number>_...` format)
|
|
253
269
|
ISSUE_NUMBER=$(echo "$BRANCH_NAME" | sed -n 's/.*#\([0-9]*\).*/\1/p')
|
|
254
270
|
fi
|
|
@@ -288,20 +304,24 @@ jobs:
|
|
|
288
304
|
|
|
289
305
|
- name: Generate build info
|
|
290
306
|
id: build_info
|
|
307
|
+
env:
|
|
308
|
+
PAW_BUILD_NUMBER: ${{ github.event.client_payload.build_number }}
|
|
309
|
+
PAW_PR_NUMBER: ${{ github.event.client_payload.pr_number }}
|
|
291
310
|
run: |
|
|
292
311
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
293
312
|
# Get the version through version_manager.py (same approach as the production workflow)
|
|
294
313
|
VERSION=$(python3 .github/scripts/version_manager.py get | tail -n 1)
|
|
295
314
|
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
|
296
315
|
|
|
297
|
-
|
|
316
|
+
# github.sha is the default-branch commit for repository_dispatch; report the commit actually checked out
|
|
317
|
+
COMMIT_SHA=$(git rev-parse HEAD)
|
|
298
318
|
COMMIT_SHORT=$(echo "$COMMIT_SHA" | cut -c1-7)
|
|
299
|
-
BUILD_DATE=$(date '+%Y-%m-%d %H:%M:%S')
|
|
319
|
+
BUILD_DATE=$(date -u '+%Y-%m-%d %H:%M:%S UTC')
|
|
300
320
|
|
|
301
321
|
# For repository_dispatch events, use the PR number as the build number
|
|
302
322
|
if [ "${{ github.event_name }}" == "repository_dispatch" ]; then
|
|
303
|
-
BUILD_NUMBER="$
|
|
304
|
-
PR_NUMBER="$
|
|
323
|
+
BUILD_NUMBER="$PAW_BUILD_NUMBER"
|
|
324
|
+
PR_NUMBER="$PAW_PR_NUMBER"
|
|
305
325
|
m apk_test.event_dispatch
|
|
306
326
|
m apk_test.event_pr_number pr="$PR_NUMBER"
|
|
307
327
|
m apk_test.event_build_number_pr build="$BUILD_NUMBER"
|
|
@@ -313,6 +333,7 @@ jobs:
|
|
|
313
333
|
fi
|
|
314
334
|
|
|
315
335
|
echo "commit_hash=$COMMIT_SHORT" >> $GITHUB_OUTPUT
|
|
336
|
+
echo "commit_sha=$COMMIT_SHA" >> $GITHUB_OUTPUT
|
|
316
337
|
echo "build_number=$BUILD_NUMBER" >> $GITHUB_OUTPUT
|
|
317
338
|
echo "pr_number=$PR_NUMBER" >> $GITHUB_OUTPUT
|
|
318
339
|
echo "build_date=$BUILD_DATE" >> $GITHUB_OUTPUT
|
|
@@ -345,8 +366,10 @@ jobs:
|
|
|
345
366
|
sparse-checkout-cone-mode: false
|
|
346
367
|
|
|
347
368
|
- name: Load messages
|
|
369
|
+
id: load_messages
|
|
348
370
|
working-directory: ${{ github.workspace }}
|
|
349
371
|
run: |
|
|
372
|
+
[ -f .paw-msg/.github/scripts/messages.py ] || { echo "::error::messages.py is missing; rerun \`npx project-auto-wizard --mode full --force\`"; exit 1; }
|
|
350
373
|
cp .paw-msg/.github/scripts/messages.py "$RUNNER_TEMP/paw_messages.py"
|
|
351
374
|
LANG_CODE=$(cd .paw-msg && python3 "$RUNNER_TEMP/paw_messages.py" lang)
|
|
352
375
|
rm -rf .paw-msg
|
|
@@ -361,21 +384,24 @@ jobs:
|
|
|
361
384
|
ref: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref }}
|
|
362
385
|
|
|
363
386
|
- name: Pull latest changes
|
|
364
|
-
|
|
387
|
+
env:
|
|
388
|
+
PAW_BRANCH_NAME: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref_name }}
|
|
389
|
+
run: git pull origin "$PAW_BRANCH_NAME"
|
|
365
390
|
|
|
366
391
|
# Prepare env vars — a .env file when ENV_MODE=dotenv, otherwise a temp file outside the project (--dart-define-from-file)
|
|
367
392
|
- name: Prepare env file
|
|
368
393
|
env:
|
|
369
394
|
ENV_CONTENT: ${{ secrets.ENV_FILE || secrets.ENV }}
|
|
370
395
|
run: |
|
|
396
|
+
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
371
397
|
if [ "$ENV_MODE" = "dotenv" ]; then
|
|
372
398
|
printf '%s\n' "$ENV_CONTENT" > "$ENV_FILE_PATH"
|
|
373
|
-
|
|
399
|
+
m wf_flutter.env_file_created file="$ENV_FILE_PATH"
|
|
374
400
|
elif [ -n "$ENV_CONTENT" ]; then
|
|
375
401
|
DART_DEFINE_FILE="$RUNNER_TEMP/dart-define.env"
|
|
376
402
|
printf '%s\n' "$ENV_CONTENT" > "$DART_DEFINE_FILE"
|
|
377
403
|
echo "DART_DEFINE_FILE=$DART_DEFINE_FILE" >> "$GITHUB_ENV"
|
|
378
|
-
|
|
404
|
+
m wf_flutter.dart_define_prepared
|
|
379
405
|
fi
|
|
380
406
|
|
|
381
407
|
- name: Setup Release Keystore
|
|
@@ -433,12 +459,13 @@ jobs:
|
|
|
433
459
|
env:
|
|
434
460
|
GOOGLE_SERVICES_JSON: ${{ secrets.GOOGLE_SERVICES_JSON }}
|
|
435
461
|
run: |
|
|
462
|
+
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
436
463
|
if [ -n "$GOOGLE_SERVICES_JSON" ]; then
|
|
437
464
|
mkdir -p android/app
|
|
438
465
|
printf '%s' "$GOOGLE_SERVICES_JSON" > android/app/google-services.json
|
|
439
|
-
|
|
466
|
+
m wf_flutter.google_services_created
|
|
440
467
|
else
|
|
441
|
-
|
|
468
|
+
m wf_flutter.google_services_skipped
|
|
442
469
|
fi
|
|
443
470
|
|
|
444
471
|
- name: Set up Flutter
|
|
@@ -450,7 +477,8 @@ jobs:
|
|
|
450
477
|
|
|
451
478
|
- name: Verify Flutter version
|
|
452
479
|
run: |
|
|
453
|
-
|
|
480
|
+
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
481
|
+
m wf_flutter.flutter_setup_done_ok
|
|
454
482
|
flutter --version
|
|
455
483
|
|
|
456
484
|
- name: Cache Flutter dependencies
|
|
@@ -472,11 +500,12 @@ jobs:
|
|
|
472
500
|
|
|
473
501
|
- name: Install dependencies
|
|
474
502
|
run: |
|
|
503
|
+
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
475
504
|
flutter pub get
|
|
476
505
|
if grep -q "build_runner" pubspec.yaml; then
|
|
477
506
|
dart run build_runner build --delete-conflicting-outputs
|
|
478
507
|
fi
|
|
479
|
-
|
|
508
|
+
m wf_flutter.deps_installed_ok
|
|
480
509
|
|
|
481
510
|
- name: Setup Gradle
|
|
482
511
|
working-directory: ${{ env.FLUTTER_PROJECT_DIR }}/android
|
|
@@ -485,7 +514,7 @@ jobs:
|
|
|
485
514
|
# The default flutter create .gitignore does not commit gradlew — flutter build creates it when missing
|
|
486
515
|
if [ -f gradlew ]; then
|
|
487
516
|
chmod +x gradlew
|
|
488
|
-
|
|
517
|
+
m wf_flutter.gradle_perm_ok
|
|
489
518
|
else
|
|
490
519
|
m apk_test.gradlew_missing
|
|
491
520
|
fi
|
|
@@ -498,22 +527,28 @@ jobs:
|
|
|
498
527
|
|
|
499
528
|
- name: Verify Java version
|
|
500
529
|
run: |
|
|
501
|
-
|
|
530
|
+
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
531
|
+
m wf_flutter.java_setup_done_ok
|
|
502
532
|
java -version
|
|
503
533
|
|
|
504
534
|
- name: Progress - prepare done
|
|
505
535
|
id: progress_step1
|
|
506
536
|
if: github.event_name == 'repository_dispatch' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
507
537
|
uses: actions/github-script@v9
|
|
538
|
+
env:
|
|
539
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
540
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE: ${{ needs.prepare-test-build.outputs.firebase_available }}
|
|
541
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID: ${{ needs.prepare-test-build.outputs.progress_comment_id }}
|
|
542
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME: ${{ needs.prepare-test-build.outputs.progress_start_time }}
|
|
508
543
|
with:
|
|
509
544
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
510
545
|
script: |
|
|
511
546
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
512
547
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
513
548
|
const row = (name, status, elapsed = '-') => `| ${msg('apk_test.step_' + name)} | ${msg('apk_test.st_' + status)} | ${elapsed} |`;
|
|
514
|
-
const commentId = parseInt(
|
|
515
|
-
const startTime = parseInt(
|
|
516
|
-
const runId =
|
|
549
|
+
const commentId = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID);
|
|
550
|
+
const startTime = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME);
|
|
551
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
517
552
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
518
553
|
|
|
519
554
|
const now = Date.now();
|
|
@@ -521,7 +556,7 @@ jobs:
|
|
|
521
556
|
const minutes = Math.floor(elapsed / 60);
|
|
522
557
|
const seconds = elapsed % 60;
|
|
523
558
|
const elapsedStr = minutes > 0 ? msg('apk_test.elapsed_min_sec', { m: minutes, s: seconds }) : msg('apk_test.elapsed_sec', { s: seconds });
|
|
524
|
-
const firebaseAvailable =
|
|
559
|
+
const firebaseAvailable = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE === 'true';
|
|
525
560
|
|
|
526
561
|
const rows = [
|
|
527
562
|
row('prepare', 'done', elapsedStr),
|
|
@@ -555,13 +590,15 @@ jobs:
|
|
|
555
590
|
|
|
556
591
|
- name: Generate APK filename
|
|
557
592
|
id: apk_filename
|
|
593
|
+
env:
|
|
594
|
+
PAW_ISSUE_TITLE: ${{ needs.prepare-test-build.outputs.issue_title }}
|
|
558
595
|
run: |
|
|
559
596
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
560
597
|
REPO_NAME="${{ github.event.repository.name }}"
|
|
561
598
|
COMMIT_SHORT="${{ needs.prepare-test-build.outputs.commit_hash }}"
|
|
562
599
|
BUILD_NUMBER="${{ needs.prepare-test-build.outputs.build_number }}"
|
|
563
600
|
ISSUE_NUMBER="${{ needs.prepare-test-build.outputs.issue_number }}"
|
|
564
|
-
ISSUE_TITLE="$
|
|
601
|
+
ISSUE_TITLE="$PAW_ISSUE_TITLE"
|
|
565
602
|
|
|
566
603
|
# Clean up the issue title
|
|
567
604
|
CLEAN_TITLE=""
|
|
@@ -617,7 +654,7 @@ jobs:
|
|
|
617
654
|
m apk_test.flutter_build_log
|
|
618
655
|
flutter build apk --release ${DART_DEFINE_FILE:+--dart-define-from-file="$DART_DEFINE_FILE"}
|
|
619
656
|
ls -la ./build/app/outputs/flutter-apk/ || true
|
|
620
|
-
|
|
657
|
+
m wf_flutter.apk_built_ok
|
|
621
658
|
|
|
622
659
|
- name: Rename and Prepare APK
|
|
623
660
|
run: |
|
|
@@ -625,7 +662,7 @@ jobs:
|
|
|
625
662
|
mkdir -p ./android/app/build/outputs/apk/release/
|
|
626
663
|
APK_NAME="${{ steps.apk_filename.outputs.apk_name }}"
|
|
627
664
|
mv ./build/app/outputs/flutter-apk/app-release.apk ./android/app/build/outputs/apk/release/${APK_NAME}
|
|
628
|
-
|
|
665
|
+
m wf_flutter.apk_renamed_ok name="${APK_NAME}"
|
|
629
666
|
ls -la ./android/app/build/outputs/apk/release/
|
|
630
667
|
|
|
631
668
|
# Check the APK file size
|
|
@@ -644,16 +681,22 @@ jobs:
|
|
|
644
681
|
id: progress_step2
|
|
645
682
|
if: github.event_name == 'repository_dispatch' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
646
683
|
uses: actions/github-script@v9
|
|
684
|
+
env:
|
|
685
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
686
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE: ${{ needs.prepare-test-build.outputs.firebase_available }}
|
|
687
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID: ${{ needs.prepare-test-build.outputs.progress_comment_id }}
|
|
688
|
+
PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED: ${{ steps.progress_step1.outputs.elapsed }}
|
|
689
|
+
PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_END_TIME: ${{ steps.progress_step1.outputs.end_time }}
|
|
647
690
|
with:
|
|
648
691
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
649
692
|
script: |
|
|
650
693
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
651
694
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
652
695
|
const row = (name, status, elapsed = '-') => `| ${msg('apk_test.step_' + name)} | ${msg('apk_test.st_' + status)} | ${elapsed} |`;
|
|
653
|
-
const commentId = parseInt(
|
|
654
|
-
const step1EndTime = parseInt(
|
|
655
|
-
const step1Elapsed =
|
|
656
|
-
const runId =
|
|
696
|
+
const commentId = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID);
|
|
697
|
+
const step1EndTime = parseInt(process.env.PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_END_TIME);
|
|
698
|
+
const step1Elapsed = process.env.PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED;
|
|
699
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
657
700
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
658
701
|
|
|
659
702
|
const now = Date.now();
|
|
@@ -661,7 +704,7 @@ jobs:
|
|
|
661
704
|
const minutes = Math.floor(elapsed / 60);
|
|
662
705
|
const seconds = elapsed % 60;
|
|
663
706
|
const elapsedStr = minutes > 0 ? msg('apk_test.elapsed_min_sec', { m: minutes, s: seconds }) : msg('apk_test.elapsed_sec', { s: seconds });
|
|
664
|
-
const firebaseAvailable =
|
|
707
|
+
const firebaseAvailable = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE === 'true';
|
|
665
708
|
|
|
666
709
|
const rows = [
|
|
667
710
|
row('prepare', 'done', step1Elapsed || '-'),
|
|
@@ -694,14 +737,17 @@ jobs:
|
|
|
694
737
|
core.setOutput('end_time', now.toString());
|
|
695
738
|
|
|
696
739
|
- name: Create build info file
|
|
740
|
+
env:
|
|
741
|
+
PAW_BRANCH_NAME: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref_name }}
|
|
742
|
+
PAW_ISSUE_TITLE: ${{ needs.prepare-test-build.outputs.issue_title }}
|
|
697
743
|
run: |
|
|
698
744
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
699
745
|
BUILD_NUMBER="${{ needs.prepare-test-build.outputs.build_number }}"
|
|
700
746
|
PR_NUMBER="${{ needs.prepare-test-build.outputs.pr_number }}"
|
|
701
|
-
BRANCH_NAME="$
|
|
702
|
-
COMMIT_SHA="${{
|
|
747
|
+
BRANCH_NAME="$PAW_BRANCH_NAME"
|
|
748
|
+
COMMIT_SHA="${{ needs.prepare-test-build.outputs.commit_sha }}"
|
|
703
749
|
COMMIT_SHORT="${{ needs.prepare-test-build.outputs.commit_hash }}"
|
|
704
|
-
BUILD_DATE=$(date '+%Y-%m-%d %H:%M:%S')
|
|
750
|
+
BUILD_DATE=$(date -u '+%Y-%m-%d %H:%M:%S UTC')
|
|
705
751
|
|
|
706
752
|
{
|
|
707
753
|
m apk_test.info_title
|
|
@@ -724,7 +770,7 @@ jobs:
|
|
|
724
770
|
# Add the issue info when available
|
|
725
771
|
if [ -n "${{ needs.prepare-test-build.outputs.issue_number }}" ]; then
|
|
726
772
|
ISSUE_NUMBER="${{ needs.prepare-test-build.outputs.issue_number }}"
|
|
727
|
-
ISSUE_TITLE="$
|
|
773
|
+
ISSUE_TITLE="$PAW_ISSUE_TITLE"
|
|
728
774
|
ISSUE_URL="${{ needs.prepare-test-build.outputs.issue_url }}"
|
|
729
775
|
|
|
730
776
|
{
|
|
@@ -740,13 +786,15 @@ jobs:
|
|
|
740
786
|
|
|
741
787
|
# Create the build metadata file (for the comment-posting workflow)
|
|
742
788
|
- name: Create build metadata file
|
|
789
|
+
env:
|
|
790
|
+
PAW_BRANCH_NAME: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref_name }}
|
|
743
791
|
run: |
|
|
744
792
|
cat > build-metadata.json << EOF
|
|
745
793
|
{
|
|
746
794
|
"pr_number": "${{ needs.prepare-test-build.outputs.pr_number }}",
|
|
747
795
|
"build_number": "${{ needs.prepare-test-build.outputs.build_number }}",
|
|
748
796
|
"issue_number": "${{ needs.prepare-test-build.outputs.issue_number }}",
|
|
749
|
-
"branch_name": "$
|
|
797
|
+
"branch_name": "$PAW_BRANCH_NAME"
|
|
750
798
|
}
|
|
751
799
|
EOF
|
|
752
800
|
cat build-metadata.json
|
|
@@ -768,11 +816,13 @@ jobs:
|
|
|
768
816
|
id: artifact_time
|
|
769
817
|
if: github.event_name == 'repository_dispatch' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
770
818
|
uses: actions/github-script@v9
|
|
819
|
+
env:
|
|
820
|
+
PAW_IN_STEPS_PROGRESS_STEP2_OUTPUTS_END_TIME: ${{ steps.progress_step2.outputs.end_time }}
|
|
771
821
|
with:
|
|
772
822
|
script: |
|
|
773
823
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
774
824
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
775
|
-
const step2EndTime = parseInt(
|
|
825
|
+
const step2EndTime = parseInt(process.env.PAW_IN_STEPS_PROGRESS_STEP2_OUTPUTS_END_TIME);
|
|
776
826
|
const now = Date.now();
|
|
777
827
|
const elapsed = Math.round((now - step2EndTime) / 1000);
|
|
778
828
|
const minutes = Math.floor(elapsed / 60);
|
|
@@ -845,11 +895,13 @@ jobs:
|
|
|
845
895
|
id: firebase_time
|
|
846
896
|
if: needs.prepare-test-build.outputs.firebase_available == 'true' && github.event_name == 'repository_dispatch' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
847
897
|
uses: actions/github-script@v9
|
|
898
|
+
env:
|
|
899
|
+
PAW_IN_STEPS_ARTIFACT_TIME_OUTPUTS_END_TIME: ${{ steps.artifact_time.outputs.end_time }}
|
|
848
900
|
with:
|
|
849
901
|
script: |
|
|
850
902
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
851
903
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
852
|
-
const artifactEndTime = parseInt(
|
|
904
|
+
const artifactEndTime = parseInt(process.env.PAW_IN_STEPS_ARTIFACT_TIME_OUTPUTS_END_TIME);
|
|
853
905
|
const now = Date.now();
|
|
854
906
|
const elapsed = Math.round((now - artifactEndTime) / 1000);
|
|
855
907
|
const minutes = Math.floor(elapsed / 60);
|
|
@@ -860,27 +912,44 @@ jobs:
|
|
|
860
912
|
- name: Final progress update - success
|
|
861
913
|
if: success() && github.event_name == 'repository_dispatch' && github.event.client_payload.pr_number != '' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
862
914
|
uses: actions/github-script@v9
|
|
915
|
+
env:
|
|
916
|
+
PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER: ${{ github.event.client_payload.pr_number }}
|
|
917
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
918
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BRANCH_NAME: ${{ needs.prepare-test-build.outputs.branch_name }}
|
|
919
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BUILD_NUMBER: ${{ needs.prepare-test-build.outputs.build_number }}
|
|
920
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_COMMIT_HASH: ${{ needs.prepare-test-build.outputs.commit_hash }}
|
|
921
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE: ${{ needs.prepare-test-build.outputs.firebase_available }}
|
|
922
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_ISSUE_NUMBER: ${{ needs.prepare-test-build.outputs.issue_number }}
|
|
923
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID: ${{ needs.prepare-test-build.outputs.progress_comment_id }}
|
|
924
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME: ${{ needs.prepare-test-build.outputs.progress_start_time }}
|
|
925
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_VERSION: ${{ needs.prepare-test-build.outputs.version }}
|
|
926
|
+
PAW_IN_STEPS_ARTIFACT_TIME_OUTPUTS_ELAPSED: ${{ steps.artifact_time.outputs.elapsed }}
|
|
927
|
+
PAW_IN_STEPS_FIREBASE_RESULT_OUTPUTS_STATUS: ${{ steps.firebase_result.outputs.status }}
|
|
928
|
+
PAW_IN_STEPS_FIREBASE_TIME_OUTPUTS_ELAPSED: ${{ steps.firebase_time.outputs.elapsed }}
|
|
929
|
+
PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED: ${{ steps.progress_step1.outputs.elapsed }}
|
|
930
|
+
PAW_IN_STEPS_PROGRESS_STEP2_OUTPUTS_ELAPSED: ${{ steps.progress_step2.outputs.elapsed }}
|
|
931
|
+
PAW_IN_STEPS_UPLOAD_ARTIFACT_OUTPUTS_ARTIFACT_URL: ${{ steps.upload_artifact.outputs.artifact-url }}
|
|
863
932
|
with:
|
|
864
933
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
865
934
|
script: |
|
|
866
935
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
867
936
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
868
937
|
const row = (name, status, elapsed = '-') => `| ${msg('apk_test.step_' + name)} | ${msg('apk_test.st_' + status)} | ${elapsed} |`;
|
|
869
|
-
const commentId = parseInt(
|
|
870
|
-
const startTime = parseInt(
|
|
871
|
-
const step1Elapsed =
|
|
872
|
-
const step2Elapsed =
|
|
873
|
-
const step3Elapsed =
|
|
874
|
-
const step4Elapsed =
|
|
875
|
-
const prNumber = parseInt(
|
|
876
|
-
const buildNumber =
|
|
877
|
-
const branchName =
|
|
878
|
-
const commitHash =
|
|
879
|
-
const issueNumber =
|
|
880
|
-
const runId =
|
|
938
|
+
const commentId = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID);
|
|
939
|
+
const startTime = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME);
|
|
940
|
+
const step1Elapsed = process.env.PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED;
|
|
941
|
+
const step2Elapsed = process.env.PAW_IN_STEPS_PROGRESS_STEP2_OUTPUTS_ELAPSED;
|
|
942
|
+
const step3Elapsed = process.env.PAW_IN_STEPS_ARTIFACT_TIME_OUTPUTS_ELAPSED;
|
|
943
|
+
const step4Elapsed = process.env.PAW_IN_STEPS_FIREBASE_TIME_OUTPUTS_ELAPSED;
|
|
944
|
+
const prNumber = parseInt(process.env.PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER);
|
|
945
|
+
const buildNumber = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BUILD_NUMBER;
|
|
946
|
+
const branchName = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BRANCH_NAME;
|
|
947
|
+
const commitHash = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_COMMIT_HASH;
|
|
948
|
+
const issueNumber = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_ISSUE_NUMBER;
|
|
949
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
881
950
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
882
951
|
|
|
883
|
-
const artifactUrl =
|
|
952
|
+
const artifactUrl = process.env.PAW_IN_STEPS_UPLOAD_ARTIFACT_OUTPUTS_ARTIFACT_URL || `${runUrl}#artifacts`;
|
|
884
953
|
|
|
885
954
|
const now = Date.now();
|
|
886
955
|
const totalElapsed_s = Math.round((now - startTime) / 1000);
|
|
@@ -888,8 +957,8 @@ jobs:
|
|
|
888
957
|
const totalSec = totalElapsed_s % 60;
|
|
889
958
|
const totalElapsed = totalMin > 0 ? msg('apk_test.elapsed_min_sec', { m: totalMin, s: totalSec }) : msg('apk_test.elapsed_sec', { s: totalSec });
|
|
890
959
|
|
|
891
|
-
const firebaseAvailable =
|
|
892
|
-
const firebaseSuccess =
|
|
960
|
+
const firebaseAvailable = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE === 'true';
|
|
961
|
+
const firebaseSuccess = process.env.PAW_IN_STEPS_FIREBASE_RESULT_OUTPUTS_STATUS === 'success';
|
|
893
962
|
|
|
894
963
|
const lines = [
|
|
895
964
|
msg('apk_test.title_done'),
|
|
@@ -909,7 +978,7 @@ jobs:
|
|
|
909
978
|
}
|
|
910
979
|
}
|
|
911
980
|
|
|
912
|
-
const version =
|
|
981
|
+
const version = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_VERSION;
|
|
913
982
|
|
|
914
983
|
lines.push(
|
|
915
984
|
'',
|
|
@@ -973,24 +1042,36 @@ jobs:
|
|
|
973
1042
|
}
|
|
974
1043
|
|
|
975
1044
|
- name: Final progress update - failure
|
|
976
|
-
if: failure() && github.event_name == 'repository_dispatch' && github.event.client_payload.pr_number != '' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
1045
|
+
if: failure() && steps.load_messages.outcome == 'success' && github.event_name == 'repository_dispatch' && github.event.client_payload.pr_number != '' && needs.prepare-test-build.outputs.progress_comment_id != ''
|
|
977
1046
|
uses: actions/github-script@v9
|
|
1047
|
+
env:
|
|
1048
|
+
PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER: ${{ github.event.client_payload.pr_number }}
|
|
1049
|
+
PAW_IN_GITHUB_RUN_ID: ${{ github.run_id }}
|
|
1050
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BRANCH_NAME: ${{ needs.prepare-test-build.outputs.branch_name }}
|
|
1051
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BUILD_NUMBER: ${{ needs.prepare-test-build.outputs.build_number }}
|
|
1052
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE: ${{ needs.prepare-test-build.outputs.firebase_available }}
|
|
1053
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_ISSUE_NUMBER: ${{ needs.prepare-test-build.outputs.issue_number }}
|
|
1054
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID: ${{ needs.prepare-test-build.outputs.progress_comment_id }}
|
|
1055
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME: ${{ needs.prepare-test-build.outputs.progress_start_time }}
|
|
1056
|
+
PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_VERSION: ${{ needs.prepare-test-build.outputs.version }}
|
|
1057
|
+
PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED: ${{ steps.progress_step1.outputs.elapsed }}
|
|
1058
|
+
PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_END_TIME: ${{ steps.progress_step1.outputs.end_time }}
|
|
978
1059
|
with:
|
|
979
1060
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
980
1061
|
script: |
|
|
981
1062
|
const M = JSON.parse(process.env.PAW_MSG);
|
|
982
1063
|
const msg = (k, p = {}) => M[k].replace(/\{(\w+)\}/g, (s, n) => (n in p ? p[n] : s));
|
|
983
1064
|
const row = (name, status, elapsed = '-') => `| ${msg('apk_test.step_' + name)} | ${msg('apk_test.st_' + status)} | ${elapsed} |`;
|
|
984
|
-
const commentId = parseInt(
|
|
985
|
-
const startTime = parseInt(
|
|
986
|
-
const step1EndTime = parseInt(
|
|
987
|
-
const step1Elapsed =
|
|
988
|
-
const prNumber = parseInt(
|
|
989
|
-
const buildNumber =
|
|
990
|
-
const version =
|
|
991
|
-
const branchName =
|
|
992
|
-
const issueNumber =
|
|
993
|
-
const runId =
|
|
1065
|
+
const commentId = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_COMMENT_ID);
|
|
1066
|
+
const startTime = parseInt(process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_PROGRESS_START_TIME);
|
|
1067
|
+
const step1EndTime = parseInt(process.env.PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_END_TIME) || 0;
|
|
1068
|
+
const step1Elapsed = process.env.PAW_IN_STEPS_PROGRESS_STEP1_OUTPUTS_ELAPSED;
|
|
1069
|
+
const prNumber = parseInt(process.env.PAW_IN_GITHUB_EVENT_CLIENT_PAYLOAD_PR_NUMBER);
|
|
1070
|
+
const buildNumber = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BUILD_NUMBER;
|
|
1071
|
+
const version = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_VERSION;
|
|
1072
|
+
const branchName = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_BRANCH_NAME;
|
|
1073
|
+
const issueNumber = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_ISSUE_NUMBER;
|
|
1074
|
+
const runId = process.env.PAW_IN_GITHUB_RUN_ID;
|
|
994
1075
|
const runUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/actions/runs/${runId}`;
|
|
995
1076
|
|
|
996
1077
|
const now = Date.now();
|
|
@@ -1008,7 +1089,7 @@ jobs:
|
|
|
1008
1089
|
const tSec = total_s % 60;
|
|
1009
1090
|
const totalElapsed = tMin > 0 ? msg('apk_test.elapsed_min_sec', { m: tMin, s: tSec }) : msg('apk_test.elapsed_sec', { s: tSec });
|
|
1010
1091
|
|
|
1011
|
-
const firebaseAvailable =
|
|
1092
|
+
const firebaseAvailable = process.env.PAW_IN_NEEDS_PREPARE_TEST_BUILD_OUTPUTS_FIREBASE_AVAILABLE === 'true';
|
|
1012
1093
|
|
|
1013
1094
|
const rows = [
|
|
1014
1095
|
row('prepare', 'done', step1Elapsed || '-'),
|
|
@@ -1066,6 +1147,8 @@ jobs:
|
|
|
1066
1147
|
|
|
1067
1148
|
- name: Notify Build Success
|
|
1068
1149
|
if: success()
|
|
1150
|
+
env:
|
|
1151
|
+
PAW_BRANCH_NAME: ${{ github.event_name == 'repository_dispatch' && github.event.client_payload.branch_name || github.ref_name }}
|
|
1069
1152
|
run: |
|
|
1070
1153
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
1071
1154
|
m apk_test.notify_ok
|
|
@@ -1073,7 +1156,7 @@ jobs:
|
|
|
1073
1156
|
if [ -n "${{ needs.prepare-test-build.outputs.pr_number }}" ]; then
|
|
1074
1157
|
m apk_test.notify_pr pr="${{ needs.prepare-test-build.outputs.pr_number }}"
|
|
1075
1158
|
fi
|
|
1076
|
-
m apk_test.notify_branch branch="$
|
|
1159
|
+
m apk_test.notify_branch branch="$PAW_BRANCH_NAME"
|
|
1077
1160
|
m apk_test.notify_commit commit="${{ needs.prepare-test-build.outputs.commit_hash }}"
|
|
1078
1161
|
if [ -n "${{ needs.prepare-test-build.outputs.issue_url }}" ]; then
|
|
1079
1162
|
m apk_test.notify_issue url="${{ needs.prepare-test-build.outputs.issue_url }}"
|
|
@@ -1082,7 +1165,7 @@ jobs:
|
|
|
1082
1165
|
m apk_test.notify_artifact_hint
|
|
1083
1166
|
|
|
1084
1167
|
- name: Notify on Failure
|
|
1085
|
-
if: failure()
|
|
1168
|
+
if: failure() && steps.load_messages.outcome == 'success'
|
|
1086
1169
|
run: |
|
|
1087
1170
|
m() { python3 "$PAW_MESSAGES_PY" get "$@"; }
|
|
1088
1171
|
m apk_test.notify_fail
|