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 595f17a5527aa3287bb2dd2b2edbaa7d8fcd37bb Author: phantomjinx <[email protected]> AuthorDate: Wed Nov 24 21:34:28 2021 +0000 Converts remaining e2e tests to actions * Modifies workflows accordingly --- .github/actions/e2e-build/action.yml | 40 +++++++++ .github/actions/e2e-builder/action.yml | 91 ++++++++++++++++++++ .github/actions/e2e-knative-yaks/action.yml | 99 ++++++++++++++++++++++ .github/actions/e2e-knative/action.yml | 93 +++++++++++++++++++++ .github/actions/e2e-local/action.yml | 43 ++++++++++ .github/actions/kamel-install-yaks/action.yml | 35 ++++++++ .github/workflows/build.yml | 16 +--- .github/workflows/builder.yml | 49 +---------- .github/workflows/knative.yml | 114 +++----------------------- .github/workflows/local.yml | 19 +---- 10 files changed, 421 insertions(+), 178 deletions(-) diff --git a/.github/actions/e2e-build/action.yml b/.github/actions/e2e-build/action.yml new file mode 100644 index 0000000..feaad8c --- /dev/null +++ b/.github/actions/e2e-build/action.yml @@ -0,0 +1,40 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: e2e-build +description: 'End-to-End tests for build use-cases' + +runs: + using: "composite" + + steps: + + - id: prepare-env + name: Prepare Test Environment + uses: ./.github/actions/kamel-prepare-env + + - name: Cache modules + uses: actions/cache@v1 + with: + path: ~/go/pkg/mod + key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} + restore-keys: | + ${{ runner.os }}-go- + + - name: Test + shell: bash + run: make diff --git a/.github/actions/e2e-builder/action.yml b/.github/actions/e2e-builder/action.yml new file mode 100644 index 0000000..68f9311 --- /dev/null +++ b/.github/actions/e2e-builder/action.yml @@ -0,0 +1,91 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: e2e-builder +description: 'End-to-End tests for builder use-cases' + +inputs: + cluster-config-data: + description: 'The configuration of the underlying cluster (if cluster-type is custom)' + required: false + publisher: + description: 'The publishing strategy to be used' + required: true + +runs: + using: "composite" + + steps: + - id: prepare-env + name: Prepare Test Environment + uses: ./.github/actions/kamel-prepare-env + + - id: configure-cluster + name: Configure Platform + uses: ./.github/actions/kamel-config-cluster + with: + cluster-type: ${{ env.TEST_CLUSTER }} + cluster-config-data: ${{ inputs.cluster-config-data }} + + - id: build-kamel + name: Build Kamel + uses: ./.github/actions/kamel-build + with: + image-registry-push-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PUSH_HOST }} + image-registry-pull-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + image-namespace: ${{ env.CLUSTER_IMAGE_NAMESPACE }} + # Builds the bundle if an OLM is available - depends on cluster being tested + build-bundle: ${{ env.CLUSTER_HAS_OLM }} + # Can be empty and so catalog source will not be created + catalog-source-namespace: ${{ env.CLUSTER_CATALOG_SOURCE_NAMESPACE }} + + - id: install-kamel-cluster-setup + name: Install Kamel Cluster Setup + uses: ./.github/actions/kamel-install-cluster-setup + with: + kube-admin-user-ctx: ${{ env.CLUSTER_KUBE_ADMIN_USER_CTX }} + + - id: run-it + name: Run IT + shell: bash + env: + KAMEL_INSTALL_BUILD_PUBLISH_STRATEGY: ${{ inputs.publisher }} + run: | + # Cluster environment + export CUSTOM_IMAGE=${{ env.BUILD_BINARY_LOCAL_IMAGE_NAME }} + export CUSTOM_VERSION=${{ env.BUILD_BINARY_LOCAL_IMAGE_VERSION }} + + # + # If bundle has been built and installed then use it + # + if [ -n "${{ env.BUILD_BUNDLE_CATALOG_SOURCE }}" ]; then + export KAMEL_INSTALL_OLM_SOURCE_NAMESPACE=${{ env.CLUSTER_IMAGE_NAMESPACE }} + export KAMEL_INSTALL_OLM_SOURCE=${{ env.BUILD_BUNDLE_CATALOG_SOURCE }} + fi + + export KAMEL_INSTALL_REGISTRY=${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + export KAMEL_INSTALL_REGISTRY_INSECURE=${{ env.CLUSTER_IMAGE_REGISTRY_INSECURE }} + export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} + export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} + export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} + + # Then run integration tests + make test-builder + + - name: Cleanup + uses: ./.github/actions/kamel-cleanup + if: ${{ always() }} diff --git a/.github/actions/e2e-knative-yaks/action.yml b/.github/actions/e2e-knative-yaks/action.yml new file mode 100644 index 0000000..e72e4ce --- /dev/null +++ b/.github/actions/e2e-knative-yaks/action.yml @@ -0,0 +1,99 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: e2e-knative-yaks +description: 'End-to-End tests for knative use-cases using yaks' + +inputs: + cluster-config-data: + description: 'The configuration of the underlying cluster (if cluster-type is custom)' + required: false + +runs: + using: "composite" + + steps: + - id: prepare-env + name: Prepare Test Environment + uses: ./.github/actions/kamel-prepare-env + + - id: configure-cluster + name: Configure Platform + uses: ./.github/actions/kamel-config-cluster + with: + cluster-type: ${{ env.TEST_CLUSTER }} + cluster-config-data: ${{ inputs.cluster-config-data }} + + - name: Install YAKS + uses: ./.github/actions/kamel-install-yaks + + - name: Install Knative + uses: ./.github/actions/kamel-install-knative + + - id: build-kamel + name: Build Kamel + uses: ./.github/actions/kamel-build + with: + image-registry-push-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PUSH_HOST }} + image-registry-pull-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + image-namespace: ${{ env.CLUSTER_IMAGE_NAMESPACE }} + # Builds the bundle if an OLM is available - depends on cluster being tested + build-bundle: ${{ env.CLUSTER_HAS_OLM }} + # Can be empty and so catalog source will not be created + catalog-source-namespace: ${{ env.CLUSTER_CATALOG_SOURCE_NAMESPACE }} + + - id: install-kamel-cluster-setup + name: Install Kamel Cluster Setup + uses: ./.github/actions/kamel-install-cluster-setup + with: + kube-admin-user-ctx: ${{ env.CLUSTER_KUBE_ADMIN_USER_CTX }} + + - id: run-it + name: Run IT + shell: bash + run: | + # Cluster environment + export CUSTOM_IMAGE=${{ env.BUILD_BINARY_LOCAL_IMAGE_NAME }} + export CUSTOM_VERSION=${{ env.BUILD_BINARY_LOCAL_IMAGE_VERSION }} + + # + # If bundle has been built and installed then use it + # + if [ -n "${{ env.BUILD_BUNDLE_CATALOG_SOURCE }}" ]; then + export KAMEL_INSTALL_OLM_SOURCE_NAMESPACE=${{ env.CLUSTER_IMAGE_NAMESPACE }} + export KAMEL_INSTALL_OLM_SOURCE=${{ env.BUILD_BUNDLE_CATALOG_SOURCE }} + fi + + export KAMEL_INSTALL_REGISTRY=${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + export KAMEL_INSTALL_REGISTRY_INSECURE=${{ env.CLUSTER_IMAGE_REGISTRY_INSECURE }} + export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} + export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} + export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} + + # Test options + export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) + export KAMEL_INSTALL_OPERATOR_ENV_VARS=KAMEL_INSTALL_DEFAULT_KAMELETS=false + + # Install Yaks globally + yaks install + + # Then run integration tests + yaks test e2e/yaks/common + + - name: Cleanup + uses: ./.github/actions/kamel-cleanup + if: ${{ always() }} diff --git a/.github/actions/e2e-knative/action.yml b/.github/actions/e2e-knative/action.yml new file mode 100644 index 0000000..1c929d3 --- /dev/null +++ b/.github/actions/e2e-knative/action.yml @@ -0,0 +1,93 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: e2e-knative +description: 'End-to-End tests for knative use-cases' + +inputs: + cluster-config-data: + description: 'The configuration of the underlying cluster (if cluster-type is custom)' + required: false + +runs: + using: "composite" + + steps: + - id: prepare-env + name: Prepare Test Environment + uses: ./.github/actions/kamel-prepare-env + + - id: configure-cluster + name: Configure Platform + uses: ./.github/actions/kamel-config-cluster + with: + cluster-type: ${{ env.TEST_CLUSTER }} + cluster-config-data: ${{ inputs.cluster-config-data }} + + - name: Install Knative + uses: ./.github/actions/kamel-install-knative + + - id: build-kamel + name: Build Kamel + uses: ./.github/actions/kamel-build + with: + image-registry-push-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PUSH_HOST }} + image-registry-pull-host: ${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + image-namespace: ${{ env.CLUSTER_IMAGE_NAMESPACE }} + # Builds the bundle if an OLM is available - depends on cluster being tested + build-bundle: ${{ env.CLUSTER_HAS_OLM }} + # Can be empty and so catalog source will not be created + catalog-source-namespace: ${{ env.CLUSTER_CATALOG_SOURCE_NAMESPACE }} + + - id: install-kamel-cluster-setup + name: Install Kamel Cluster Setup + uses: ./.github/actions/kamel-install-cluster-setup + with: + kube-admin-user-ctx: ${{ env.CLUSTER_KUBE_ADMIN_USER_CTX }} + + - id: run-it + name: Run IT + shell: bash + run: | + # Cluster environment + export CUSTOM_IMAGE=${{ env.BUILD_BINARY_LOCAL_IMAGE_NAME }} + export CUSTOM_VERSION=${{ env.BUILD_BINARY_LOCAL_IMAGE_VERSION }} + + # + # If bundle has been built and installed then use it + # + if [ -n "${{ env.BUILD_BUNDLE_CATALOG_SOURCE }}" ]; then + export KAMEL_INSTALL_OLM_SOURCE_NAMESPACE=${{ env.CLUSTER_IMAGE_NAMESPACE }} + export KAMEL_INSTALL_OLM_SOURCE=${{ env.BUILD_BUNDLE_CATALOG_SOURCE }} + fi + + export KAMEL_INSTALL_REGISTRY=${{ env.CLUSTER_IMAGE_REGISTRY_PULL_HOST }} + export KAMEL_INSTALL_REGISTRY_INSECURE=${{ env.CLUSTER_IMAGE_REGISTRY_INSECURE }} + export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} + export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} + export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} + + # Test options + export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) + export KAMEL_INSTALL_OPERATOR_ENV_VARS=KAMEL_INSTALL_DEFAULT_KAMELETS=false + + # Then run integration tests + make test-knative + + - name: Cleanup + uses: ./.github/actions/kamel-cleanup + if: ${{ always() }} diff --git a/.github/actions/e2e-local/action.yml b/.github/actions/e2e-local/action.yml new file mode 100644 index 0000000..47a9d27 --- /dev/null +++ b/.github/actions/e2e-local/action.yml @@ -0,0 +1,43 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: e2e-local +description: 'End-to-End tests for local use-cases' + +runs: + using: "composite" + + steps: + - id: prepare-env + name: Prepare Test Environment + uses: ./.github/actions/kamel-prepare-env + + - id: build-kamel + name: Build Kamel + uses: ./.github/actions/kamel-build + with: + make-rules: 'build-kamel' + + - id: run-it + name: Run IT + shell: bash + run: | + # Configure staging repos + export KAMEL_LOCAL_RUN_MAVEN_REPOSITORIES=$(make get-staging-repo) + + # Then run integration tests + make test-local diff --git a/.github/actions/kamel-install-yaks/action.yml b/.github/actions/kamel-install-yaks/action.yml new file mode 100644 index 0000000..7eb72f0 --- /dev/null +++ b/.github/actions/kamel-install-yaks/action.yml @@ -0,0 +1,35 @@ +# --------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You 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. +# --------------------------------------------------------------------------- + +name: kamel-install-yaks +description: 'Install YAKS artifacts' +runs: + using: "composite" + steps: + - id: get-yaks + name: Get YAKS + shell: bash + run: | + export YAKS_VERSION=0.4.0 + curl --fail -L https://github.com/citrusframework/yaks/releases/download/v${YAKS_VERSION}/yaks-${YAKS_VERSION}-linux-64bit.tar.gz -o yaks.tar.gz + tar -zxf yaks.tar.gz + sudo mv yaks /usr/local/bin/ + + - name: Install YAKS + shell: bash + run: | + yaks install --cluster-setup diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index c8ceb9f..e5c5569 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -63,17 +63,5 @@ jobs: persist-credentials: false submodules: recursive - - id: prepare-env - name: Prepare Test Environment - uses: ./.github/actions/kamel-prepare-env - - - name: Cache modules - uses: actions/cache@v1 - with: - path: ~/go/pkg/mod - key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} - restore-keys: | - ${{ runner.os }}-go- - - - name: Test - run: make + - name: Execute Build Tests + uses: ./.github/actions/e2e-build diff --git a/.github/workflows/builder.yml b/.github/workflows/builder.yml index 888e128..bd77998 100644 --- a/.github/workflows/builder.yml +++ b/.github/workflows/builder.yml @@ -62,49 +62,8 @@ jobs: persist-credentials: false submodules: recursive - - id: prepare-env - name: Prepare Test Environment - uses: ./.github/actions/kamel-prepare-env - - - id: configure-platform - name: Configure Platform - uses: ./.github/actions/kamel-config-cluster + - name: Execute Builder Tests + uses: ./.github/actions/e2e-builder with: - cluster-type: ${{ steps.prepare-env.outputs.cluster-platform }} - kube-config-data: ${{ secrets.KUBE_CONFIG_DATA }} - kube-admin-user-ctx: ${{ secrets.KUBE_ADMIN_USER_CTX }} - kube-user-ctx: ${{ secrets.KUBE_USER_CTX }} - image-registry: ${{ secrets.IMAGE_REGISTRY }} - image-registry-insecure: ${{ secrets.IMAGE_REGISTRY_INSECURE }} - - - - id: build-kamel-binary - name: Build Kamel Binary - uses: ./.github/actions/kamel-build-binary - with: - image-registry: ${{ steps.configure-platform.outputs.image-registry }} - - - name: Install Kamel Cluster Setup - uses: ./.github/actions/kamel-install-cluster-setup - with: - kube-admin-user-ctx: ${{ steps.configure-platform.outputs.kube-admin-user-ctx }} - - - name: Run IT - env: - KAMEL_INSTALL_BUILD_PUBLISH_STRATEGY: ${{ matrix.publisher }} - run: | - # Cluster environment - export KAMEL_INSTALL_REGISTRY=${{ steps.configure-platform.outputs.image-registry }} - export KAMEL_INSTALL_REGISTRY_INSECURE=${{ steps.configure-platform.outputs.image-registry-insecure }} - export CUSTOM_IMAGE=${{ steps.build-kamel-binary.outputs.local-image-name }} - export CUSTOM_VERSION=${{ steps.build-kamel-binary.outputs.local-image-version }} - export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} - export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} - export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} - - # Test options - export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) - export KAMEL_INSTALL_OPERATOR_ENV_VARS=KAMEL_INSTALL_DEFAULT_KAMELETS=false - - # Then run integration tests - make test-builder + cluster-config-data: ${{ secrets.E2E_CLUSTER_CONFIG }} + publisher: ${{ matrix.publisher }} diff --git a/.github/workflows/knative.yml b/.github/workflows/knative.yml index e9048b0..d3cdfd7 100644 --- a/.github/workflows/knative.yml +++ b/.github/workflows/knative.yml @@ -58,111 +58,21 @@ jobs: persist-credentials: false submodules: recursive - - id: prepare-env - name: Prepare Test Environment - uses: ./.github/actions/kamel-prepare-env - - - id: configure-platform - name: Configure Platform - uses: ./.github/actions/kamel-config-cluster - with: - cluster-type: ${{ steps.prepare-env.outputs.cluster-platform }} - - - name: Install Knative - uses: ./.github/actions/kamel-install-knative - - - id: build-kamel-binary - name: Build Kamel Binary - uses: ./.github/actions/kamel-build-binary + - name: Execute KNative Tests + uses: ./.github/actions/e2e-knative with: - image-registry: ${{ steps.configure-platform.outputs.image-registry }} - - - name: Install Kamel Cluster Setup - uses: ./.github/actions/kamel-install-cluster-setup - with: - kube-admin-user-ctx: ${{ steps.configure-platform.outputs.kube-admin-user-ctx }} - - - name: Run IT - run: | - # Cluster environment - export KAMEL_INSTALL_REGISTRY=${{ steps.configure-platform.outputs.image-registry }} - export KAMEL_INSTALL_REGISTRY_INSECURE=${{ steps.configure-platform.outputs.image-registry-insecure }} - export CUSTOM_IMAGE=${{ steps.build-kamel-binary.outputs.local-image-name }} - export CUSTOM_VERSION=${{ steps.build-kamel-binary.outputs.local-image-version }} - export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} - export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} - export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} - - # Test options - export KAMEL_INSTALL_BUILD_PUBLISH_STRATEGY=Spectrum - export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) - export KAMEL_INSTALL_OPERATOR_ENV_VARS=KAMEL_INSTALL_DEFAULT_KAMELETS=false - - # Then run integration tests - make test-knative + cluster-config-data: ${{ secrets.E2E_CLUSTER_CONFIG }} yaks: runs-on: ubuntu-20.04 steps: - - name: Checkout code - uses: actions/checkout@v2 - with: - persist-credentials: false - submodules: recursive - - - id: prepare-env - name: Prepare Test Environment - uses: ./.github/actions/kamel-prepare-env - - - name: Get YAKS - run: | - export YAKS_VERSION=0.4.0 - curl --fail -L https://github.com/citrusframework/yaks/releases/download/v${YAKS_VERSION}/yaks-${YAKS_VERSION}-linux-64bit.tar.gz -o yaks.tar.gz - tar -zxf yaks.tar.gz - sudo mv yaks /usr/local/bin/ - - - id: configure-platform - name: Configure Platform - uses: ./.github/actions/kamel-config-cluster - with: - cluster-type: ${{ steps.prepare-env.outputs.cluster-platform }} - - - name: Install YAKS - run: | - yaks install --cluster-setup - - - name: Install Knative - uses: ./.github/actions/kamel-install-knative - - - id: build-kamel-binary - name: Build Kamel Binary - uses: ./.github/actions/kamel-build-binary - with: - image-registry: ${{ steps.configure-platform.outputs.image-registry }} - - - name: Install Kamel Cluster Setup - uses: ./.github/actions/kamel-install-cluster-setup - with: - kube-admin-user-ctx: ${{ steps.configure-platform.outputs.kube-admin-user-ctx }} - - - name: Run IT - run: | - # Cluster environment - export KAMEL_INSTALL_REGISTRY=${{ steps.configure-platform.outputs.image-registry }} - export KAMEL_INSTALL_REGISTRY_INSECURE=${{ steps.configure-platform.outputs.image-registry-insecure }} - export CUSTOM_IMAGE=${{ steps.build-kamel-binary.outputs.local-image-name }} - export CUSTOM_VERSION=${{ steps.build-kamel-binary.outputs.local-image-version }} - export KAMEL_INSTALL_OPERATOR_IMAGE=${CUSTOM_IMAGE}:${CUSTOM_VERSION} - export CAMEL_K_TEST_IMAGE_NAME=${CUSTOM_IMAGE} - export CAMEL_K_TEST_IMAGE_VERSION=${CUSTOM_VERSION} - - # Test options - export KAMEL_INSTALL_MAVEN_REPOSITORIES=$(make get-staging-repo) - export KAMEL_INSTALL_OPERATOR_ENV_VARS=KAMEL_INSTALL_DEFAULT_KAMELETS=false - export KAMEL_INSTALL_BUILD_PUBLISH_STRATEGY=Spectrum - - # Install Yaks globally - yaks install + - name: Checkout code + uses: actions/checkout@v2 + with: + persist-credentials: false + submodules: recursive - # Then run integration tests - yaks test e2e/yaks/common + - name: Execute KNative YAKS Tests + uses: ./.github/actions/e2e-knative-yaks + with: + cluster-config-data: ${{ secrets.E2E_CLUSTER_CONFIG }} diff --git a/.github/workflows/local.yml b/.github/workflows/local.yml index cd8a9a2..df38900 100644 --- a/.github/workflows/local.yml +++ b/.github/workflows/local.yml @@ -59,20 +59,5 @@ jobs: persist-credentials: false submodules: recursive - - id: prepare-env - name: Prepare Test Environment - uses: ./.github/actions/kamel-prepare-env - - - id: build-kamel-binary - name: Build Kamel Binary - uses: ./.github/actions/kamel-build-binary - with: - make-rules: 'build-kamel' - - - name: Run IT - run: | - # Configure staging repos - export KAMEL_LOCAL_RUN_MAVEN_REPOSITORIES=$(make get-staging-repo) - - # Then run integration tests - make test-local + - name: Execute Local Tests + uses: ./.github/actions/e2e-local
