diff --git a/.github/workflows/cli.yaml b/.github/workflows/cli.yaml index 17b38b3a768a..95fa84446a36 100644 --- a/.github/workflows/cli.yaml +++ b/.github/workflows/cli.yaml @@ -34,9 +34,6 @@ jobs: uses: actions/setup-go@v5 with: go-version-file: go.mod - - uses: helm/kind-action@v1.9.0 - with: - version: "v0.20.0" - name: run karmadactl init test run: | export CLUSTER_VERSION=kindest/node:${{ matrix.k8s }} @@ -48,11 +45,18 @@ jobs: export KUBECONFIG=${HOME}/karmada/karmada-apiserver.config GO111MODULE=on go install github.com/onsi/ginkgo/v2/ginkgo ginkgo -v --race --trace -p --focus="[BasicPropagation] propagation testing deployment propagation testing" ./test/e2e/ - - uses: chainguard-dev/actions/kind-diag@main - # Only upload logs on failure. - if: ${{ failure() }} + - name: export logs + if: always() + run: | + export ARTIFACTS_PATH=${{ github.workspace }}/karmadactl-test-logs/${{ matrix.k8s }}/ + mkdir -p $ARTIFACTS_PATH + + mkdir -p $ARTIFACTS_PATH/karmada-host + kind export logs --name=karmada-host $ARTIFACTS_PATH/karmada-host + - name: upload logs + if: always() + uses: actions/upload-artifact@v3 with: - cluster-resources: nodes,namespaces, - namespace-resources: configmaps,pods,svc - artifact-name: logs-${{ matrix.k8s}} + name: karmadactl_test_logs_${{ matrix.k8s }} + path: ${{ github.workspace }}/karmadactl-test-logs/${{ matrix.k8s }}/ diff --git a/hack/cli-testing-environment.sh b/hack/cli-testing-environment.sh index 0fc8c715bc09..0dac42b1c465 100755 --- a/hack/cli-testing-environment.sh +++ b/hack/cli-testing-environment.sh @@ -33,6 +33,29 @@ MEMBER_CLUSTER_2_NAME=${MEMBER_CLUSTER_2_NAME:-"member2"} CLUSTER_VERSION=${CLUSTER_VERSION:-"${DEFAULT_CLUSTER_VERSION}"} BUILD_PATH=${BUILD_PATH:-"_output/bin/linux/amd64"} + +# install kind and kubectl +kind_version=v0.20.0 +echo -n "Preparing: 'kind' existence check - " +if util::cmd_exist kind; then + echo "passed" +else + echo "not pass" + util::install_tools "sigs.k8s.io/kind" $kind_version +fi +# get arch name and os name in bootstrap +BS_ARCH=$(go env GOARCH) +BS_OS=$(go env GOOS) +# check arch and os name before installing +util::install_environment_check "${BS_ARCH}" "${BS_OS}" +echo -n "Preparing: 'kubectl' existence check - " +if util::cmd_exist kubectl; then + echo "passed" +else + echo "not pass" + util::install_kubectl "" "${BS_ARCH}" "${BS_OS}" +fi + # prepare the newest crds echo "Prepare the newest crds" cd charts/karmada/