Skip to content

Commit 1afb207

Browse files
authored
Merge pull request #3198 from xrstf/webhook-authz
✨ Enable webhook authorization options
2 parents 95838e4 + f99e755 commit 1afb207

File tree

12 files changed

+404
-107
lines changed

12 files changed

+404
-107
lines changed

Makefile

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,10 @@ GOLANGCI_LINT_VER := v1.62.2
5959
GOLANGCI_LINT_BIN := golangci-lint
6060
GOLANGCI_LINT := $(TOOLS_GOBIN_DIR)/$(GOLANGCI_LINT_BIN)-$(GOLANGCI_LINT_VER)
6161

62+
HTTEST_VER := v0.3.2
63+
HTTEST_BIN := httest
64+
HTTEST := $(TOOLS_GOBIN_DIR)/$(HTTEST_BIN)-$(HTTEST_VER)
65+
6266
GOTESTSUM_VER := v1.8.1
6367
GOTESTSUM_BIN := gotestsum
6468
GOTESTSUM := $(abspath $(TOOLS_DIR))/$(GOTESTSUM_BIN)-$(GOTESTSUM_VER)
@@ -136,6 +140,9 @@ install: require-jq require-go require-git verify-go-versions ## Install the pro
136140
$(GOLANGCI_LINT):
137141
GOBIN=$(TOOLS_GOBIN_DIR) $(GO_INSTALL) github.com/golangci/golangci-lint/cmd/golangci-lint $(GOLANGCI_LINT_BIN) $(GOLANGCI_LINT_VER)
138142

143+
$(HTTEST):
144+
GOBIN=$(TOOLS_GOBIN_DIR) $(GO_INSTALL) go.xrstf.de/httest $(HTTEST_BIN) $(HTTEST_VER)
145+
139146
$(LOGCHECK):
140147
GOBIN=$(TOOLS_GOBIN_DIR) $(GO_INSTALL) sigs.k8s.io/logtools/logcheck $(LOGCHECK_BIN) $(LOGCHECK_VER)
141148

@@ -183,7 +190,7 @@ vendor: ## Vendor the dependencies
183190
go mod vendor
184191
.PHONY: vendor
185192

186-
tools: $(GOLANGCI_LINT) $(CONTROLLER_GEN) $(KCP_APIGEN_GEN) $(YAML_PATCH) $(GOTESTSUM) $(OPENSHIFT_GOIMPORTS) $(CODE_GENERATOR) ## Install tools
193+
tools: $(GOLANGCI_LINT) $(HTTEST) $(CONTROLLER_GEN) $(KCP_APIGEN_GEN) $(YAML_PATCH) $(GOTESTSUM) $(OPENSHIFT_GOIMPORTS) $(CODE_GENERATOR) ## Install tools
187194
.PHONY: tools
188195

189196
$(CONTROLLER_GEN):
@@ -269,6 +276,7 @@ endif
269276
ifdef USE_GOTESTSUM
270277
test-e2e: $(GOTESTSUM)
271278
endif
279+
test-e2e: $(HTTEST)
272280
test-e2e: TEST_ARGS ?=
273281
test-e2e: WHAT ?= ./test/e2e...
274282
test-e2e: build-all ## Run e2e tests
@@ -280,6 +288,7 @@ test-e2e: build-all ## Run e2e tests
280288
ifdef USE_GOTESTSUM
281289
test-e2e-shared-minimal: $(GOTESTSUM)
282290
endif
291+
test-e2e-shared-minimal: $(HTTEST)
283292
test-e2e-shared-minimal: TEST_ARGS ?=
284293
test-e2e-shared-minimal: WHAT ?= ./test/e2e...
285294
test-e2e-shared-minimal: WORK_DIR ?= .
@@ -305,6 +314,7 @@ test-e2e-shared-minimal: build-all
305314
ifdef USE_GOTESTSUM
306315
test-e2e-sharded-minimal: $(GOTESTSUM)
307316
endif
317+
test-e2e-sharded-minimal: $(HTTEST)
308318
test-e2e-sharded-minimal: TEST_ARGS ?=
309319
test-e2e-sharded-minimal: WHAT ?= ./test/e2e...
310320
test-e2e-sharded-minimal: WORK_DIR ?= .

cmd/kcp/kcp.go

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -78,8 +78,8 @@ func main() {
7878
}
7979
}
8080

81-
serverOptions := options.NewOptions(rootDir)
82-
serverOptions.Server.GenericControlPlane.Logs.Verbosity = logsapiv1.VerbosityLevel(2)
81+
kcpOptions := options.NewOptions(rootDir)
82+
kcpOptions.Server.GenericControlPlane.Logs.Verbosity = logsapiv1.VerbosityLevel(2)
8383

8484
startCmd := &cobra.Command{
8585
Use: "start",
@@ -101,34 +101,34 @@ func main() {
101101
},
102102
RunE: func(cmd *cobra.Command, args []string) error {
103103
// run as early as possible to avoid races later when some components (e.g. grpc) start early using klog
104-
if err := logsapiv1.ValidateAndApply(serverOptions.Server.GenericControlPlane.Logs, kcpfeatures.DefaultFeatureGate); err != nil {
104+
if err := logsapiv1.ValidateAndApply(kcpOptions.Server.GenericControlPlane.Logs, kcpfeatures.DefaultFeatureGate); err != nil {
105105
return err
106106
}
107107

108-
completed, err := serverOptions.Complete()
108+
completedKcpOptions, err := kcpOptions.Complete()
109109
if err != nil {
110110
return err
111111
}
112112

113-
if errs := completed.Validate(); len(errs) > 0 {
113+
if errs := completedKcpOptions.Validate(); len(errs) > 0 {
114114
return errors.NewAggregate(errs)
115115
}
116116

117117
logger := klog.FromContext(cmd.Context())
118-
logger.Info("running with selected batteries", "batteries", strings.Join(completed.Server.Extra.BatteriesIncluded, ","))
118+
logger.Info("running with selected batteries", "batteries", strings.Join(completedKcpOptions.Server.Extra.BatteriesIncluded, ","))
119119

120-
config, err := server.NewConfig(completed.Server)
120+
ctx := genericapiserver.SetupSignalContext()
121+
122+
serverConfig, err := server.NewConfig(ctx, completedKcpOptions.Server)
121123
if err != nil {
122124
return err
123125
}
124126

125-
completedConfig, err := config.Complete()
127+
completedConfig, err := serverConfig.Complete()
126128
if err != nil {
127129
return err
128130
}
129131

130-
ctx := genericapiserver.SetupSignalContext()
131-
132132
// the etcd server must be up before NewServer because storage decorators access it right away
133133
if completedConfig.EmbeddedEtcd.Config != nil {
134134
if err := embeddedetcd.NewServer(completedConfig.EmbeddedEtcd).Run(ctx); err != nil {
@@ -146,7 +146,7 @@ func main() {
146146

147147
// add start named flag sets to start flags
148148
fss := cliflag.NamedFlagSets{}
149-
serverOptions.AddFlags(&fss)
149+
kcpOptions.AddFlags(&fss)
150150
globalflag.AddGlobalFlags(fss.FlagSet("global"), cmd.Name(), logs.SkipLoggingConfigurationFlags())
151151
startFlags := startCmd.Flags()
152152
for _, f := range fss.FlagSets {

0 commit comments

Comments
 (0)