hashicorp / hashicorp/consul-template
signals package does not build on AIX (GOOS=aix)
- Dominant language
- Go
- Stars
- 4.8k
- Forks
- 801
- Avg merge
- 4h 5m
- Merged PRs (30d)
- 6
Description
## Description
The `signals` package fails to compile for `GOOS=aix GOARCH=ppc64`:
```
signals/signals.go:23:33: undefined: SignalLookup
```
`signals/signals_unix.go` does not include `aix` in its build constraint, and there is no aix file, so `SignalLookup` is undefined on that platform.
Earliest affected version: all versions containing the per-platform `signals` split (verified on v0.41.x and current main).
## Steps to reproduce
```
GOOS=aix GOARCH=ppc64 go build ./signals/
```
## Use case
consul-template is vendored into Vault Agent for template rendering; building Vault's client/Agent for AIX on IBM Power requires this package to compile. The IBM Power integration team has validated a fork patch adding `aix` to the constraint (all signals referenced in the unix `SignalLookup` map exist on AIX).
## Proposed fix
Add `aix` to the build constraint of `signals/signals_unix.go` (and add `SIGVTALRM` to the lookup map, which AIX workloads use). PR to follow.
Contributor guide
Research direction
Start with signals/signals_unix.go and inspect its build constraint and SignalLookup map. Run GOOS=aix GOARCH=ppc64 go build ./signals/ to reproduce the failure, then verify the AIX constraint and SIGVTALRM entry make the package compile successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- build-system, operating-systems
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 76/100