From 825e5da3d6e2bf2f33d5c64ed01cd981dfdb9187 Mon Sep 17 00:00:00 2001 From: Michael Quigley Date: Mon, 21 Apr 2025 17:04:55 -0400 Subject: [PATCH] set 'ZROK_DANGEROUS_CANARY' guard (#947) --- canary/dangerous.go | 13 +++++++++++++ cmd/zrok/testCanaryEnabler.go | 4 ++++ 2 files changed, 17 insertions(+) create mode 100644 canary/dangerous.go diff --git a/canary/dangerous.go b/canary/dangerous.go new file mode 100644 index 00000000..620254cd --- /dev/null +++ b/canary/dangerous.go @@ -0,0 +1,13 @@ +package canary + +import ( + "fmt" + "os" +) + +func AcknowledgeDangerousCanary() error { + if _, ok := os.LookupEnv("ZROK_DANGEROUS_CANARY"); !ok { + return fmt.Errorf("this is a dangerous canary; see canary docs for details on enabling") + } + return nil +} diff --git a/cmd/zrok/testCanaryEnabler.go b/cmd/zrok/testCanaryEnabler.go index 76e274a1..8fa6cda0 100644 --- a/cmd/zrok/testCanaryEnabler.go +++ b/cmd/zrok/testCanaryEnabler.go @@ -45,6 +45,10 @@ func newTestCanaryEnabler() *testCanaryEnabler { } func (cmd *testCanaryEnabler) run(_ *cobra.Command, _ []string) { + if err := canary.AcknowledgeDangerousCanary(); err != nil { + logrus.Fatal(err) + } + root, err := environment.LoadRoot() if err != nil { panic(err)