A maintainer comments `/test` on a pull request and a self-hosted
runner on a disposable Proxmox VE host builds every ct/ script the PR
touches (and the ct/ entry point of every changed install/ script),
checks the result and reports back on the PR.
- Gate: only users with write access; builds the latest commit only if
nothing was pushed to the fork after the comment, or a pinned
`/test <full sha>`.
- Build: the PR tree at that commit is served from the test host with
every raw.githubusercontent.com/community-scripts/ProxmoxVE/main URL
rewritten to it, so engine changes in the PR are tested too.
Unattended (mode=default); prompts declared the AGENTS.md way are
pre-answered with CI values.
- Checks: build and install succeed, container running, no failed
units, the URL the script prints answers 200. Screenshot of that URL.
- Report: check run, one comment (results, screenshot, install log,
mentions of the PR author and whoever asked), changes requested on a
real failure, dismissed again on a pass. CPU-feature failures (no
AVX2 on the test host) are marked untestable, not failed.
- The test job has a read-only token and no secrets; its runner carries
only the proxmox-test label. Container IDs 9050-9099.
Same file as in DevScripts; github.repository selects the URLs and the
container ID range.
generate-app-headers.sh read APP with a plain grep -oP, so a script that
sets APP twice yielded both lines and the filename became
"almalinux
almalinux${var_version}vm". Three of those are in the tree
and they make main impossible to check out on Windows.
Nothing reads vm/headers: get_header fetches banners from the core
repo, which already carries clean almalinux, debian and ubuntu.
* Remove unwanted output from workflow
* Remove unwanted output from workflow
* update .yml so it supports external repos
* update .yml so it supports external repos