airvzxf / airvzxf/ftp-deployment-action

test(integration): scenarios can't run in parallel (fixed ports 2121/2122/2123)

オープン
#223 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
audit pending-architecture pending-human priority:medium test
主要言語
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

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。