airvzxf / airvzxf/ftp-deployment-action
test(integration): scenarios can't run in parallel (fixed ports 2121/2122/2123)
- 主要言語
- Shell
- スター
- 37
- フォーク
- 9
- 平均マージ
- 44分
- マージ済み PR(30日)
- 47
説明
gh issue create --title "test(integration): scenarios can't run in parallel (fixed ports 2121/2122/2123)" --label "test,audit,priority:medium" --body "## Finding
The integration scenarios use fixed ports (2121 plain, 2122 FTPS implicit, 2123 FTPS explicit). Two parallel runs of `make test-integration` on the same host collide. CI is fine (single workflow run), but local development is bottlenecked.
## Affected code
- tests/integration/lib/common.sh — port constants
- tests/integration/scenarios/* — port references
## Reproduction
1. Open two terminals.
2. Run `make test-integration` in both.
3. Observe: second run fails with 'port already in use'.
## Suggested fix
Pick ports at runtime from an env var (TEST_FTP_PORT, TEST_FTPS_IMPLICIT_PORT, TEST_FTPS_EXPLICIT_PORT) with safe defaults (2121-2123). Pass the ports into start_ftps_server.
Or use ephemeral port allocation (bind to 0, read back the bound port).
The first option is simpler.
## Source
F2 audit 2026-09-03 (tests audit). Reporter: subagent-pekodbj7.
## Related
- Part of EPIC #[epic-number]
- Closes: #NONE (no existing issue)
- Related: M6 (sleep 1 for bind-mount propagation)"
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
Start in tests/integration/lib/common.sh to inspect the port constants and start_ftps_server, then trace the port references under tests/integration/scenarios/. Run make test-integration in two terminals, and verify that both runs can use the safe defaults or distinct environment-provided ports without a port collision.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- shell
- 領域
- networking, testing-qa
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 活発
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 76/100