39 lines
2 KiB
Text
39 lines
2 KiB
Text
# Complete - m-macos-distribution
|
|
|
|
## 완료 일시
|
|
|
|
2026-06-17
|
|
|
|
## 요약
|
|
|
|
Jenkins certified job SCM URL secret/XML hardening follow-up, 2 review loops, final verdict PASS.
|
|
|
|
## 루프 이력
|
|
|
|
| Plan | Review | Verdict | 메모 |
|
|
|------|--------|---------|------|
|
|
| `plan_local_G06_0.log` | `code_review_local_G06_0.log` | FAIL | `Process.run` async misuse made the new focused regression tests fail to compile. |
|
|
| `plan_local_G07_1.log` | `code_review_local_G07_1.log` | PASS | Regression tests now use `Process.runSync`; focused local and remote tests passed. |
|
|
|
|
## 구현/정리 내용
|
|
|
|
- Hardened `scripts/upsert-jenkins-certified-job.sh` by allowing `APPSOK_SCM_URL`, rejecting HTTP(S) SCM URLs with userinfo, and XML-escaping the SCM URL before writing Jenkins job XML.
|
|
- Added dry-run regression coverage for SCM URL XML escaping and HTTP(S) userinfo rejection.
|
|
- Fixed the regression tests to use synchronous process results and repaired a stale XML escaping comment during review.
|
|
|
|
## 최종 검증
|
|
|
|
- `bash -n scripts/setup-appsok-ci-secrets.sh scripts/build-certified-macos.sh scripts/upsert-jenkins-certified-job.sh` - PASS; exit 0.
|
|
- `APPSOK_SCM_URL='https://example.com/toki/appsok.git?foo=1&bar=<tag>' bash scripts/upsert-jenkins-certified-job.sh --dry-run | grep '<url>'` - PASS; output contained escaped URL: `<url>https://example.com/toki/appsok.git?foo=1&bar=<tag></url>`.
|
|
- `APPSOK_SCM_URL='https://user:token@example.com/org/repo.git' bash scripts/upsert-jenkins-certified-job.sh --dry-run` - PASS; exit 1, `credential-free` error, token not present in stdout/stderr.
|
|
- `flutter pub get && flutter test test/certified_macos_scripts_test.dart` - PASS; `+8: All tests passed!`.
|
|
- `ssh -o BatchMode=yes -o ConnectTimeout=10 toki@toki-labs.com 'zsh -lc "cd \"$HOME/docker/services/code-server/data/volume/workspace/appsok\" && flutter test test/certified_macos_scripts_test.dart"'` - PASS; remote runner `+8: All tests passed!`.
|
|
- `git diff --check` - PASS; no whitespace errors.
|
|
|
|
## 잔여 Nit
|
|
|
|
- 없음
|
|
|
|
## 후속 작업
|
|
|
|
- 없음
|