mirror of
https://github.com/slackhq/nebula.git
synced 2026-05-16 04:47:38 +02:00
Bumps [Vampire/setup-wsl](https://github.com/vampire/setup-wsl) from 3 to 7. - [Release notes](https://github.com/vampire/setup-wsl/releases) - [Commits](https://github.com/vampire/setup-wsl/compare/v3...v7) --- updated-dependencies: - dependency-name: Vampire/setup-wsl dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
133 lines
4.1 KiB
YAML
133 lines
4.1 KiB
YAML
name: smoke-extra
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
pull_request:
|
|
types: [opened, synchronize, labeled, reopened]
|
|
paths:
|
|
- '.github/workflows/smoke**'
|
|
- '**Makefile'
|
|
- '**.go'
|
|
- '**.proto'
|
|
- 'go.mod'
|
|
- 'go.sum'
|
|
jobs:
|
|
|
|
smoke-extra-libvirt:
|
|
if: github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'smoke-test-extra')
|
|
name: ${{ matrix.target }}
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
target:
|
|
- freebsd-amd64
|
|
- openbsd-amd64
|
|
- netbsd-amd64
|
|
- linux-amd64-ipv6disable
|
|
env:
|
|
VAGRANT_DEFAULT_PROVIDER: libvirt
|
|
steps:
|
|
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: actions/setup-go@v6
|
|
with:
|
|
go-version: '1.25'
|
|
check-latest: true
|
|
|
|
- name: add hashicorp source
|
|
run: wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg && echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
|
|
|
|
- name: install vagrant and libvirt
|
|
run: |
|
|
sudo apt-get update && sudo apt-get install -y vagrant libvirt-daemon-system libvirt-dev
|
|
sudo chmod 666 /dev/kvm
|
|
sudo usermod -aG libvirt $(whoami)
|
|
sudo chmod 666 /var/run/libvirt/libvirt-sock
|
|
vagrant plugin install vagrant-libvirt
|
|
|
|
- name: ${{ matrix.target }}
|
|
run: make smoke-vagrant/${{ matrix.target }}
|
|
|
|
timeout-minutes: 30
|
|
|
|
# linux-386 needs VirtualBox, which conflicts with KVM/libvirt -- isolated job.
|
|
smoke-extra-virtualbox:
|
|
if: github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'smoke-test-extra')
|
|
name: linux-386
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
VAGRANT_DEFAULT_PROVIDER: virtualbox
|
|
steps:
|
|
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: actions/setup-go@v6
|
|
with:
|
|
go-version: '1.25'
|
|
check-latest: true
|
|
|
|
- name: add hashicorp source
|
|
run: wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg && echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
|
|
|
|
- name: install vagrant and virtualbox
|
|
run: |
|
|
sudo apt-get update && sudo apt-get install -y vagrant virtualbox
|
|
sudo rmmod kvm_amd kvm_intel kvm 2>/dev/null || true
|
|
|
|
- name: linux-386
|
|
run: make smoke-vagrant/linux-386
|
|
|
|
timeout-minutes: 30
|
|
|
|
smoke-windows:
|
|
if: github.ref == 'refs/heads/master' || contains(github.event.pull_request.labels.*.name, 'smoke-test-extra')
|
|
name: Run windows smoke test
|
|
runs-on: windows-latest
|
|
steps:
|
|
|
|
- uses: actions/checkout@v6
|
|
|
|
- uses: actions/setup-go@v6
|
|
with:
|
|
go-version: '1.25'
|
|
check-latest: true
|
|
|
|
# WSL2 + Ubuntu so the smoke can run a real linux peer with its own
|
|
# netns. iputils-ping is needed for the in-WSL ping check. WSL1 has no
|
|
# real kernel and would lack /dev/net/tun, so we have to force WSL2.
|
|
- uses: Vampire/setup-wsl@v7
|
|
with:
|
|
distribution: Ubuntu-24.04
|
|
additional-packages: iputils-ping iproute2
|
|
|
|
# Vampire/setup-wsl provisions WSL1 even when the WSL2 platform is present.
|
|
# Convert the distro to WSL2 explicitly before we try to use /dev/net/tun.
|
|
- name: convert distro to WSL2
|
|
shell: pwsh
|
|
run: |
|
|
wsl --set-version Ubuntu-24.04 2
|
|
wsl --shutdown
|
|
wsl --list --verbose
|
|
|
|
- name: build windows nebula
|
|
run: make bin-windows
|
|
|
|
- name: build linux nebula for WSL
|
|
shell: bash
|
|
env:
|
|
GOOS: linux
|
|
GOARCH: amd64
|
|
run: |
|
|
mkdir -p build/linux-amd64
|
|
go build -o build/linux-amd64/nebula ./cmd/nebula
|
|
|
|
- name: run smoke-windows
|
|
shell: pwsh
|
|
working-directory: ./.github/workflows/smoke
|
|
run: ./smoke-windows.ps1
|
|
|
|
timeout-minutes: 15
|