Skip to content

Commit

Permalink
remove sources v1alpha2 APIs (#5318)
Browse files Browse the repository at this point in the history
  • Loading branch information
lionelvillard authored Apr 28, 2021
1 parent ed14ec8 commit c2d6649
Show file tree
Hide file tree
Showing 121 changed files with 42 additions and 13,597 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/kind-e2e.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,12 @@ jobs:
extra-test-flags: >
-brokerclass=MTChannelBasedBroker
-channels=messaging.knative.dev/v1:Channel,messaging.knative.dev/v1:InMemoryChannel
-sources=sources.knative.dev/v1alpha2:ApiServerSource,sources.knative.dev/v1alpha2:ContainerSource,sources.knative.dev/v1alpha2:PingSource
-sources=sources.knative.dev/v1:ApiServerSource,sources.knative.dev/v1:ContainerSource,sources.knative.dev/v1beta2:PingSource
- test-suite: ./test/conformance
extra-test-flags: >
-brokers=eventing.knative.dev/v1:MTChannelBasedBroker
-channels=messaging.knative.dev/v1:Channel,messaging.knative.dev/v1:InMemoryChannel
-sources=sources.knative.dev/v1beta1:ApiServerSource,sources.knative.dev/v1alpha2:ContainerSource,sources.knative.dev/v1beta1:PingSource
-sources=sources.knative.dev/v1:ApiServerSource,sources.knative.dev/v1:ContainerSource,sources.knative.dev/v1beta2:PingSource
env:
GOPATH: ${{ github.workspace }}
GO111MODULE: off
Expand Down Expand Up @@ -114,7 +114,7 @@ jobs:
# Build and Publish our containers to the docker daemon (including test assets)
export GO111MODULE=on
export GOFLAGS=-mod=vendor
export KO_FLAGS="--platform=linux/amd64"
source ./test/e2e-common.sh
knative_setup
Expand Down
41 changes: 15 additions & 26 deletions cmd/webhook/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,6 @@ import (
"knative.dev/eventing/pkg/apis/sources"
pingdefaultconfig "knative.dev/eventing/pkg/apis/sources/config"
sourcesv1 "knative.dev/eventing/pkg/apis/sources/v1"
sourcesv1alpha2 "knative.dev/eventing/pkg/apis/sources/v1alpha2"
sourcesv1beta1 "knative.dev/eventing/pkg/apis/sources/v1beta1"
sourcesv1beta2 "knative.dev/eventing/pkg/apis/sources/v1beta2"
"knative.dev/eventing/pkg/reconciler/sinkbinding"
Expand All @@ -70,11 +69,6 @@ var ourTypes = map[schema.GroupVersionKind]resourcesemantics.GenericCRD{
messagingv1.SchemeGroupVersion.WithKind("Subscription"): &messagingv1.Subscription{},

// For group sources.knative.dev.
// v1alpha2
sourcesv1alpha2.SchemeGroupVersion.WithKind("ApiServerSource"): &sourcesv1alpha2.ApiServerSource{},
sourcesv1alpha2.SchemeGroupVersion.WithKind("PingSource"): &sourcesv1alpha2.PingSource{},
sourcesv1alpha2.SchemeGroupVersion.WithKind("SinkBinding"): &sourcesv1alpha2.SinkBinding{},
sourcesv1alpha2.SchemeGroupVersion.WithKind("ContainerSource"): &sourcesv1alpha2.ContainerSource{},
// v1beta1
sourcesv1beta1.SchemeGroupVersion.WithKind("ApiServerSource"): &sourcesv1beta1.ApiServerSource{},
sourcesv1beta1.SchemeGroupVersion.WithKind("PingSource"): &sourcesv1beta1.PingSource{},
Expand Down Expand Up @@ -219,10 +213,9 @@ func NewConversionController(ctx context.Context, cmw configmap.Watcher) *contro
}

var (
sourcesv1alpha2_ = sourcesv1alpha2.SchemeGroupVersion.Version
sourcesv1beta1_ = sourcesv1beta1.SchemeGroupVersion.Version
sourcesv1beta2_ = sourcesv1beta2.SchemeGroupVersion.Version
sourcesv1_ = sourcesv1.SchemeGroupVersion.Version
sourcesv1beta1_ = sourcesv1beta1.SchemeGroupVersion.Version
sourcesv1beta2_ = sourcesv1beta2.SchemeGroupVersion.Version
sourcesv1_ = sourcesv1.SchemeGroupVersion.Version
)

return conversion.NewConversionController(ctx,
Expand All @@ -234,38 +227,34 @@ func NewConversionController(ctx context.Context, cmw configmap.Watcher) *contro
// Sources
sourcesv1.Kind("ApiServerSource"): {
DefinitionName: sources.ApiServerSourceResource.String(),
HubVersion: sourcesv1alpha2_,
HubVersion: sourcesv1beta1_,
Zygotes: map[string]conversion.ConvertibleObject{
sourcesv1alpha2_: &sourcesv1alpha2.ApiServerSource{},
sourcesv1beta1_: &sourcesv1beta1.ApiServerSource{},
sourcesv1_: &sourcesv1.ApiServerSource{},
sourcesv1beta1_: &sourcesv1beta1.ApiServerSource{},
sourcesv1_: &sourcesv1.ApiServerSource{},
},
},
sourcesv1beta1.Kind("PingSource"): {
DefinitionName: sources.PingSourceResource.String(),
HubVersion: sourcesv1alpha2_,
HubVersion: sourcesv1beta1_,
Zygotes: map[string]conversion.ConvertibleObject{
sourcesv1alpha2_: &sourcesv1alpha2.PingSource{},
sourcesv1beta1_: &sourcesv1beta1.PingSource{},
sourcesv1beta2_: &sourcesv1beta2.PingSource{},
sourcesv1beta1_: &sourcesv1beta1.PingSource{},
sourcesv1beta2_: &sourcesv1beta2.PingSource{},
},
},
sourcesv1.Kind("SinkBinding"): {
DefinitionName: sources.SinkBindingResource.String(),
HubVersion: sourcesv1alpha2_,
HubVersion: sourcesv1beta1_,
Zygotes: map[string]conversion.ConvertibleObject{
sourcesv1alpha2_: &sourcesv1alpha2.SinkBinding{},
sourcesv1beta1_: &sourcesv1beta1.SinkBinding{},
sourcesv1_: &sourcesv1.SinkBinding{},
sourcesv1beta1_: &sourcesv1beta1.SinkBinding{},
sourcesv1_: &sourcesv1.SinkBinding{},
},
},
sourcesv1.Kind("ContainerSource"): {
DefinitionName: sources.ContainerSourceResource.String(),
HubVersion: sourcesv1alpha2_,
HubVersion: sourcesv1beta1_,
Zygotes: map[string]conversion.ConvertibleObject{
sourcesv1alpha2_: &sourcesv1alpha2.ContainerSource{},
sourcesv1beta1_: &sourcesv1beta1.ContainerSource{},
sourcesv1_: &sourcesv1.ContainerSource{},
sourcesv1beta1_: &sourcesv1beta1.ContainerSource{},
sourcesv1_: &sourcesv1.ContainerSource{},
},
},
},
Expand Down
10 changes: 1 addition & 9 deletions config/core/resources/apiserversource.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ spec:
group: sources.knative.dev
versions:
- &version
name: v1alpha2
name: v1beta1
served: true
storage: false
subresources:
Expand Down Expand Up @@ -261,14 +261,6 @@ spec:
- name: Reason
type: string
jsonPath: ".status.conditions[?(@.type==\"Ready\")].reason"
- <<: *version
name: v1beta1
served: true
storage: false
# the schema of v1beta1 is exactly the same as v1alpha2 schema
schema:
openAPIV3Schema:
<<: *openAPIV3Schema
- <<: *version
name: v1
served: true
Expand Down
10 changes: 1 addition & 9 deletions config/core/resources/containersource.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ spec:
group: sources.knative.dev
versions:
- &version
name: v1alpha2
name: v1beta1
served: true
storage: false
subresources:
Expand Down Expand Up @@ -401,14 +401,6 @@ spec:
- name: Reason
type: string
jsonPath: ".status.conditions[?(@.type=='Ready')].reason"
- <<: *version
name: v1beta1
served: true
storage: false
# the schema of v1beta1 is exactly the same as v1alpha2 schema
schema:
openAPIV3Schema:
<<: *openAPIV3Schema
- <<: *version
name: v1
served: true
Expand Down
147 changes: 7 additions & 140 deletions config/core/resources/pingsource.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ spec:
group: sources.knative.dev
versions:
- &version
name: v1alpha2
name: v1beta1
served: true
storage: false
subresources:
Expand Down Expand Up @@ -96,6 +96,12 @@ spec:
Relative URIs will be resolved using the base URI retrieved
from Ref.'
type: string
timezone:
description: 'Timezone modifies the actual time relative to the specified
timezone. Defaults to the system time zone. More general information
about time zones: https://www.iana.org/time-zones List of valid
timezone values: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'
type: string
status:
type: object
description: 'PingSourceStatus defines the observed state of PingSource (from the controller).'
Expand Down Expand Up @@ -181,145 +187,6 @@ spec:
- name: Reason
type: string
jsonPath: ".status.conditions[?(@.type=='Ready')].reason"
- <<: *version
name: v1beta1
served: true
storage: false
schema:
openAPIV3Schema:
type: object
description: 'PingSource describes an event source with a fixed payload produced on a specified cron schedule.'
properties:
spec:
type: object
description: 'PingSourceSpec defines the desired state of the PingSource (from the client).'
properties:
ceOverrides:
description: 'CloudEventOverrides defines overrides to control the
output format and modifications of the event sent to the sink.'
type: object
properties:
extensions:
description: 'Extensions specify what attribute are added or
overridden on the outbound event. Each `Extensions` key-value
pair are set on the event as an attribute extension independently.'
type: object
additionalProperties:
type: string
x-kubernetes-preserve-unknown-fields: true
jsonData:
description: 'JsonData is json encoded data used as the body of the
event posted to the sink. Default is empty. If set, datacontenttype
will also be set to "application/json".'
type: string
schedule:
description: 'Schedule is the cronjob schedule. Defaults to `* * * * *`.'
type: string
sink:
description: 'Sink is a reference to an object that will resolve to
a uri to use as the sink.'
type: object
properties:
ref:
description: 'Ref points to an Addressable.'
type: object
properties:
apiVersion:
description: 'API version of the referent.'
type: string
kind:
description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
namespace:
description: 'Namespace of the referent. More info:
https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/
This is optional field, it gets defaulted to the
object holding it if left out.'
type: string
uri:
description: 'URI can be an absolute URL(non-empty scheme and
non-empty host) pointing to the target or a relative URI.
Relative URIs will be resolved using the base URI retrieved
from Ref.'
type: string
timezone:
description: 'Timezone modifies the actual time relative to the specified
timezone. Defaults to the system time zone. More general information
about time zones: https://www.iana.org/time-zones List of valid
timezone values: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'
type: string
status:
type: object
description: 'PingSourceStatus defines the observed state of PingSource (from the controller).'
properties:
annotations:
description: 'Annotations is additional Status fields for the Resource
to save some additional State as well as convey more information
to the user. This is roughly akin to Annotations on any k8s resource,
just the reconciler conveying richer information outwards.'
type: object
x-kubernetes-preserve-unknown-fields: true
ceAttributes:
description: 'CloudEventAttributes are the specific attributes that
the Source uses as part of its CloudEvents.'
type: array
items:
type: object
properties:
source:
description: 'Source is the CloudEvents source attribute.'
type: string
type:
description: 'Type refers to the CloudEvent type attribute.'
type: string
conditions:
description: 'Conditions the latest available observations of a resource''s
current state.'
type: array
items:
type: object
required:
- type
- status
properties:
lastTransitionTime:
description: 'LastTransitionTime is the last time the condition
transitioned from one status to another. We use VolatileTime
in place of metav1.Time to exclude this from creating
equality.Semantic differences (all other things held
constant).'
type: string
message:
description: 'A human readable message indicating details
about the transition.'
type: string
reason:
description: 'The reason for the condition''s last transition.'
type: string
severity:
description: 'Severity with which to treat failures of
this type of condition. When this is not specified,
it defaults to Error.'
type: string
status:
description: 'Status of the condition, one of True, False,
Unknown.'
type: string
type:
description: 'Type of condition.'
type: string
observedGeneration:
description: 'ObservedGeneration is the "Generation" of the Service
that was last processed by the controller.'
type: integer
format: int64
sinkUri:
description: 'SinkURI is the current active sink URI that has been
configured for the Source.'
type: string
- <<: *version
name: v1beta2
served: true
Expand Down
6 changes: 1 addition & 5 deletions config/core/resources/sinkbindings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ spec:
group: sources.knative.dev
versions:
- &version
name: v1alpha2
name: v1beta1
served: true
storage: false
subresources:
Expand All @@ -52,10 +52,6 @@ spec:
- name: Reason
type: string
jsonPath: ".status.conditions[?(@.type=='Ready')].reason"
- <<: *version
name: v1beta1
served: true
storage: false
- <<: *version
name: v1
served: true
Expand Down
4 changes: 2 additions & 2 deletions hack/update-codegen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ group "Kubernetes Codegen"
# 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 eventing:v1 messaging:v1 flows:v1 sources:v1alpha2 sources:v1beta1 sources:v1beta2 sources:v1" \
"eventing:v1beta1 eventing:v1 messaging:v1 flows:v1 sources:v1beta1 sources:v1beta2 sources:v1" \
--go-header-file ${REPO_ROOT_DIR}/hack/boilerplate/boilerplate.go.txt

# Deep copy config
Expand All @@ -59,7 +59,7 @@ group "Knative Codegen"
# Knative Injection
${KNATIVE_CODEGEN_PKG}/hack/generate-knative.sh "injection" \
knative.dev/eventing/pkg/client knative.dev/eventing/pkg/apis \
"eventing:v1beta1 eventing:v1 messaging:v1 flows:v1 sources:v1alpha2 sources:v1beta1 sources:v1beta2 sources:v1 duck:v1beta1 duck:v1" \
"eventing:v1beta1 eventing:v1 messaging:v1 flows:v1 sources:v1beta1 sources:v1beta2 sources:v1 duck:v1beta1 duck:v1" \
--go-header-file ${REPO_ROOT_DIR}/hack/boilerplate/boilerplate.go.txt

group "Update deps post-codegen"
Expand Down
Loading

0 comments on commit c2d6649

Please sign in to comment.