Skip to content

Commit 1206473

Browse files
authored
Update to Knative 1.1 (#502)
1 parent 8d7a4b7 commit 1206473

File tree

2,979 files changed

+175314
-332735
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,979 files changed

+175314
-332735
lines changed

.github/workflows/minkind-cosigned.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,6 @@ jobs:
9595
- name: Run cosigned e2e tests
9696
working-directory: ./src/github.com/mattmoor/mink
9797
run: |
98-
# Update the cosign verification-key secret with a proper key pair.
99-
cosign generate-key-pair k8s://mink-system/verification-key
100-
10198
sed -i 's/cosign-system/mink-system/g' ./vendor/github.com/sigstore/cosign/test/e2e_test_cosigned.sh
10299
bash ./vendor/github.com/sigstore/cosign/test/e2e_test_cosigned.sh
103100

cmd/webhook/cosigned.go

Lines changed: 48 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,45 +21,53 @@ import (
2121

2222
appsv1 "k8s.io/api/apps/v1"
2323
batchv1 "k8s.io/api/batch/v1"
24+
batchv1beta1 "k8s.io/api/batch/v1beta1"
2425
corev1 "k8s.io/api/core/v1"
2526
"k8s.io/apimachinery/pkg/runtime/schema"
2627
duckv1 "knative.dev/pkg/apis/duck/v1"
2728
"knative.dev/pkg/configmap"
2829
"knative.dev/pkg/controller"
2930
"knative.dev/pkg/webhook/resourcesemantics"
31+
"knative.dev/pkg/webhook/resourcesemantics/defaulting"
3032
"knative.dev/pkg/webhook/resourcesemantics/validation"
3133
servingv1 "knative.dev/serving/pkg/apis/serving/v1"
3234

3335
cwebhook "github.com/sigstore/cosign/pkg/cosign/kubernetes/webhook"
3436
)
3537

36-
func newCosignedWebhook(ctx context.Context, cmw configmap.Watcher) *controller.Impl {
38+
var cosignedTypes = map[schema.GroupVersionKind]resourcesemantics.GenericCRD{
39+
corev1.SchemeGroupVersion.WithKind("Pod"): &duckv1.Pod{},
40+
41+
appsv1.SchemeGroupVersion.WithKind("ReplicaSet"): &duckv1.WithPod{},
42+
appsv1.SchemeGroupVersion.WithKind("Deployment"): &duckv1.WithPod{},
43+
appsv1.SchemeGroupVersion.WithKind("StatefulSet"): &duckv1.WithPod{},
44+
appsv1.SchemeGroupVersion.WithKind("DaemonSet"): &duckv1.WithPod{},
45+
batchv1.SchemeGroupVersion.WithKind("Job"): &duckv1.WithPod{},
46+
47+
batchv1.SchemeGroupVersion.WithKind("CronJob"): &duckv1.CronJob{},
48+
batchv1beta1.SchemeGroupVersion.WithKind("CronJob"): &duckv1.CronJob{},
49+
50+
servingv1.SchemeGroupVersion.WithKind("Service"): &duckv1.WithPod{},
51+
}
52+
53+
func newCosignedValidatingWebhook(ctx context.Context, cmw configmap.Watcher) *controller.Impl {
3754
validator := cwebhook.NewValidator(ctx, *secretName)
3855

3956
return validation.NewAdmissionController(ctx,
4057
// Name of the resource webhook.
4158
"cosigned.mink.knative.dev",
4259

4360
// The path on which to serve the webhook.
44-
"/cosigned",
61+
"/validations",
4562

4663
// The resources to validate.
47-
map[schema.GroupVersionKind]resourcesemantics.GenericCRD{
48-
corev1.SchemeGroupVersion.WithKind("Pod"): &duckv1.Pod{},
49-
50-
appsv1.SchemeGroupVersion.WithKind("ReplicaSet"): &duckv1.WithPod{},
51-
appsv1.SchemeGroupVersion.WithKind("Deployment"): &duckv1.WithPod{},
52-
appsv1.SchemeGroupVersion.WithKind("StatefulSet"): &duckv1.WithPod{},
53-
appsv1.SchemeGroupVersion.WithKind("DaemonSet"): &duckv1.WithPod{},
54-
batchv1.SchemeGroupVersion.WithKind("Job"): &duckv1.WithPod{},
55-
56-
servingv1.SchemeGroupVersion.WithKind("Service"): &duckv1.WithPod{},
57-
},
64+
cosignedTypes,
5865

5966
// A function that infuses the context passed to Validate/SetDefaults with custom metadata.
6067
func(ctx context.Context) context.Context {
6168
ctx = duckv1.WithPodValidator(ctx, validator.ValidatePod)
6269
ctx = duckv1.WithPodSpecValidator(ctx, validator.ValidatePodSpecable)
70+
ctx = duckv1.WithCronJobValidator(ctx, validator.ValidateCronJob)
6371
return ctx
6472
},
6573

@@ -71,3 +79,30 @@ func newCosignedWebhook(ctx context.Context, cmw configmap.Watcher) *controller.
7179
nil,
7280
)
7381
}
82+
83+
func newCosignedMutatingWebhook(ctx context.Context, cmw configmap.Watcher) *controller.Impl {
84+
validator := cwebhook.NewValidator(ctx, *secretName)
85+
86+
return defaulting.NewAdmissionController(ctx,
87+
// Name of the resource webhook.
88+
"cosigned.mink.knative.dev",
89+
90+
// The path on which to serve the webhook.
91+
"/mutations",
92+
93+
// The resources to validate.
94+
cosignedTypes,
95+
96+
// A function that infuses the context passed to Validate/SetDefaults with custom metadata.
97+
func(ctx context.Context) context.Context {
98+
ctx = duckv1.WithPodDefaulter(ctx, validator.ResolvePod)
99+
ctx = duckv1.WithPodSpecDefaulter(ctx, validator.ResolvePodSpecable)
100+
ctx = duckv1.WithCronJobDefaulter(ctx, validator.ResolveCronJob)
101+
return ctx
102+
},
103+
104+
// Whether to disallow unknown fields.
105+
// We pass false because we're using partial schemas.
106+
false,
107+
)
108+
}

cmd/webhook/main.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,6 @@ func main() {
8888
flag.StringVar(&opts.Images.GsutilImage, "gsutil-image", "", "The container image containing gsutil")
8989
flag.StringVar(&opts.Images.PRImage, "pr-image", "", "The container image containing our PR binary.")
9090
flag.StringVar(&opts.Images.ImageDigestExporterImage, "imagedigest-exporter-image", "", "The container image containing our image digest exporter binary.")
91-
flag.BoolVar(&opts.ExperimentalDisableResolution, "experimental-disable-in-tree-resolution", false,
92-
"Disable resolution of taskrun and pipelinerun refs by the taskrun and pipelinerun reconcilers.")
9391

9492
flag.Parse()
9593

@@ -122,7 +120,8 @@ func main() {
122120
newValidationAdmissionController,
123121
newConfigValidationController,
124122
newConversionController,
125-
newCosignedWebhook,
123+
newCosignedValidatingWebhook,
124+
newCosignedMutatingWebhook,
126125

127126
// Serving resource controllers.
128127
configuration.NewController,

config/core/200-imported/200-eventing/100-resources/apiserversource.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ metadata:
2222
duck.knative.dev/source: "true"
2323
knative.dev/crd-install: "true"
2424
app.kubernetes.io/version: devel
25-
app.kubernetes.io/part-of: mink-system
25+
app.kubernetes.io/name: mink-system
2626
annotations:
2727
# TODO add schemas and descriptions
2828
registry.knative.dev/eventTypes: |

config/core/200-imported/200-eventing/100-resources/broker.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ metadata:
2121
knative.dev/crd-install: "true"
2222
duck.knative.dev/addressable: "true"
2323
app.kubernetes.io/version: devel
24-
app.kubernetes.io/part-of: mink-system
24+
app.kubernetes.io/name: mink-system
2525
spec:
2626
group: eventing.knative.dev
2727
versions:

config/core/200-imported/200-eventing/100-resources/channel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ metadata:
2222
messaging.knative.dev/subscribable: "true"
2323
duck.knative.dev/addressable: "true"
2424
app.kubernetes.io/version: devel
25-
app.kubernetes.io/part-of: mink-system
25+
app.kubernetes.io/name: mink-system
2626
spec:
2727
group: messaging.knative.dev
2828
versions:

config/core/200-imported/200-eventing/100-resources/containersource.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ metadata:
2121
duck.knative.dev/source: "true"
2222
knative.dev/crd-install: "true"
2323
app.kubernetes.io/version: devel
24-
app.kubernetes.io/part-of: mink-system
24+
app.kubernetes.io/name: mink-system
2525
name: containersources.sources.knative.dev
2626
spec:
2727
group: sources.knative.dev

config/core/200-imported/200-eventing/100-resources/eventtype.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ metadata:
1919
knative.dev/release: devel
2020
knative.dev/crd-install: "true"
2121
app.kubernetes.io/version: devel
22-
app.kubernetes.io/part-of: mink-system
22+
app.kubernetes.io/name: mink-system
2323
spec:
2424
group: eventing.knative.dev
2525
versions:

config/core/200-imported/200-eventing/100-resources/parallel.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ metadata:
2020
knative.dev/crd-install: "true"
2121
duck.knative.dev/addressable: "true"
2222
app.kubernetes.io/version: devel
23-
app.kubernetes.io/part-of: mink-system
23+
app.kubernetes.io/name: mink-system
2424
spec:
2525
group: flows.knative.dev
2626
versions:

config/core/200-imported/200-eventing/100-resources/pingsource.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ metadata:
2121
duck.knative.dev/source: "true"
2222
knative.dev/crd-install: "true"
2323
app.kubernetes.io/version: devel
24-
app.kubernetes.io/part-of: mink-system
24+
app.kubernetes.io/name: mink-system
2525
annotations:
2626
# TODO add schemas and descriptions
2727
registry.knative.dev/eventTypes: |

0 commit comments

Comments
 (0)