From cf90704eb70bde9c83894f241a16935bbce59444 Mon Sep 17 00:00:00 2001 From: samuelburnham <45365069+samuelburnham@users.noreply.github.com> Date: Wed, 2 Sep 2026 13:58:52 -0400 Subject: [PATCH 1/3] Test PR --- .github/workflows/lean_action_ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/lean_action_ci.yml b/.github/workflows/lean_action_ci.yml index 52c9a6b..ae50348 100644 --- a/.github/workflows/lean_action_ci.yml +++ b/.github/workflows/lean_action_ci.yml @@ -1,3 +1,4 @@ +# Test name: Lean Action CI on: From c21f958a73da550234563cd96f48763bf39bf969 Mon Sep 17 00:00:00 2001 From: samuelburnham <45365069+samuelburnham@users.noreply.github.com> Date: Wed, 2 Sep 2026 21:58:56 -0400 Subject: [PATCH 2/3] Trigger merge-test failure --- .github/merge-tests-fail-unit | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/merge-tests-fail-unit diff --git a/.github/merge-tests-fail-unit b/.github/merge-tests-fail-unit new file mode 100644 index 0000000..c3813a5 --- /dev/null +++ b/.github/merge-tests-fail-unit @@ -0,0 +1 @@ +intentional failure From 17f3ca8c075db5a23169cb6640dc2d2677fcb7c0 Mon Sep 17 00:00:00 2001 From: samuelburnham <45365069+samuelburnham@users.noreply.github.com> Date: Thu, 3 Sep 2026 10:19:05 -0400 Subject: [PATCH 3/3] Log namespace runner specs --- .github/actions/log-cpu/action.yml | 52 +++++++++++++++++++++++++++++ .github/workflows/namespace-cpu.yml | 28 ++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 .github/actions/log-cpu/action.yml create mode 100644 .github/workflows/namespace-cpu.yml diff --git a/.github/actions/log-cpu/action.yml b/.github/actions/log-cpu/action.yml new file mode 100644 index 0000000..ada8c9f --- /dev/null +++ b/.github/actions/log-cpu/action.yml @@ -0,0 +1,52 @@ +name: Log CPU information +description: Log the current host's CPU and effective cgroup allocation + +inputs: + label: + description: Heading and context for the CPU report + required: false + default: CPU information + +outputs: + summary: + description: CPU model, effective vCPU count, and total RAM + value: ${{ steps.report.outputs.summary }} + +runs: + using: composite + steps: + - id: report + shell: bash + env: + CPU_LABEL: ${{ inputs.label }} + run: | + set -euo pipefail + export LC_ALL=C + + cpu_info=$(lscpu) + cpu_model=$(printf '%s\n' "$cpu_info" | awk -F ': *' '/^Model name:/ { print $2; exit }') + vcpus=$(nproc) + ram_kib=$(awk '/^MemTotal:/ { print $2; exit }' /proc/meminfo) + ram=$(awk -v kib="$ram_kib" 'BEGIN { printf "%.1f GiB", kib / 1048576 }') + + echo "::group::$CPU_LABEL" + echo "Context: $CPU_LABEL" + echo "Runner: ${RUNNER_NAME:-unknown} (${RUNNER_OS:-unknown}/${RUNNER_ARCH:-unknown})" + echo "Kernel: $(uname -srvm)" + echo "nproc: $vcpus" + echo "RAM: $ram" + if [ -r /sys/fs/cgroup/cpu.max ]; then + echo "cgroup cpu.max: $(< /sys/fs/cgroup/cpu.max)" + fi + if [ -r /sys/fs/cgroup/cpuset.cpus.effective ]; then + echo "cgroup cpuset.cpus.effective: $(< /sys/fs/cgroup/cpuset.cpus.effective)" + fi + grep -m1 '^Cpus_allowed_list:' /proc/self/status || true + printf '%s\n' "$cpu_info" + flags=$({ grep -m1 -oE 'avx2|avx512[a-z0-9_]*' /proc/cpuinfo || true; } \ + | sort -u | tr '\n' ' ') + echo "AVX flags: ${flags:-absent}" + echo "::endgroup::" + + printf 'summary=CPU: `%s` · vCPUs: `%s` · RAM: `%s`\n' \ + "${cpu_model:-unknown}" "$vcpus" "$ram" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/namespace-cpu.yml b/.github/workflows/namespace-cpu.yml new file mode 100644 index 0000000..c36f3f9 --- /dev/null +++ b/.github/workflows/namespace-cpu.yml @@ -0,0 +1,28 @@ +name: Namespace CPU information + +on: + pull_request: + +permissions: + contents: read + +jobs: + log-cpu: + name: CPU ${{ matrix.shape }} + strategy: + fail-fast: false + matrix: + include: + - shape: 8x16 + runner: nscloud-ubuntu-26.04-amd64-8x16 + - shape: 16x32 + runner: nscloud-ubuntu-26.04-amd64-16x32 + - shape: 32x64 + runner: nscloud-ubuntu-26.04-amd64-32x64 + runs-on: ${{ matrix.runner }} + timeout-minutes: 5 + steps: + - uses: actions/checkout@v7 + - uses: ./.github/actions/log-cpu + with: + label: Namespace Ubuntu 26.04 ${{ matrix.shape }}