diff --git a/e2e/install/upgrade/upgrade_test.go b/e2e/install/upgrade/upgrade_test.go index 2c9d71ac23..f0c1e05c99 100644 --- a/e2e/install/upgrade/upgrade_test.go +++ b/e2e/install/upgrade/upgrade_test.go @@ -47,36 +47,25 @@ func TestUpgrade(t *testing.T) { // We start the test by installing previous version operator lastVersion, ok := os.LookupEnv("LAST_RELEASED_VERSION") g.Expect(ok).To(BeTrue(), "Missing last released version: you need to set it into LAST_RELEASED_VERSION env var") - lastVersionDir := fmt.Sprintf("/tmp/camel-k-v-%s", lastVersion) - // We clone and install the previous installed operator - // from source with tag - ExpectExecSucceed(t, g, - exec.Command( - "rm", - "-rf", - lastVersionDir, - )) - ExpectExecSucceed(t, g, - exec.Command( - "git", - "clone", - "https://github.com/apache/camel-k.git", - lastVersionDir, - )) - checkoutCmd := exec.Command( - "git", - "checkout", - fmt.Sprintf("v%s", lastVersion), - ) - checkoutCmd.Dir = lastVersionDir - ExpectExecSucceed(t, g, checkoutCmd) - installPrevCmd := exec.Command( - "make", - "install-k8s-global", - fmt.Sprintf("NAMESPACE=%s", ns), - ) - installPrevCmd.Dir = lastVersionDir - ExpectExecSucceed(t, g, installPrevCmd) + // We install the previous operator directly from the git tag using Kustomize + kustomizeDir, err := os.MkdirTemp("", "camel-k-upgrade-*") + g.Expect(err).To(BeNil()) + defer os.RemoveAll(kustomizeDir) + + kustomization := fmt.Sprintf(`namespace: %s +resources: +- github.com/apache/camel-k/install/overlays/kubernetes/descoped?ref=v%s +`, ns, lastVersion) + + err = os.WriteFile(fmt.Sprintf("%s/kustomization.yaml", kustomizeDir), []byte(kustomization), 0o644) + g.Expect(err).To(BeNil()) + + ExpectExecSucceed(t, g, Kubectl( + "apply", + "-k", + kustomizeDir, + "--server-side", + )) // Refresh the test client to account for the newly installed CRDs RefreshClient(t) diff --git a/pkg/apis/camel/v1/trait/zz_generated.deepcopy.go b/pkg/apis/camel/v1/trait/zz_generated.deepcopy.go index 7fc4e10bc7..8df426e361 100644 --- a/pkg/apis/camel/v1/trait/zz_generated.deepcopy.go +++ b/pkg/apis/camel/v1/trait/zz_generated.deepcopy.go @@ -5,7 +5,7 @@ package trait import ( - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" networkingv1 "k8s.io/api/networking/v1" "k8s.io/apimachinery/pkg/util/intstr" ) diff --git a/pkg/apis/camel/v1/zz_generated.deepcopy.go b/pkg/apis/camel/v1/zz_generated.deepcopy.go index 3be380fab1..091b0a56c5 100644 --- a/pkg/apis/camel/v1/zz_generated.deepcopy.go +++ b/pkg/apis/camel/v1/zz_generated.deepcopy.go @@ -6,6 +6,7 @@ package v1 import ( "encoding/json" + "github.com/apache/camel-k/v2/pkg/apis/camel/v1/trait" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/pkg/apis/duck/keda/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/duck/keda/v1alpha1/zz_generated.deepcopy.go index 27d57d72ab..450aba305f 100644 --- a/pkg/apis/duck/keda/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/duck/keda/v1alpha1/zz_generated.deepcopy.go @@ -5,7 +5,7 @@ package v1alpha1 import ( - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/runtime" ) diff --git a/script/get_catalog.sh b/script/get_catalog.sh index e7fbb2817c..2c4e1c511e 100755 --- a/script/get_catalog.sh +++ b/script/get_catalog.sh @@ -36,6 +36,12 @@ fi # Refresh catalog sets. We can clean any leftover as well. rm -f ${rootdir}/pkg/resources/resources/camel-catalog-* +if ! command -v mvn &> /dev/null +then + echo "Maven (mvn) is required but not installed." + exit 1 +fi + mvn -q dependency:copy -Dartifact="org.apache.camel.k:camel-k-catalog:$runtime_version:yaml:catalog" \ -Dmdep.useBaseVersion=true \ -DoutputDirectory=${rootdir}/resources/ \