Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove messaging v1alpha1 #3275

Merged
merged 11 commits into from
Jun 5, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 2 additions & 27 deletions cmd/webhook/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,7 @@ import (
configsv1alpha1 "knative.dev/eventing/pkg/apis/configs/v1alpha1"
eventingv1beta1 "knative.dev/eventing/pkg/apis/eventing/v1beta1"
flowsv1beta1 "knative.dev/eventing/pkg/apis/flows/v1beta1"
"knative.dev/eventing/pkg/apis/messaging"
channeldefaultconfig "knative.dev/eventing/pkg/apis/messaging/config"
messagingv1alpha1 "knative.dev/eventing/pkg/apis/messaging/v1alpha1"
messagingv1beta1 "knative.dev/eventing/pkg/apis/messaging/v1beta1"
"knative.dev/eventing/pkg/apis/sources"
sourcesv1alpha1 "knative.dev/eventing/pkg/apis/sources/v1alpha1"
Expand All @@ -64,10 +62,6 @@ var ourTypes = map[schema.GroupVersionKind]resourcesemantics.GenericCRD{
eventingv1beta1.SchemeGroupVersion.WithKind("EventType"): &eventingv1beta1.EventType{},

// For group messaging.knative.dev.
// v1alpha1
messagingv1alpha1.SchemeGroupVersion.WithKind("InMemoryChannel"): &messagingv1alpha1.InMemoryChannel{},
messagingv1alpha1.SchemeGroupVersion.WithKind("Channel"): &messagingv1alpha1.Channel{},
messagingv1alpha1.SchemeGroupVersion.WithKind("Subscription"): &messagingv1alpha1.Subscription{},
// v1beta1
messagingv1beta1.SchemeGroupVersion.WithKind("InMemoryChannel"): &messagingv1beta1.InMemoryChannel{},
messagingv1beta1.SchemeGroupVersion.WithKind("Channel"): &messagingv1beta1.Channel{},
Expand Down Expand Up @@ -217,10 +211,8 @@ func NewConversionController(ctx context.Context, cmw configmap.Watcher) *contro
}

var (
messagingv1alpha1_ = messagingv1alpha1.SchemeGroupVersion.Version
messagingv1beta1_ = messagingv1beta1.SchemeGroupVersion.Version
sourcesv1alpha1_ = sourcesv1alpha1.SchemeGroupVersion.Version
sourcesv1alpha2_ = sourcesv1alpha2.SchemeGroupVersion.Version
sourcesv1alpha1_ = sourcesv1alpha1.SchemeGroupVersion.Version
sourcesv1alpha2_ = sourcesv1alpha2.SchemeGroupVersion.Version
)

return conversion.NewConversionController(ctx,
Expand All @@ -229,23 +221,6 @@ func NewConversionController(ctx context.Context, cmw configmap.Watcher) *contro

// Specify the types of custom resource definitions that should be converted
map[schema.GroupKind]conversion.GroupKindConversion{
// messaging
messagingv1beta1.Kind("Channel"): {
DefinitionName: messaging.ChannelsResource.String(),
HubVersion: messagingv1alpha1_,
Zygotes: map[string]conversion.ConvertibleObject{
messagingv1alpha1_: &messagingv1alpha1.Channel{},
messagingv1beta1_: &messagingv1beta1.Channel{},
},
},
messagingv1beta1.Kind("InMemoryChannel"): {
DefinitionName: messaging.InMemoryChannelsResource.String(),
HubVersion: messagingv1alpha1_,
Zygotes: map[string]conversion.ConvertibleObject{
messagingv1alpha1_: &messagingv1alpha1.InMemoryChannel{},
messagingv1beta1_: &messagingv1beta1.InMemoryChannel{},
},
},
// Sources
sourcesv1alpha2.Kind("ApiServerSource"): {
DefinitionName: sources.ApiServerSourceResource.String(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ spec:
JSONPath: .metadata.creationTimestamp
versions:
- name: v1alpha1
served: true
served: false
storage: false
- name: v1beta1
served: true
Expand Down
2 changes: 1 addition & 1 deletion config/core/resources/channel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ spec:
JSONPath: .metadata.creationTimestamp
versions:
- name: v1alpha1
served: true
served: false
storage: false
schema:
openAPIV3Schema:
Expand Down
2 changes: 1 addition & 1 deletion config/core/resources/subscription.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ spec:
x-kubernetes-preserve-unknown-fields: true
versions:
- name: v1alpha1
served: true
served: false
storage: false
- name: v1beta1
served: true
Expand Down
6 changes: 3 additions & 3 deletions docs/broker/example_brokers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
---

# By not specifying a spec, the default Channel for the namespace will be used.
apiVersion: eventing.knative.dev/v1alpha1
apiVersion: eventing.knative.dev/v1beta1
kind: Broker
metadata:
name: default
Expand All @@ -28,13 +28,13 @@ metadata:
# can be used, and thus guarantee the durability of the events that are sent to this
# Broker, like here with Kafka:

apiVersion: eventing.knative.dev/v1alpha1
apiVersion: eventing.knative.dev/v1beta1
kind: Broker
metadata:
name: kafka
spec:
channelTemplateSpec:
apiVersion: messaging.knative.dev/v1alpha1
apiVersion: messaging.knative.dev/v1beta1
kind: KafkaChannel
spec:
numPartitions: 3
Expand Down
11 changes: 5 additions & 6 deletions docs/delivery/imc-one-per-subcriber.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
apiVersion: messaging.knative.dev/v1alpha1
apiVersion: messaging.knative.dev/v1beta1
kind: InMemoryChannel
metadata:
name: imc
Expand All @@ -8,9 +8,8 @@ spec:
retry: 5
backoffPolicy: exponential
backoffDelay: 3s
subscribable: # populated by Subscription
subscribers:
- subscriberURI: mysub.default.svc.cluster.local
delivery:
deadLetterSinkURI: mydls.default.svc.cluster.local
subscribers:
- subscriberURI: mysub.default.svc.cluster.local
delivery:
deadLetterSinkURI: mydls.default.svc.cluster.local

9 changes: 4 additions & 5 deletions docs/delivery/imc.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,16 @@
apiVersion: messaging.knative.dev/v1alpha1
apiVersion: messaging.knative.dev/v1beta1
kind: InMemoryChannel
metadata:
name: imc
spec:
delivery:
deadLetterSink:
apiVersion: serving.knative.dev/v1beta1
apiVersion: serving.knative.dev/v1
kind: Service
name: handle-error
retry: 5
backoffPolicy: exponential
backoffDelay: 3s
subscribable: # populated by Subscription
subscribers:
- subscriberURI: mysub.default.svc.cluster.local
subscribers:
- subscriberURI: mysub.default.svc.cluster.local

4 changes: 2 additions & 2 deletions hack/update-codegen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ chmod +x ${CODEGEN_PKG}/generate-groups.sh
# instead of the $GOPATH directly. For normal projects this can be dropped.
${CODEGEN_PKG}/generate-groups.sh "deepcopy,client,informer,lister" \
knative.dev/eventing/pkg/client knative.dev/eventing/pkg/apis \
"eventing:v1beta1 messaging:v1alpha1 messaging:v1beta1 flows:v1beta1 sources:v1alpha1 sources:v1alpha2 configs:v1alpha1" \
"eventing:v1beta1 messaging:v1beta1 flows:v1beta1 sources:v1alpha1 sources:v1alpha2 configs:v1alpha1" \
--go-header-file ${REPO_ROOT_DIR}/hack/boilerplate/boilerplate.go.txt

# Deep copy config
Expand All @@ -65,7 +65,7 @@ ${CODEGEN_PKG}/generate-groups.sh "deepcopy" \
chmod +x ${KNATIVE_CODEGEN_PKG}/hack/generate-knative.sh
${KNATIVE_CODEGEN_PKG}/hack/generate-knative.sh "injection" \
knative.dev/eventing/pkg/client knative.dev/eventing/pkg/apis \
"eventing:v1beta1 messaging:v1alpha1 messaging:v1beta1 flows:v1beta1 sources:v1alpha1 sources:v1alpha2 duck:v1alpha1 duck:v1beta1 configs:v1alpha1" \
"eventing:v1beta1 messaging:v1beta1 flows:v1beta1 sources:v1alpha1 sources:v1alpha2 duck:v1alpha1 duck:v1beta1 configs:v1alpha1" \
--go-header-file ${REPO_ROOT_DIR}/hack/boilerplate/boilerplate.go.txt

# Make sure our dependencies are up-to-date
Expand Down
2 changes: 1 addition & 1 deletion pkg/adapter/mtping/pingsource_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ var (
Name: sinkName,
Namespace: testNS,
Kind: "Channel",
APIVersion: "messaging.knative.dev/v1alpha1",
APIVersion: "messaging.knative.dev/v1beta1",
},
}

Expand Down
46 changes: 46 additions & 0 deletions pkg/apis/duck/v1alpha1/register.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Copyright 2020 The Knative Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package v1alpha1

import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

// SchemeGroupVersion is group version used to register these objects
var SchemeGroupVersion = schema.GroupVersion{Group: "duck.knative.dev", Version: "v1alpha1"}

// Kind takes an unqualified kind and returns back a Group qualified GroupKind
func Kind(kind string) schema.GroupKind {
return SchemeGroupVersion.WithKind(kind).GroupKind()
}

var (
SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
AddToScheme = SchemeBuilder.AddToScheme
)

// Adds the list of known types to Scheme.
func addKnownTypes(scheme *runtime.Scheme) error {
scheme.AddKnownTypes(SchemeGroupVersion,
&Channelable{},
&ChannelableList{},
)
metav1.AddToGroupVersion(scheme, SchemeGroupVersion)
return nil
}
52 changes: 52 additions & 0 deletions pkg/apis/duck/v1alpha1/register_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package v1alpha1

import (
"testing"

"github.com/google/go-cmp/cmp"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
)

// Kind takes an unqualified resource and returns a Group qualified GroupKind
func TestKind(t *testing.T) {
want := schema.GroupKind{
Group: "duck.knative.dev",
Kind: "kind",
}

got := Kind("kind")

if diff := cmp.Diff(want, got); diff != "" {
t.Errorf("unexpected resource (-want, +got) = %v", diff)
}
}

// TestKnownTypes makes sure that expected types get added.
func TestKnownTypes(t *testing.T) {
scheme := runtime.NewScheme()
addKnownTypes(scheme)
types := scheme.KnownTypes(SchemeGroupVersion)

for _, name := range []string{
"Channelable",
"ChannelableList",
} {
if _, ok := types[name]; !ok {
t.Errorf("Did not find %q as registered type", name)
}
}

}
10 changes: 0 additions & 10 deletions pkg/apis/eventing/v1beta1/test_helper.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import (
corev1 "k8s.io/api/core/v1"

duckv1beta1 "knative.dev/eventing/pkg/apis/duck/v1beta1"
messagingv1alpha1 "knative.dev/eventing/pkg/apis/messaging/v1alpha1"
messagingv1beta1 "knative.dev/eventing/pkg/apis/messaging/v1beta1"
"knative.dev/pkg/apis"
duckv1 "knative.dev/pkg/apis/duck/v1"
Expand All @@ -31,15 +30,6 @@ type testHelper struct{}
// TestHelper contains helpers for unit tests.
var TestHelper = testHelper{}

// Moved to here from ../v1alpha1 while we migrate things...
func (testHelper) ReadySubscriptionStatusV1Alpha1() *messagingv1alpha1.SubscriptionStatus {
ss := &messagingv1alpha1.SubscriptionStatus{}
ss.MarkChannelReady()
ss.MarkReferencesResolved()
ss.MarkAddedToChannel()
return ss
}

func (testHelper) ReadySubscriptionCondition() *apis.Condition {
return &apis.Condition{
Type: apis.ConditionReady,
Expand Down
2 changes: 1 addition & 1 deletion pkg/apis/flows/v1beta1/sequence_lifecycle_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ func getChannelable(ready bool) *eventingduckv1beta1.Channelable {
URL, _ := apis.ParseURL("http://example.com")
c := eventingduckv1beta1.Channelable{
TypeMeta: metav1.TypeMeta{
APIVersion: "messaging.knative.dev/v1alpha1",
APIVersion: "messaging.knative.dev/v1beta1",
Kind: "InMemoryChannel",
},
ObjectMeta: metav1.ObjectMeta{},
Expand Down
Loading