k3s: retry ip address retrieval during setup (#1374) #967
This file contains hidden or 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: Integration | |
on: | |
push: | |
tags: ["v*"] | |
branches: [main] | |
paths-ignore: | |
- "**/*.md" | |
- "**/*.nix" | |
- "**/*.lock" | |
pull_request: | |
branches: [main] | |
paths-ignore: | |
- "**/*.md" | |
- "**/*.nix" | |
- "**/*.lock" | |
workflow_dispatch: | |
inputs: | |
debug_enabled: | |
description: 'Debug with tmate set "debug_enabled"' | |
required: false | |
default: "false" | |
jobs: | |
kubernetes-docker: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Go | |
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 | |
with: | |
go-version: "1.24.5" | |
- name: Install CLI deps | |
run: brew install kubectl docker coreutils lima | |
- name: Build and Install | |
run: make && sudo make install | |
- name: tmate debugging session | |
uses: mxschmitt/action-tmate@7b6a61a73bbb9793cb80ad69b8dd8ac19261834c # v3.22 | |
with: | |
limit-access-to-actor: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Start Colima | |
run: colima start --runtime docker --kubernetes | |
- name: Delay | |
run: sleep 20 | |
- name: Validate Kubernetes | |
run: kubectl cluster-info && kubectl version && kubectl get nodes -o wide | |
- name: Teardown | |
run: colima delete -f | |
kubernetes-containerd: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Go | |
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 | |
with: | |
go-version: "1.24.5" | |
- name: Install CLI deps | |
run: brew install kubectl docker coreutils lima | |
- name: Build and Install | |
run: make && sudo make install | |
- name: tmate debugging session | |
uses: mxschmitt/action-tmate@7b6a61a73bbb9793cb80ad69b8dd8ac19261834c # v3.22 | |
with: | |
limit-access-to-actor: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Start | |
run: colima start --runtime containerd --kubernetes | |
- name: Delay | |
run: sleep 20 | |
- name: Validate Kubernetes | |
run: kubectl cluster-info && kubectl version && kubectl get nodes -o wide | |
- name: Teardown | |
run: colima delete -f | |
docker: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Go | |
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 | |
with: | |
go-version: "1.24.5" | |
- name: Install CLI deps | |
run: brew install kubectl docker coreutils lima | |
- name: Build and Install | |
run: make && sudo make install | |
- name: tmate debugging session | |
uses: mxschmitt/action-tmate@7b6a61a73bbb9793cb80ad69b8dd8ac19261834c # v3.22 | |
with: | |
limit-access-to-actor: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Start Colima | |
run: colima start --runtime docker | |
- name: Delay | |
run: sleep 10 | |
- name: Validate Docker | |
run: docker ps && docker info | |
- name: Validate DNS | |
run: colima ssh -- sh -c "sudo apt-get update -y -qq && sudo apt-get install -qq dnsutils && nslookup host.docker.internal" | |
- name: Build Image | |
run: docker build integration | |
- name: Run Image arm64 | |
run: docker run --rm --platform=linux/arm64 ghcr.io/linuxcontainers/alpine:latest uname -a | |
- name: Run Image amd64 | |
run: docker run --rm --platform=linux/amd64 ghcr.io/linuxcontainers/alpine:latest uname -a | |
- name: Stop | |
run: colima stop | |
- name: Teardown | |
run: colima delete -f | |
containerd: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Go | |
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 | |
with: | |
go-version: "1.24.5" | |
- name: Install CLI deps | |
run: brew install kubectl docker coreutils lima | |
- name: Build and Install | |
run: make && sudo make install | |
- name: tmate debugging session | |
uses: mxschmitt/action-tmate@7b6a61a73bbb9793cb80ad69b8dd8ac19261834c # v3.22 | |
with: | |
limit-access-to-actor: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Start Colima | |
run: colima start --runtime containerd | |
- name: Delay | |
run: sleep 10 | |
- name: Validate Containerd | |
run: colima nerdctl ps && colima nerdctl info | |
- name: Validate DNS | |
run: colima ssh -- sh -c "sudo apt-get update -y -qq && sudo apt-get install -qq dnsutils && nslookup host.docker.internal" | |
- name: Build Image | |
run: colima nerdctl -- build integration | |
- name: Run Image arm64 | |
run: colima nerdctl -- run --rm --platform=linux/arm64 ghcr.io/linuxcontainers/alpine:latest uname -a | |
- name: Run Image amd64 | |
run: colima nerdctl -- run --rm --platform=linux/amd64 ghcr.io/linuxcontainers/alpine:latest uname -a | |
- name: Stop | |
run: colima stop | |
- name: Teardown | |
run: colima delete -f | |
incus: | |
runs-on: macos-13 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Go | |
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 | |
with: | |
go-version: "1.24.5" | |
- name: Install CLI deps | |
run: brew install kubectl docker coreutils lima incus | |
- name: Build and Install | |
run: make && sudo make install | |
- name: tmate debugging session | |
uses: mxschmitt/action-tmate@7b6a61a73bbb9793cb80ad69b8dd8ac19261834c # v3.22 | |
with: | |
limit-access-to-actor: true | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
if: ${{ github.event_name == 'workflow_dispatch' && github.event.inputs.debug_enabled }} | |
- name: Start Colima | |
run: colima start --runtime incus | |
- name: Delay | |
run: sleep 10 | |
- name: Validate Incus | |
run: incus version && incus list | |
- name: Validate DNS | |
run: colima ssh -- sh -c "sudo apt-get update -y -qq && sudo apt-get install -qq dnsutils && nslookup host.docker.internal" | |
- name: Stop | |
run: colima stop | |
- name: Teardown | |
run: colima delete -f |