Skip to content

flake: macOS test-go-pg infrastructure issue - missing bash/getopt/make #1133

@flake-investigator

Description

@flake-investigator

CI Run Link: https://github.com/coder/coder/actions/runs/19443944163
Failed Job: required (due to macOS test-go-pg cancellation)
Commit: a83328c1f08c2c909bfdc33f15a9aa6242ce2056 (Yevhenii Shcherbina)
Date: 2025-11-17

Summary

  • The aggregator job required failed because test-go-pg (macos-latest) was cancelled.
  • macOS job cancelled after failing dependency checks before tests ran.
  • Other matrix jobs (Ubuntu, Windows) succeeded; run_attempt=1 across jobs.

Key evidence from macOS job logs (test-go-pg (macos-latest))

ERROR: You need at least bash 4.0 to run the scripts in the Coder repo.
On darwin:
- brew install bash
- Add "$(brew --prefix bash)/bin" to your PATH
- Restart your terminal

ERROR: You need GNU getopt to run the scripts in the Coder repo.
On darwin:
- brew install gnu-getopt
- Add "$(brew --prefix gnu-getopt)/bin" to your PATH
- Restart your terminal

ERROR: You need at least make 4.0 to run the scripts in the Coder repo.
On darwin:
- brew install make
- Add "$(brew --prefix make)/libexec/gnubin" to your PATH
- Restart your terminal

ERROR: Invalid dependencies, see above for more details.
##[error]The operation was canceled.

Required-checks job output

- test-go-pg: cancelled
One of the required checks has failed or has been cancelled

Root cause classification: Infrastructure

  • macOS runner is missing required developer tools (bash >= 4, GNU getopt, GNU make), causing pre-test dependency checks to fail and the job to be cancelled.
  • This is not a matrix cancellation artifact from another failing job; all other test jobs passed.

Precise assignment analysis (infrastructure ownership)

  • The failure is CI workflow/environment related for macOS test-go-pg.
  • Recent maintainers of .github/workflows/ci.yaml and CI infra include Cian Johnston and Ethan Dickson; assigning to CI infra owner for triage.

Related issues search (duplicates)

  • Searched coder/internal for duplicates with queries:
    • "ERROR: Invalid dependencies"
    • "You need GNU getopt"
    • "You need at least bash 4.0"
    • "macos test-go-pg cancelled"
  • No existing open/closed issues found describing this failure mode in the past 30 days.

Proposed next steps

  • In the macOS path for test-go-pg in ci.yaml (or a shared setup action), ensure the required dependencies are installed and PATH-adjusted before running make/scripts:
    • brew install bash gnu-getopt make
    • export PATH additions for $(brew --prefix bash)/bin, $(brew --prefix gnu-getopt)/bin, and $(brew --prefix make)/libexec/gnubin
  • Alternatively, adjust the scripts to not require GNU-specific tools on macOS, or vendor minimal equivalents.
  • Consider adding a fast-fail setup step that installs these if missing to avoid partial runs and cancellations.

Reproduction

  • Re-run the failing workflow on macOS (macos-latest). The dependency check step in the test-go-pg job should emit the errors above and cancel the job.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions