feat: add GitLab webhook verification support#19
Conversation
|
@bornakapusta can you resolve this merge conflict? I'd love to be able to merge this. |
Adds X-Gitlab-Token header verification and predefined IP allowlist for GitLab.com webhook source IPs.
9a307e3 to
4dfead8
Compare
Docker Images BuiltImages are available for testing: # gatekeeperd
docker pull ghcr.io/tight-line/gatekeeperd:pr-19-f46d1cc
# gatekeeper-relay
docker pull ghcr.io/tight-line/gatekeeper-relay:pr-19-f46d1ccdocker-compose.ymlGATEKEEPERD_IMAGE=ghcr.io/tight-line/gatekeeperd:pr-19-f46d1cc \
RELAY_IMAGE=ghcr.io/tight-line/gatekeeper-relay:pr-19-f46d1cc \
docker-compose --profile relay upHelm (values override)image:
repository: ghcr.io/tight-line/gatekeeperd # or gatekeeper-relay
tag: "pr-19-f46d1cc"Images expire ~15 days after PR closes. |
|
@bornakapusta can you fix up the coverage? Ideally we shoot for 100% coverage on new (testable) code. The repo has some instructions about how to mark code as untestable, but really that should be a feature of last resort. Most code is testable. We currently only use that feature for Redis testing because our Redis testing library lacks some features of a real Redis server. |
Add test coverage for gitlab verifier validation and handler building to meet SonarQube 80% coverage requirement on new code.
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |



Summary
gitlabverifier type for GitLab webhook authentication viaX-Gitlab-Tokenheader34.74.90.64/28,34.74.226.0/24)Test plan
internal/verifier/gitlab_test.go)/direct/gitlaband/relay/gitlabroutes🤖 Generated with Claude Code