chore: initialise idx env #371
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: Checks | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
jobs: | |
go-tests: | |
name: Run tests | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.22' | |
check-latest: true | |
- name: Test | |
run: go test -race -coverprofile=coverage.out -covermode=atomic -v ./... | |
- name: Upload coverage reports | |
uses: codecov/codecov-action@v4 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
chart-test-current: | |
name: Test and lint charts | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Set up Helm | |
uses: azure/setup-helm@v4 | |
with: | |
version: v3.11.1 | |
- name: Set up Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: '1.22' | |
check-latest: true | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
with: | |
platforms: arm64,s390x | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.7 | |
- name: Set up chart-testing | |
uses: helm/[email protected] | |
- name: Run chart-testing (lint) | |
run: ct lint --config ct.yaml | |
- name: Run GoReleaser | |
uses: goreleaser/goreleaser-action@v5 | |
with: | |
distribution: goreleaser | |
version: latest | |
args: release --snapshot --clean | |
env: | |
# Fix tag for snapshots | |
GORELEASER_CURRENT_TAG: v0.0.1 | |
GORELEASER_PREVIOUS_TAG: v0.0.0 | |
- name: Create kind cluster | |
uses: helm/kind-action@v1 | |
- name: Install MetalLB to allow LoadBalancer services | |
run: | | |
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.9/config/manifests/metallb-native.yaml | |
kubectl wait --namespace metallb-system \ | |
--for=condition=ready pod \ | |
--selector=app=metallb \ | |
--timeout=90s | |
cat <<EOF | kubectl apply -f - | |
apiVersion: metallb.io/v1beta1 | |
kind: IPAddressPool | |
metadata: | |
name: example | |
namespace: metallb-system | |
spec: | |
addresses: | |
- 172.19.255.200-172.19.255.250 | |
--- | |
apiVersion: metallb.io/v1beta1 | |
kind: L2Advertisement | |
metadata: | |
name: empty | |
namespace: metallb-system | |
EOF | |
- name: Load image into Kind cluster | |
run: kind load docker-image "caddy/ingress:test-image" --name chart-testing | |
- name: Run chart-testing (install) | |
run: ct install --config ct.yaml |