Skip to content

Commit

Permalink
Fix #952, #888: upgrade to Knative 0.9.0
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolaferraro committed Oct 1, 2019
1 parent a751302 commit c77912d
Show file tree
Hide file tree
Showing 22 changed files with 378 additions and 230 deletions.
1 change: 1 addition & 0 deletions deploy/operator-role-knative.yaml
Expand Up @@ -37,6 +37,7 @@ rules:
- watch
- apiGroups:
- eventing.knative.dev
- messaging.knative.dev
resources:
- "*"
verbs:
Expand Down
1 change: 1 addition & 0 deletions deploy/resources.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 3 additions & 10 deletions e2e/test_support.go
Expand Up @@ -39,7 +39,7 @@ import (
"github.com/apache/camel-k/pkg/util/log"
"github.com/apache/camel-k/pkg/util/openshift"
"github.com/google/uuid"
eventing "github.com/knative/eventing/pkg/apis/eventing/v1alpha1"
messaging "knative.dev/eventing/pkg/apis/messaging/v1alpha1"
"github.com/onsi/gomega"
projectv1 "github.com/openshift/api/project/v1"
"github.com/spf13/cobra"
Expand Down Expand Up @@ -496,22 +496,15 @@ func createKamelPod(ns string, name string, command ...string) error {

func createKnativeChannel(ns string, name string) func() error {
return func() error {
channel := eventing.Channel{
channel := messaging.InMemoryChannel{
TypeMeta: metav1.TypeMeta{
Kind: "Channel",
APIVersion: eventing.SchemeGroupVersion.String(),
APIVersion: messaging.SchemeGroupVersion.String(),
},
ObjectMeta: metav1.ObjectMeta{
Namespace: ns,
Name: name,
},
Spec: eventing.ChannelSpec{
Provisioner: &v1.ObjectReference{
APIVersion: "eventing.knative.dev/v1alpha1",
Kind: "ClusterChannelProvisioner",
Name: "in-memory",
},
},
}
return testClient.Create(testContext, &channel)
}
Expand Down
9 changes: 2 additions & 7 deletions examples/knative/messages-channel.yaml
Expand Up @@ -15,12 +15,7 @@
# limitations under the License.
# ---------------------------------------------------------------------------

apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
apiVersion: messaging.knative.dev/v1alpha1
kind: InMemoryChannel
metadata:
name: messages
spec:
provisioner:
apiVersion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: in-memory
9 changes: 2 additions & 7 deletions examples/knative/words-channel.yaml
Expand Up @@ -15,12 +15,7 @@
# limitations under the License.
# ---------------------------------------------------------------------------

apiVersion: eventing.knative.dev/v1alpha1
kind: Channel
apiVersion: messaging.knative.dev/v1alpha1
kind: InMemoryChannel
metadata:
name: words
spec:
provisioner:
apiVersion: eventing.knative.dev/v1alpha1
kind: ClusterChannelProvisioner
name: in-memory
11 changes: 5 additions & 6 deletions go.mod
@@ -1,7 +1,8 @@
module github.com/apache/camel-k

require (
cloud.google.com/go v0.43.0 // indirect
contrib.go.opencensus.io/exporter/prometheus v0.1.0 // indirect
contrib.go.opencensus.io/exporter/stackdriver v0.12.2
github.com/Masterminds/semver v1.4.2
github.com/alecthomas/jsonschema v0.0.0-20190122210438-a6952de1bbe6
github.com/coreos/prometheus-operator v0.29.0
Expand All @@ -10,9 +11,6 @@ require (
github.com/google/go-containerregistry v0.0.0-20190206233756-dbc4da98389f // indirect
github.com/google/uuid v1.1.1
github.com/jpillora/backoff v0.0.0-20170918002102-8eab2debe79d
github.com/knative/eventing v0.7.1
github.com/knative/pkg v0.0.0-20190624141606-d82505e6c5b4
github.com/knative/serving v0.7.1
github.com/mitchellh/mapstructure v1.1.2
github.com/onsi/ginkgo v1.8.0 // indirect
github.com/onsi/gomega v1.5.0
Expand All @@ -27,13 +25,14 @@ require (
github.com/stoewer/go-strcase v1.0.2
github.com/stretchr/testify v1.3.0
go.uber.org/multierr v1.1.0
golang.org/x/net v0.0.0-20190628185345-da137c7871d7 // indirect
golang.org/x/sys v0.0.0-20190712062909-fae7ac547cb7 // indirect
gopkg.in/yaml.v2 v2.2.2
k8s.io/api v0.0.0-20190612125737-db0771252981
k8s.io/apimachinery v0.0.0-20190612125636-6a5db36e93ad
k8s.io/client-go v11.0.0+incompatible
k8s.io/kube-openapi v0.0.0-20190510232812-a01b7d5d6c22 // indirect
knative.dev/eventing v0.9.0
knative.dev/pkg v0.0.0-20190913154335-74659889c421
knative.dev/serving v0.9.0
sigs.k8s.io/controller-runtime v0.1.10
)

Expand Down
64 changes: 54 additions & 10 deletions go.sum

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion pkg/apis/addtoscheme_knative_eventing_v1alpha1.go
Expand Up @@ -18,10 +18,12 @@ limitations under the License.
package apis

import (
eventing "github.com/knative/eventing/pkg/apis/eventing/v1alpha1"
eventing "knative.dev/eventing/pkg/apis/eventing/v1alpha1"
messaging "knative.dev/eventing/pkg/apis/messaging/v1alpha1"
)

func init() {
// Register the types with the Scheme so the components can map objects to GroupVersionKinds and back
AddToSchemes = append(AddToSchemes, eventing.AddToScheme)
AddToSchemes = append(AddToSchemes, messaging.AddToScheme)
}
2 changes: 1 addition & 1 deletion pkg/apis/addtoscheme_knative_serving_v1alpha1.go
Expand Up @@ -18,7 +18,7 @@ limitations under the License.
package apis

import (
serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
serving "knative.dev/serving/pkg/apis/serving/v1beta1"
)

func init() {
Expand Down
5 changes: 3 additions & 2 deletions pkg/trait/classpath_test.go
Expand Up @@ -23,10 +23,11 @@ import (
"strings"
"testing"

serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
appsv1 "k8s.io/api/apps/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
servingv1 "knative.dev/serving/pkg/apis/serving/v1"
serving "knative.dev/serving/pkg/apis/serving/v1beta1"

"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
"github.com/apache/camel-k/pkg/util/kubernetes"
Expand Down Expand Up @@ -147,7 +148,7 @@ func TestApplyClasspathTraitWithKNativeResource(t *testing.T) {
trait, environment := createNominalClasspathTest()

s := serving.Service{}
s.Spec.ConfigurationSpec.Template = &serving.RevisionTemplateSpec{}
s.Spec.ConfigurationSpec.Template = servingv1.RevisionTemplateSpec{}
s.Spec.ConfigurationSpec.Template.Spec.Containers = []corev1.Container{
{
Name: defaultContainerName,
Expand Down
6 changes: 3 additions & 3 deletions pkg/trait/container.go
Expand Up @@ -23,7 +23,7 @@ import (

"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
"github.com/apache/camel-k/pkg/util/envvar"
serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
serving "knative.dev/serving/pkg/apis/serving/v1beta1"
appsv1 "k8s.io/api/apps/v1"
corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource"
Expand Down Expand Up @@ -130,11 +130,11 @@ func (t *containerTrait) Apply(e *Environment) error {
}

e.ConfigureVolumesAndMounts(
&service.Spec.ConfigurationSpec.GetTemplate().Spec.Volumes,
&service.Spec.ConfigurationSpec.Template.Spec.Volumes,
&container.VolumeMounts,
)

service.Spec.ConfigurationSpec.GetTemplate().Spec.Containers = append(service.Spec.ConfigurationSpec.GetTemplate().Spec.Containers, container)
service.Spec.ConfigurationSpec.Template.Spec.Containers = append(service.Spec.ConfigurationSpec.Template.Spec.Containers, container)
})

if t.Expose != nil && *t.Expose {
Expand Down
6 changes: 3 additions & 3 deletions pkg/trait/istio.go
Expand Up @@ -21,8 +21,8 @@ import (
"strconv"

"github.com/apache/camel-k/pkg/apis/camel/v1alpha1"
serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
appsv1 "k8s.io/api/apps/v1"
servingv1 "knative.dev/serving/pkg/apis/serving/v1"
)

type istioTrait struct {
Expand Down Expand Up @@ -56,8 +56,8 @@ func (t *istioTrait) Apply(e *Environment) error {
e.Resources.VisitDeployment(func(d *appsv1.Deployment) {
d.Spec.Template.Annotations = t.injectIstioAnnotation(d.Spec.Template.Annotations, true)
})
e.Resources.VisitKnativeConfigurationSpec(func(cs *serving.ConfigurationSpec) {
cs.GetTemplate().Annotations = t.injectIstioAnnotation(cs.GetTemplate().Annotations, false)
e.Resources.VisitKnativeConfigurationSpec(func(cs *servingv1.ConfigurationSpec) {
cs.Template.Annotations = t.injectIstioAnnotation(cs.Template.Annotations, false)
})
}
return nil
Expand Down
33 changes: 17 additions & 16 deletions pkg/trait/istio_test.go
Expand Up @@ -26,10 +26,11 @@ import (

"github.com/stretchr/testify/assert"

serving "github.com/knative/serving/pkg/apis/serving/v1alpha1"
appsv1 "k8s.io/api/apps/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
servingv1 "knative.dev/serving/pkg/apis/serving/v1"
serving "knative.dev/serving/pkg/apis/serving/v1beta1"
)

func NewIstioTestEnv(t *testing.T, d *appsv1.Deployment, s *serving.Service, enabled bool) Environment {
Expand Down Expand Up @@ -73,9 +74,9 @@ func NewIstioTestEnv(t *testing.T, d *appsv1.Deployment, s *serving.Service, ena

func TestIstioInject(t *testing.T) {
s := serving.Service{
Spec: serving.ServiceSpec{
ConfigurationSpec: serving.ConfigurationSpec{
Template: &serving.RevisionTemplateSpec{},
Spec: servingv1.ServiceSpec{
ConfigurationSpec: servingv1.ConfigurationSpec{
Template: servingv1.RevisionTemplateSpec{},
},
},
}
Expand All @@ -89,15 +90,15 @@ func TestIstioInject(t *testing.T) {
err := env.Catalog.apply(&env)
assert.Nil(t, err)

assert.Empty(t, s.Spec.ConfigurationSpec.GetTemplate().Annotations[istioSidecarInjectAnnotation])
assert.Empty(t, s.Spec.ConfigurationSpec.Template.Annotations[istioSidecarInjectAnnotation])
assert.NotEmpty(t, d.Spec.Template.Annotations[istioSidecarInjectAnnotation])
}

func TestIstioForcedInjectTrue(t *testing.T) {
s := serving.Service{
Spec: serving.ServiceSpec{
ConfigurationSpec: serving.ConfigurationSpec{
Template: &serving.RevisionTemplateSpec{},
Spec: servingv1.ServiceSpec{
ConfigurationSpec: servingv1.ConfigurationSpec{
Template: servingv1.RevisionTemplateSpec{},
},
},
}
Expand All @@ -113,15 +114,15 @@ func TestIstioForcedInjectTrue(t *testing.T) {
err := env.Catalog.apply(&env)
assert.Nil(t, err)

assert.Equal(t, "true", s.Spec.ConfigurationSpec.GetTemplate().Annotations[istioSidecarInjectAnnotation])
assert.Equal(t, "true", s.Spec.ConfigurationSpec.Template.Annotations[istioSidecarInjectAnnotation])
assert.Equal(t, "true", d.Spec.Template.Annotations[istioSidecarInjectAnnotation])
}

func TestIstioForcedInjectFalse(t *testing.T) {
s := serving.Service{
Spec: serving.ServiceSpec{
ConfigurationSpec: serving.ConfigurationSpec{
Template: &serving.RevisionTemplateSpec{},
Spec: servingv1.ServiceSpec{
ConfigurationSpec: servingv1.ConfigurationSpec{
Template: servingv1.RevisionTemplateSpec{},
},
},
}
Expand All @@ -137,15 +138,15 @@ func TestIstioForcedInjectFalse(t *testing.T) {
err := env.Catalog.apply(&env)
assert.Nil(t, err)

assert.Equal(t, "false", s.Spec.ConfigurationSpec.GetTemplate().Annotations[istioSidecarInjectAnnotation])
assert.Equal(t, "false", s.Spec.ConfigurationSpec.Template.Annotations[istioSidecarInjectAnnotation])
assert.Equal(t, "false", d.Spec.Template.Annotations[istioSidecarInjectAnnotation])
}

func TestIstioDisabled(t *testing.T) {
s := serving.Service{
Spec: serving.ServiceSpec{
ConfigurationSpec: serving.ConfigurationSpec{
Template: &serving.RevisionTemplateSpec{},
Spec: servingv1.ServiceSpec{
ConfigurationSpec: servingv1.ConfigurationSpec{
Template: servingv1.RevisionTemplateSpec{},
},
},
}
Expand Down

0 comments on commit c77912d

Please sign in to comment.