photoncloud-monorepo/.github/workflows/kvm-publishable-selfhosted.yml
centra b8ef9b64ad
Some checks are pending
KVM Publishable Validation / publishable-kvm-suite (push) Waiting to run
Trigger KVM workflow on push
2026-04-05 03:52:40 +09:00

62 lines
2.2 KiB
YAML

name: KVM Publishable Validation
on:
push:
workflow_dispatch:
jobs:
publishable-kvm-suite:
runs-on:
- self-hosted
- linux
- x64
timeout-minutes: 360
steps:
- uses: actions/checkout@v4
- name: Ensure Nix Is Available
run: |
set -euo pipefail
if ! command -v nix >/dev/null 2>&1; then
curl -L https://nixos.org/nix/install | sh -s -- --no-daemon
fi
if [[ -f /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh ]]; then
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
elif [[ -f "$HOME/.nix-profile/etc/profile.d/nix.sh" ]]; then
. "$HOME/.nix-profile/etc/profile.d/nix.sh"
fi
mkdir -p "$HOME/.config/nix"
printf '%s\n' 'experimental-features = nix-command flakes' > "$HOME/.config/nix/nix.conf"
nix --version
- name: Probe KVM Environment
run: |
set -euo pipefail
if [[ -f /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh ]]; then
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
elif [[ -f "$HOME/.nix-profile/etc/profile.d/nix.sh" ]]; then
. "$HOME/.nix-profile/etc/profile.d/nix.sh"
fi
echo "hostname=$(hostname)"
uname -a
id
test -e /dev/kvm
ls -l /dev/kvm
if [[ -f /sys/module/kvm_intel/parameters/nested ]]; then
echo "kvm_intel_nested=$(cat /sys/module/kvm_intel/parameters/nested)"
fi
if [[ -f /sys/module/kvm_amd/parameters/nested ]]; then
echo "kvm_amd_nested=$(cat /sys/module/kvm_amd/parameters/nested)"
fi
- name: Run Publishable KVM Suite
run: |
set -euo pipefail
if [[ -f /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh ]]; then
. /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
elif [[ -f "$HOME/.nix-profile/etc/profile.d/nix.sh" ]]; then
. "$HOME/.nix-profile/etc/profile.d/nix.sh"
fi
chmod +x ./nix/test-cluster/run-publishable-kvm-suite.sh
./nix/test-cluster/run-publishable-kvm-suite.sh "$RUNNER_TEMP/publishable-kvm-suite"