Skip to content

ci: fix integration tests #812

ci: fix integration tests

ci: fix integration tests #812

Workflow file for this run

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@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Fetch homebrew-core commit messages
uses: actions/checkout@v4
with:
# needed by ./hack/brew-install-version.sh
repository: homebrew/homebrew-core
path: homebrew-core
fetch-depth: 0
filter: tree:0
- name: Install CLI deps
env:
HOMEBREW_NO_AUTO_UPDATE: "1"
HOMEBREW_NO_INSTALL_UPGRADE: "1"
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: "1"
run: |
brew install --overwrite [email protected] kubectl docker coreutils lima
./.github/hack/brew-install-version.sh qemu 8.2.1
- name: Build and Install
run: make && sudo make install
- name: tmate debugging session
uses: mxschmitt/action-tmate@v3
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@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Fetch homebrew-core commit messages
uses: actions/checkout@v4
with:
# needed by ./hack/brew-install-version.sh
repository: homebrew/homebrew-core
path: homebrew-core
fetch-depth: 0
filter: tree:0
- name: Install CLI deps
env:
HOMEBREW_NO_AUTO_UPDATE: "1"
HOMEBREW_NO_INSTALL_UPGRADE: "1"
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: "1"
run: |
brew install --overwrite [email protected] kubectl docker coreutils lima
./.github/hack/brew-install-version.sh qemu 8.2.1
- name: Build and Install
run: make && sudo make install
- name: tmate debugging session
uses: mxschmitt/action-tmate@v3
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@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Fetch homebrew-core commit messages
uses: actions/checkout@v4
with:
# needed by ./hack/brew-install-version.sh
repository: homebrew/homebrew-core
path: homebrew-core
fetch-depth: 0
filter: tree:0
- name: Install CLI deps
env:
HOMEBREW_NO_AUTO_UPDATE: "1"
HOMEBREW_NO_INSTALL_UPGRADE: "1"
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: "1"
run: |
brew install --overwrite [email protected] kubectl docker coreutils lima
./.github/hack/brew-install-version.sh qemu 8.2.1
- name: Build and Install
run: make && sudo make install
- name: tmate debugging session
uses: mxschmitt/action-tmate@v3
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: Stop
run: colima stop
- name: Teardown
run: colima delete -f
containerd:
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Fetch homebrew-core commit messages
uses: actions/checkout@v4
with:
# needed by ./hack/brew-install-version.sh
repository: homebrew/homebrew-core
path: homebrew-core
fetch-depth: 0
filter: tree:0
- name: Install CLI deps
env:
HOMEBREW_NO_AUTO_UPDATE: "1"
HOMEBREW_NO_INSTALL_UPGRADE: "1"
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: "1"
run: |
brew install --overwrite [email protected] kubectl docker coreutils lima
./.github/hack/brew-install-version.sh qemu 8.2.1
- name: Build and Install
run: make && sudo make install
- name: tmate debugging session
uses: mxschmitt/action-tmate@v3
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: Stop
run: colima stop
- name: Teardown
run: colima delete -f
incus:
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Fetch homebrew-core commit messages
uses: actions/checkout@v4
with:
# needed by ./hack/brew-install-version.sh
repository: homebrew/homebrew-core
path: homebrew-core
fetch-depth: 0
filter: tree:0
- name: Install CLI deps
env:
HOMEBREW_NO_AUTO_UPDATE: "1"
HOMEBREW_NO_INSTALL_UPGRADE: "1"
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: "1"
run: |
brew install --overwrite [email protected] kubectl docker coreutils lima incus
./.github/hack/brew-install-version.sh qemu 8.2.1
- name: Build and Install
run: make && sudo make install
- name: tmate debugging session
uses: mxschmitt/action-tmate@v3
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