This is an automated email from the ASF dual-hosted git repository. astefanutti pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel-k.git
commit fe6b24c49eeb0a0aa3e81c1c2e343f3c0d1dc717 Author: Antonin Stefanutti <[email protected]> AuthorDate: Wed Sep 8 12:06:49 2021 +0200 test(native): Add memory limits to build e2e tests --- e2e/builder/build_test.go | 25 ++++++++++++++++++++----- e2e/native/native_test.go | 5 ++++- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/e2e/builder/build_test.go b/e2e/builder/build_test.go index 1e4bfe6..3d350f6 100644 --- a/e2e/builder/build_test.go +++ b/e2e/builder/build_test.go @@ -22,6 +22,7 @@ limitations under the License. package builder import ( + "os" "testing" "time" @@ -29,6 +30,7 @@ import ( . "github.com/apache/camel-k/e2e/support" "github.com/apache/camel-k/pkg/apis/camel/v1" + "github.com/apache/camel-k/pkg/util/openshift" ) type kitOptions struct { @@ -37,7 +39,7 @@ type kitOptions struct { } func TestKitTimerToLogFullBuild(t *testing.T) { - doKitFullBuild(t, "timer-to-log", "5m0s", TestTimeoutLong, kitOptions{ + doKitFullBuild(t, "timer-to-log", "300Mi", "5m0s", TestTimeoutLong, kitOptions{ dependencies: []string{ "camel:timer", "camel:log", }, @@ -45,7 +47,7 @@ func TestKitTimerToLogFullBuild(t *testing.T) { } func TestKitKnativeFullBuild(t *testing.T) { - doKitFullBuild(t, "knative", "5m0s", TestTimeoutLong, kitOptions{ + doKitFullBuild(t, "knative", "300mi", "5m0s", TestTimeoutLong, kitOptions{ dependencies: []string{ "camel-k-knative", }, @@ -53,7 +55,7 @@ func TestKitKnativeFullBuild(t *testing.T) { } func TestKitTimerToLogFullNativeBuild(t *testing.T) { - doKitFullBuild(t, "timer-to-log", "15m0s", 2*TestTimeoutLong, kitOptions{ + doKitFullBuild(t, "timer-to-log", "4Gi", "15m0s", 2*TestTimeoutLong, kitOptions{ dependencies: []string{ "camel:timer", "camel:log", }, @@ -63,9 +65,21 @@ func TestKitTimerToLogFullNativeBuild(t *testing.T) { }) } -func doKitFullBuild(t *testing.T, name string, buildTimeout string, testTimeout time.Duration, options kitOptions) { +func doKitFullBuild(t *testing.T, name string, memoryLimit string, buildTimeout string, testTimeout time.Duration, options kitOptions) { WithNewTestNamespace(t, func(ns string) { - Expect(Kamel("install", "-n", ns, "--build-timeout", buildTimeout).Execute()).To(Succeed()) + strategy := os.Getenv("KAMEL_INSTALL_BUILD_PUBLISH_STRATEGY") + ocp, err := openshift.IsOpenShift(TestClient()) + Expect(err).To(Succeed()) + + args := []string{"install", "-n", ns} + args = append(args, "--build-timeout", buildTimeout) + // TODO: configure build Pod resources if applicable + if strategy == "Spectrum" || ocp { + args = append(args, "--operator-resources", "limits.memory="+memoryLimit) + } + + Expect(Kamel(args...).Execute()).To(Succeed()) + buildKitArgs := []string{"kit", "create", name, "-n", ns} for _, dependency := range options.dependencies { buildKitArgs = append(buildKitArgs, "-d", dependency) @@ -74,6 +88,7 @@ func doKitFullBuild(t *testing.T, name string, buildTimeout string, testTimeout buildKitArgs = append(buildKitArgs, "-t", trait) } Expect(Kamel(buildKitArgs...).Execute()).To(Succeed()) + Eventually(Build(ns, name)).ShouldNot(BeNil()) Eventually(BuildPhase(ns, name), testTimeout).Should(Equal(v1.BuildPhaseSucceeded)) Eventually(KitPhase(ns, name), testTimeout).Should(Equal(v1.IntegrationKitPhaseReady)) diff --git a/e2e/native/native_test.go b/e2e/native/native_test.go index e3fd7ca..a1ea20b 100644 --- a/e2e/native/native_test.go +++ b/e2e/native/native_test.go @@ -39,7 +39,10 @@ var ( func TestAutomaticRolloutDeploymentFromFastJarToNativeKit(t *testing.T) { WithNewTestNamespace(t, func(ns string) { - Expect(Kamel("install", "-n", ns, "--build-timeout", "15m0s").Execute()).To(Succeed()) + Expect(Kamel("install", "-n", ns, + "--build-timeout", "15m0s", + "--operator-resources", "limits.memory=4Gi", + ).Execute()).To(Succeed()) Eventually(PlatformPhase(ns), TestTimeoutMedium).Should(Equal(v1.IntegrationPlatformPhaseReady)) name := "jvm-to-native"
