echance poddecoration partition sort rule #93
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: E2E | |
on: | |
pull_request: | |
branches: | |
- main | |
- release-* | |
push: | |
branches: | |
- main | |
- release-* | |
env: | |
GO_VERSION: '1.19' | |
KIND_VERSION: 'v0.14.0' | |
KIND_IMAGE: 'kindest/node:v1.22.2' | |
KIND_CLUSTER_NAME: 'e2e-test' | |
jobs: | |
CollaSet: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: ${{ env.GO_VERSION }} | |
- name: Cache Go Dependencies | |
uses: actions/cache@v2 | |
with: | |
path: ~/go/pkg/mod | |
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} | |
restore-keys: ${{ runner.os }}-go- | |
- name: Setup Kind Cluster | |
uses: helm/kind-action@v1.10.0 | |
with: | |
node_image: ${{ env.KIND_IMAGE }} | |
cluster_name: ${{ env.KIND_CLUSTER_NAME }} | |
config: ./test/e2e/scripts/kind-conf.yaml | |
version: ${{ env.KIND_VERSION }} | |
- name: Build Image | |
run: | | |
mkdir -p /tmp/kind | |
make kind-kube-config | |
make docker-build | |
make sync-kind-image | |
- name: Install Operating | |
run: | | |
set -ex | |
kubectl cluster-info | |
make deploy | |
for ((i=1;i<10;i++)); | |
do | |
set +e | |
PODS=$(kubectl get pod -n kusionstack-system | grep -c '1/1') | |
set -e | |
if [ "$PODS" -eq 1 ]; then | |
break | |
fi | |
sleep 3 | |
done | |
set -e | |
PODS=$(kubectl get pod -n kusionstack-system | grep -c '1/1') | |
if [ "$PODS" -eq 1 ]; then | |
echo "Wait for Kusionstack-manager ready successfully" | |
else | |
echo "Timeout to wait for Kusionstack-manager ready" | |
fi | |
- name: Run e2e Tests | |
run: | | |
make ginkgo | |
set -e | |
KUBECONFIG=/tmp/kind/kubeconfig.yaml ./bin/ginkgo -timeout 10m -v --focus='\[apps\] CollaSet' test/e2e | |
restartCount=$(kubectl get pod -n kusionstack-system -l control-plane=controller-manager --no-headers | awk '{print $4}') | |
if [ "${restartCount}" -eq "0" ];then | |
echo "Kusionstack-manager has not restarted" | |
else | |
kubectl get pod -n kusionstack-system -l control-plane=controller-manager --no-headers | |
echo "Kusionstack-manager has restarted, abort!!!" | |
kubectl get pod -n kusionstack-system --no-headers -l control-plane=controller-manager | awk '{print $1}' | xargs kubectl logs -p -n kusionstack-system | |
exit 1 | |
fi |