Add a post-build step which runs integration tests against the source
code repository (as opposed to against the installed package).
Signed-off-by: Jan Lindemann <jan@janware.com>
- Split build step up further
- Dependency installation
- Static pre-check
- Actual package build
- Omit pkg-build installation step for jw-pkg
Don't build and install jw-pkg official before a jw-pkg test
build. jw-pkg should be self-contained enough to be able to
build itself.
Signed-off-by: Jan Lindemann <jan@janware.com>
test-packaging.yaml: Split up build step into deps, static pre-check and actual buil
Signed-off-by: Jan Lindemann <jan@janware.com>
Add pre- and post-build static code checks via "make check". A
repository should specify all checks that it wants to run during CI
as dependencies of target "check" in the toplevel Makefile.
Signed-off-by: Jan Lindemann <jan@janware.com>
jobs.test.name gets shown in the UI in full glory, and the
boilerplate "Packaging test - " squeezes the name of the distribution
over the right edge of the popup. Try to shorten that a little.
Signed-off-by: Jan Lindemann <jan@janware.com>
This repository has changed its name and location from
"workflow-build-packages" to "workflows".
It has not been renamed to "workflow-build-packages", because it
might contain other workflows in the future, likely reusable
workflows.
The reason behind the name change is that the repo has changed its
purpose. The composite action it has primarily provided, with its
distribution matrix and all, has done more than the tiny thing an
action should provide all along, so this was a bad fit, and the
toplevel "action.yml" is removed by this commit. "reusable.yaml" in
.github/workflows is renamed to "test-packaging.yaml", because it
would otherwise collide with other possible future workflows in this
repo.
Signed-off-by: Jan Lindemann <jan@janware.com>
Don't use ci/action-build-package@master in actions.yml anylonger,
spell its steps out one-by-one in reusable.yaml instead. This makes
the step names appear as log section headers in the UI, which is more
explicit and, hence, nicer.
This pretty much obsoletes the composite actions.yml. It should be
probably removed, and since this changes the point of this repository
from providing an action to providing a workflow, it shoud probably
be renamed from action-build-package to workflow-build-package or
something.
Signed-off-by: Jan Lindemann <jan@janware.com>
The section header "Run packaging test on ${{ matrix.distro.name }}"
doesn't get the distro name expanded in the run log's section header
for whatever reason. It only adds redundant and, hence, slightly
confusing information, so remove it.
Signed-off-by: Jan Lindemann <jan@janware.com>
Add
jobs.test.name: Packaging test - ${{ matrix.distro.name }}
jobs.test.steps.name: Run packaging test on ${{ matrix.distro.name }}
jobs.test.steps.uses.with.distro-name: ${{ matrix.distro.name }}
In the hope that this makes the logs look nicer.
Quoting from https://forgejo.org/docs/latest/user/actions/reference/
NOTE: if jobs.<job_id>.name is set, care must be taken that it
evaluates to a unique name for each job created from the matrix,
e.g. name-${{ matrix.variant }}-${{ matrix.node}} in the above
example.
Signed-off-by: Jan Lindemann <jan@janware.com>
Before building jw-pkg from source, make pkg-install-release-deps is
called without refreshing the package manager before. Fix that by
calling make -C jw-pkg pkg-manager-refresh.
Note that it's called again later. Leaving that in because the second
step doesn't hurt, and the first steppe might get scrapped entirely
at some point.
Signed-off-by: Jan Lindemann <jan@janware.com>
This action allows to test packaging of projects compatible with
the jw-pkg layout.
It attempts the following steps:
- Clones, builds and installs jw-pkg from source
- Clones the package under test from Git
- Installs its build prerequisites
- Builds, packages and installs it
Additionally, a reusable workflow .github/workflows/reusable.yaml is
added to invoke it for all supported distributions, which currently
are Kali Linux and OpenSUSE.
Signed-off-by: Jan Lindemann <jan@janware.com>