Files
colima/.github/workflows/integration.yml
T
dependabot[bot] 7cc9f46c83 build(deps): bump actions/setup-go from 6.3.0 to 6.4.0 (#1548)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 6.3.0 to 6.4.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/4b73464bb391d4059bd26b0524d20df3927bd417...4a3601121dd01d1626a1e23e37211e3254c1c06c)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-version: 6.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-30 22:26:13 +01:00

280 lines
8.2 KiB
YAML

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-15-intel
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
with:
go-version: "1.26.1"
- 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@c0afd6f790e3a5564914980036ebf83216678101 # v3.23
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-15-intel
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
with:
go-version: "1.26.1"
- 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@c0afd6f790e3a5564914980036ebf83216678101 # v3.23
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-15-intel
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
with:
go-version: "1.26.1"
- 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@c0afd6f790e3a5564914980036ebf83216678101 # v3.23
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: Temp Delete
run: colima delete -f
- name: Restart
run: colima start --runtime docker
- name: Assert runtime disk arm64
run: docker run --pull=never --rm --platform=linux/arm64 ghcr.io/linuxcontainers/alpine:latest uname -a
- name: Assert runtime disk amd64
run: docker run --pull=never --rm --platform=linux/amd64 ghcr.io/linuxcontainers/alpine:latest uname -a
- name: Teardown
run: colima delete --data -f
containerd:
runs-on: macos-15-intel
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
with:
go-version: "1.26.1"
- 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@c0afd6f790e3a5564914980036ebf83216678101 # v3.23
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: Temp Delete
run: colima delete -f
- name: Restart
run: colima start --runtime containerd
- name: Assert runtime disk arm64
run: colima nerdctl -- run --pull=never --rm --platform=linux/arm64 ghcr.io/linuxcontainers/alpine:latest uname -a
- name: Assert runtime disk amd64
run: colima nerdctl -- run --pull=never --rm --platform=linux/amd64 ghcr.io/linuxcontainers/alpine:latest uname -a
- name: Teardown
run: colima delete --data -f
incus:
runs-on: macos-15-intel
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up Go
uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0
with:
go-version: "1.26.1"
- 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@c0afd6f790e3a5564914980036ebf83216678101 # v3.23
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: Launch Instance
run: incus launch images:alpine/edge test-instance
- name: Delay for instance
run: sleep 5
- name: Validate Instance
run: incus exec test-instance -- cat /etc/os-release
- 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: Temp Delete
run: colima delete -f
- name: Restart
run: colima start --runtime incus
- name: Delay for restart
run: sleep 10
- name: Assert instance restored
run: incus exec test-instance -- cat /etc/os-release
- name: Teardown
run: colima delete --data -f