[Bug]: e2e script flag parsing is broken

オープン 初心者向け
#2,217 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@ericcurtin がすでに取り組んでいます。

2026年10月5日 から。

  • #2226 @ericcurtin による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
72/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
go, shell
領域
testing

調査の方向性

まず hack/run-e2e.sh を読み、issue にある2種類のコマンド形式を再現します。報告された失敗は capabilities の e2e テスト呼び出しで発生します。各順序でスクリプトがフラグとスイートのパスをどのように処理するかを比較し、両方のコマンドが同じように動作すること、そして --no-color がテストに渡されることを確認します。

索引モデルが issue の本文から書いたものです。

説明

area/dev-infra area/tests kind/bug
What happened?
./hack/run-e2e.sh ./internal/e2e/suites/networking -v -args --no-color

and

./hack/run-e2e.sh -v ./internal/e2e/suites/networking -args --no-color

Do not do the same thing

Expected Behavior

I would expect

./hack/run-e2e.sh ./internal/e2e/suites/networking -v -args --no-color

and

./hack/run-e2e.sh -v ./internal/e2e/suites/networking -args --no-color

To do the same thing.

Steps to Reproduce

./hack/run-e2e.sh -v ./internal/e2e/suites/networking -args --no-color

Sandbox Runtime

gVisor (runsc)

Agent Substrate Version / Commit SHA

3dfddb1fb2a26e2a4db2c56f427d0f05f1fd0991

Kubernetes Version & Environment

kind version 0.31.0

Host OS & Architecture

Linux amd64

Relevant Logs and Diagnostic Output
Usage of /tmp/go-build3858815266/b001/capabilities.test:
      --e2e                                         run e2e tests
      --kube-config string                          Location of the kubeconfig
      --kube-context string                         Kubernetes context to use
      --no-color                                    disable colors in output
      --storage-class string                        StorageClass to use for external volume tests (default "csi-nfs-sc")
      --test.artifacts                              store test artifacts in test.,outputdir
      --test.bench regexp                           run only benchmarks matching regexp
      --test.benchmem                               print memory allocations for benchmarks
      --test.benchtime d                            run each benchmark for duration d or N times if `d` is of the form Nx (default 1s)
      --test.blockprofile file                      write a goroutine blocking profile to file
      --test.blockprofilerate rate                  set blocking profile rate (see runtime.SetBlockProfileRate) (default 1)
      --test.count n                                run tests and benchmarks n times (default 1)
      --test.coverprofile file                      write a coverage profile to file
      --test.cpu list                               comma-separated list of cpu counts to run each test with
      --test.cpuprofile file                        write a cpu profile to file
      --test.failfast                               do not start new tests after the first test failure
      --test.fullpath                               show full file names in error messages
      --test.fuzz regexp                            run the fuzz test matching regexp
      --test.fuzzcachedir string                    directory where interesting fuzzing inputs are stored (for use only by cmd/go)
      --test.fuzzminimizetime durationOrCountFlag   time to spend minimizing a value after finding a failing input (default 1m0s)
      --test.fuzztime durationOrCountFlag           time to spend fuzzing; default is to run indefinitely (default 0s)
      --test.fuzzworker                             coordinate with the parent process to fuzz random values (for use only by cmd/go)
      --test.gocoverdir string                      write coverage intermediate files to this directory
      --test.list regexp                            list tests, examples, and benchmarks matching regexp then exit
      --test.memprofile file                        write an allocation profile to file
      --test.memprofilerate rate                    set memory allocation profiling rate (see runtime.MemProfileRate)
      --test.mutexprofile string                    write a mutex contention profile to the named file after execution
      --test.mutexprofilefraction int               if >= 0, calls runtime.SetMutexProfileFraction() (default 1)
      --test.outputdir dir                          write profiles to dir
      --test.paniconexit0                           panic on call to os.Exit(0)
      --test.parallel n                             run at most n tests in parallel (default 12)
      --test.run regexp                             run only tests and examples matching regexp
      --test.short                                  run smaller test suite to save time
      --test.shuffle string                         randomize the execution order of tests and benchmarks (default "off")
      --test.skip regexp                            do not list or run tests matching regexp
      --test.testlogfile file                       write test action log to file (for use only by cmd/go)
      --test.timeout d                              panic test binary after duration d (default 0, timeout disabled) (default 0s)
      --test.trace file                             write an execution trace to file
      --test.v chattyFlag[=true]                    verbose: print additional output
unknown shorthand flag: 'a' in -args
FAIL	github.com/agent-substrate/substrate/internal/e2e/suites/capabilities	0.037s
Additional Context

No response

Confirmation
  • I have searched existing issues and verified that this is not a duplicate.
  • I have verified that this issue occurs on the latest commit on main.
主要言語
Go
スター
6.1k
フォーク
676
平均マージ
2日 2時間
マージ済み PR(30日)
522

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

agent-substrate/substrate のほかの issue

agent-substrate/substrate の issue をすべて見る

似ている issue

Go の issue をもっと見る

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

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