diff --git a/.github/workflows/ci-helm-installation-test.yml b/.github/workflows/ci-helm-installation-test.yml new file mode 100644 index 00000000..d8d572b8 --- /dev/null +++ b/.github/workflows/ci-helm-installation-test.yml @@ -0,0 +1,63 @@ +name: CI Helm Installation Test + +on: + push: + branches: + - '**' + workflow_dispatch: + inputs: + debug_enabled: + type: boolean + description: 'Run the build with tmate debugging enabled' + required: false + default: false + +jobs: + smoke-test-with-helm: + runs-on: ubuntu-latest + + steps: + - name: Check out repository + uses: actions/checkout@v4 + + - name: Set up Helm + uses: azure/setup-helm@v1 + with: + version: v3.16.3 + + - name: Create Kind Cluster + uses: helm/kind-action@v1.10.0 + with: + version: v0.21.0 + wait: 90s + cluster_name: helm-test-cluster + + - name: Build COSI Driver Docker Image + run: | + make build + + - name: Load Docker Image into Kind Cluster + run: | + kind load docker-image ghcr.io/scality/cosi-driver:latest --name helm-test-cluster + + - name: Install Scality COSI Helm Chart + run: | + helm install scality-cosi-driver ./helm/scality-cosi-driver \ + --namespace scality-object-storage \ + --create-namespace \ + --set image.tag=latest + + - name: Verify Helm Installation + run: | + kubectl get all -n scality-object-storage + + - name: Verify Helm Installation + run: | + chmod +x .github/scripts/verify_helm_install.sh + .github/scripts/verify_helm_install.sh + + - name: Cleanup Helm Release and Namespace + run: | + helm uninstall scality-cosi-driver -n scality-object-storage + kubectl delete namespace scality-object-storage + if: always()