Skip to content

populate vm.vzVm at creation time #69

populate vm.vzVm at creation time

populate vm.vzVm at creation time #69

Workflow file for this run

name: Build
on:
push:
branches:
- "main"
- "test-gha"
tags:
- "*"
pull_request: {}
jobs:
golangci:
name: lint
runs-on: macos-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-go@v6
with:
go-version-file: go.mod
- name: golangci-lint
run: make lint
build:
runs-on: ${{ matrix.runner }}
strategy:
fail-fast: false
matrix:
# Test matrix covers multiple macOS versions and architectures:
# - macos-13: x86_64 runner, supports virtualization for integration tests
# - macos-14: arm64 (Apple Silicon) runner, unit tests only
# - macos-15: arm64 (Apple Silicon) runner, unit tests + artifact upload
runner:
- macos-13
- macos-14
- macos-15-intel
steps:
- name: Check out repository code
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: >-
WORKAROUND: Fetch tags that points to the revisions
checked-out(actions/checkout#1467)
run: |-
git fetch --tags --force
- name: Set up Go
uses: actions/setup-go@v6
with:
go-version-file: go.mod
- name: Build
run: make
- name: Install qemu-img
run: |
brew update
brew install qemu
- name: Verify qemu-img is installed
run: qemu-img --version
- name: Unit tests
run: make test-unit
# Integration tests run only on macos-13 due to virtualization requirements
# NOTE: macos-13 runners will be deprecated by the end of 2025
# See: https://github.blog/changelog/2025-07-11-upcoming-changes-to-macos-hosted-runners-macos-latest-migration-and-xcode-support-policy-updates/#macos-13-is-closing-down
- name: Integration tests
if: matrix.runner == 'macos-15-intel'
run: make test-integration
- name: vet
run: go vet ./...
- name: Upload vfkit artifact
if: matrix.runner == 'macos-15'
uses: actions/upload-artifact@v4
with:
name: Unsigned vfkit Universal Binary
path: "./out/vfkit"
if-no-files-found: error