Skip to content

Fix/binary sha verification (backport #49) #144

Fix/binary sha verification (backport #49)

Fix/binary sha verification (backport #49) #144

Workflow file for this run

name: Test Chart
on:
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
test-e2e:
name: Run on Ubuntu
runs-on: ubuntu-latest
steps:
- name: Clone the code
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
- name: Setup Go
uses: actions/setup-go@4b73464bb391d4059bd26b0524d20df3927bd417 # v6
with:
go-version-file: go.mod
- name: Install kind v0.31.0
run: |
KIND_VERSION=v0.31.0
KIND_SHA256_AMD64=eb244cbafcc157dff60cf68693c14c9a75c4e6e6fedaf9cd71c58117cb93e3fa
KIND_SHA256_ARM64=8e1014e87c34901cc422a1445866835d1e666f2a61301c27e722bdeab5a1f7e4
ARCH=$(go env GOARCH)
case "${ARCH}" in
amd64) KIND_SHA256=${KIND_SHA256_AMD64} ;;
arm64) KIND_SHA256=${KIND_SHA256_ARM64} ;;
*) echo "Unsupported architecture: ${ARCH}" && exit 1 ;;
esac
curl -Lo ./kind "https://kind.sigs.k8s.io/dl/${KIND_VERSION}/kind-linux-${ARCH}"
echo "${KIND_SHA256} ./kind" | sha256sum -c -
chmod +x ./kind
sudo mv ./kind /usr/local/bin/kind
- name: Verify kind installation
run: kind version
- name: Create kind cluster
run: kind create cluster
- name: Prepare upgrade-toolkit
run: |
go mod tidy && git diff --exit-code go.mod go.sum
make docker-build IMG=controller:latest
kind load docker-image controller:latest
- name: Install Helm
run: make install-helm
- name: Lint Helm Chart
run: |
helm lint ./dist/chart
# TODO: Uncomment if Prometheus is enabled
# - name: Install Prometheus Operator CRDs
# run: |
# helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
# helm repo update
# helm install prometheus-crds prometheus-community/prometheus-operator-crds
- name: Install external CRDs
run: make install-external-crds
- name: Deploy manager via Helm
run: |
make helm-deploy IMG=controller:latest
- name: Check Helm release status
run: |
make helm-status
- name: Debug pod status
if: failure()
run: |
kubectl -n harvester-system get pods -o wide
kubectl -n harvester-system describe pods
kubectl -n harvester-system logs -l control-plane=controller-manager --tail=100