As part of reviewing this PR, I expanded the test definitions to make it
easier to discern the intent of each test at a glance. In so doing I
understood most tests behaving as normal, but I did make a few small
changes:
- Some tests no longer produce any errors, so remove this variable from
the test definitions.
- Replace comma-separated overlay definitions with explicit slices.
Splitting comma-separated strings led to erroneous behavior where a
null overlay list was processed as a single null overlay rather than
an empty slice.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
The warewulfd process called `wwctl build -O [system|runtime] node`
if autobuild was set. This created [system|runtime].img which isn't
supported with the build model. Calling now BuildOverlay directly
Signed-off-by: Christian Goll <cgoll@suse.com>
To support this, I refactored the actions to use a composite action so
that all checks could run with the same setup.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Contrary to #945, marking vendor as phony causes binaries to be re-built
on a repeated call to `make`. Though we can't determine when vendor
needs to be rebuilt, this is preferable to not knowing when Warewulf
binaries need to be rebuilt.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- Use a matrix for multiple builds
- Merge mockbuild.sh into release.yml
- Upload dist only once (not once per build)
- Make release package uploads more explicit (makes errors more visible)
- Configure mock to log to the runner log
- Use variables to define artifact names only once
- Target the release explicitly by id
- Run the test suite in each mock environment (fixes#369)
- Update OpenSUSE Leap build to 15.5 (15.3 is EOL and not building
correctly)
- Add a Rocky Linux 9 build
- Switch to Rocky Linux 9 build container (mostly to get mock
configuration for newer OpenSUSE Leap)
- Allow successful releases to complete if some releases fail
(`fail-fast: false`)
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
warewulf.spec appears to expect that an offline build would be requested
with `--with offline`; but conditional builds are not supported by mock.
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Skipping changelog enforcement for PRs with one of these labels:
refactor, testing, build, project.
Such labels likely indicate a non-user-visible change which need not be
reflected in the changelog. (Of course, a changelog entry may still be
made if appropriate, even if not required by the enforcer.)
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- fixed a malformed link
- added a checkbox for the DCO
- fixed heading levels
- made checks actual checkboxes
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
- Remove global state
- Remove redundant data
- Remove unused functionality (e.g., file permissions)
- Separate directory creation from file writing
- Additional helper functions for file reading and cleanup
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
Signed-off-by: Christian Goll <cgoll@suse.com>