download

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	RunnerVersion       = "2.335.1"
	CNIVersion          = "1.6.2"
	ContainerdVersion   = "2.2.2"
	RuncVersion         = "1.3.4"
	AlpineVersion       = "3.21.3"
	LinuxVirtVersion    = "6.12.83-r0"
	GolangCILintVersion = "2.11.4"
	HugoVersion         = "0.160.1"

	// Alpine prunes superseded packages from dl-cdn.alpinelinux.org as soon
	// as a new revision lands, so any pinned upstream URL goes 404 within
	// weeks. We mirror linux-virt to a deps/ tag on this repo's GitHub
	// Releases and verify by SHA256 so a re-upload can't silently swap
	// content. Bump procedure: download both APKs from upstream, sha256sum,
	// `gh release create deps/linux-virt-<ver> ...`, upload both, then
	// bump the constants here. See PR #54 for the first such bump.
	LinuxVirtSHA256AArch64 = "7f0bdcf7d16339f90cf7ff44c50b6cabc75e9be877224d6e3076fc5b187c1c65"
	LinuxVirtSHA256X86_64  = "5d06f7833cb19e708a1b74f8cb09f7ddb3eb10e08e9fa716db73287bc7b119c8"
)

Variables

This section is empty.

Functions

func All

func All()

All downloads all assets appropriate for the current OS.

func Cni

func Cni() error

Cni downloads the CNI plugins tarball (Linux only, no-op on other OS).

func Cnilinux

func Cnilinux() error

Cnilinux always downloads the Linux amd64 CNI plugins (for cross-compile embed).

func Cnilinuxarm64

func Cnilinuxarm64() error

Cnilinuxarm64 downloads the Linux arm64 CNI plugins (for macOS embed cross-compile).

func EnsurePlaceholders

func EnsurePlaceholders() error

EnsurePlaceholders creates empty placeholder files for any go:embed targets that don't exist. This allows go test, go vet, and linting to succeed on platforms where cross-compiled assets aren't available (e.g. ephemerd-linux on Windows without a full two-stage build).

func Golangcilint

func Golangcilint() error

Golangcilint downloads golangci-lint to ./bin/.

func Hugo

func Hugo() error

Hugo downloads Hugo extended for the docs site.

func Initrd

func Initrd() error

Initrd builds a minimal initramfs for the Linux VM on Darwin. Contains busybox (static), e2fsprogs (for first-boot mkfs.ext4), kernel modules needed for Apple Vz (virtio_mmio and friends), and a custom /init script that loads the modules, formats the disk, mounts virtio-fs, and exec's ephemerd-linux. No-op on non-Darwin.

func Initrdx86

func Initrdx86() error

Initrdx86 builds a minimal initramfs for the Linux VM on Windows (Hyper-V). Contains busybox (static), e2fsprogs (for first-boot mkfs.ext4), kernel modules needed for Hyper-V (FAT32, ext4, netfilter), and a custom /init script that loads modules, mounts the root + assets disks, and exec's ephemerd-linux as PID 1.

func Kernel

func Kernel() error

Kernel downloads the Alpine linux-virt kernel and extracts vmlinuz. Only needed on Darwin (Virtualization.framework); no-op on other OS.

func Kernelx86

func Kernelx86() error

Kernelx86 downloads the Alpine linux-virt kernel for x86_64 and extracts the uncompressed vmlinux from the bzImage. HCS LinuxKernelDirect requires an uncompressed ELF kernel, not the compressed bzImage.

func Rootfs

func Rootfs() error

Rootfs builds a custom Alpine rootfs with gcompat and iptables pre-installed. Downloads the stock Alpine minirootfs and APK packages from the CDN, then combines them into a single tarball — no container runtime required. Architecture is determined by runtime.GOARCH.

func Runner

func Runner() error

Runner downloads the GitHub Actions runner archive for the current platform.

func Runnerlinux

func Runnerlinux() error

Runnerlinux always downloads the Linux x64 runner (for embedding in Windows builds).

func Runnerlinuxarm64

func Runnerlinuxarm64() error

Runnerlinuxarm64 always downloads the Linux arm64 runner (for macOS embed cross-compile).

func Runnerwindows

func Runnerwindows() error

Runnerwindows always downloads the Windows x64 runner.

func Shim

func Shim() error

Shim downloads containerd-shim-runc-v2 (extracted from tarball) and runc binary.

func Shimlinux

func Shimlinux() error

Shimlinux always downloads the Linux amd64 shim + runc (for cross-compile embed).

func Shimlinuxarm64

func Shimlinuxarm64() error

Shimlinuxarm64 downloads the Linux arm64 shim + runc (for macOS embed cross-compile).

func Shimwindows

func Shimwindows() error

Shimwindows builds containerd-shim-runhcs-v1.exe from the hcsshim module. This is the Windows container runtime shim that containerd needs to run Windows containers (process-isolated or Hyper-V isolated).

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL