diff --git a/.github/workflows/kind.yaml b/.github/workflows/kind.yaml new file mode 100644 index 0000000..563831a --- /dev/null +++ b/.github/workflows/kind.yaml @@ -0,0 +1,43 @@ +name: Create Cluster with Registry + +on: + push: {} + +jobs: + setup-and-deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Set up Docker registry + run: | + docker network create kind || true + docker run -d --network kind --name registry -p 5000:5000 registry:2 + + - name: Set up Kind cluster + uses: helm/kind-action@v1.7.0 + with: + version: v0.20.0 + env: + KIND_EXPERIMENTAL_DOCKER_NETWORK: kind + + - name: Connect Kind to the Docker registry + run: | + cat < kind-config.yaml + apiVersion: kind.x-k8s.io/v1alpha4 + kind: Cluster + containerdConfigPatches: + - | + [plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:5000"] + endpoint = ["http://registry:5000"] + EOF + kind create cluster --config kind-config.yaml + + - name: Build Docker image + run: | + docker build -t localhost:5000/my-app:latest . + + - name: Push Docker image to local registry + run: | + docker push localhost:5000/my-app:latest \ No newline at end of file