Disable the printing of the echo commands that write the filename of the
VM image for tests in the 'vm' and 'print-vm' targets.
This makes it possible to use their outputs, especially the 'print-vm'
target.
By default, webpack does not clean up dist/, so when you e.g. touch the
code and rebuild with `NODE_ENV=devel`, the old compressed assets from
a previous `production` build were left in place, and cockpit could
serve the old wrong ones. Enable the `clean` output option to fix this [1].
Also force the rewrite of all files with `compareBeforeEmit: false`, so
that the time stamps actually get updated on a webpack run. This fixes
`make` rules and unnecessary rebuilds when nothing changed.
Fixes#563
[1] https://webpack.js.org/configuration/output/#outputclean
run-tests recently got a new `--track-naughties` option [1] to explicitly
enable updating known issues on GitHub. Enable it for CI runs, and leave
it disabled for local runs and PackIt, as in these cases we don't want
to try and talk to GitHub.
[1] 7ef88e80ce
It's useless there -- any style error that may happen there has already
slipped through the upstream release, and at RPM build time there is
nothing that can be done about it. It just wastes time.
This allows us to bump eslint to a newer version which is incompatible
with the older node.js on RHEL/CentOS 8.
- use https when possible (mostly for cockpit-project.org URLs)
- fix the references to the cockpit and tmt official repositories
- update one packit.dev URL
Add a simple convenience target to "undo" what the devel-install did
(creating a symlink to ~/.local/share/cockpit), i.e. simply removing
that symlink.
Suggested by: Christopher Snyder
Add a simple convenience target that prints the filename of the test
image without creating it beforehand. This can be useful to know what is
the expected filename, so it is possible to provide an own test image
instead of the generated one.
When creating the tarballs for sources and node modules, apply some
hardening to the tar compression to remove some variances that may cause
the tarballs to not be reproducible; in particular:
- set fixed modes, and ownership
- set the mtime from the author's timestamp of the top-level commit
- sort the files by name
Cockpit's PF/React/build library (pkg/lib from cockpit.git) is checked
out as src/lib, so exclude it from the search of js/jsx, and html
sources for the extraction of i18n messages.
This avoids the cockpit messages in case the message extraction is
performed in a source tree after build.
Add a simple 'srpm' target that builds the src.rpm file for the current
project.
Partially reverts commit b2662eeebd (at
least to bring the 'srpm' target back).
This was fixed in Cockpit 265, and has only ever affected Chromium, not
Firefox. Restrict the hack accordingly, to make sure this does not
regress again.
Drop the image-customize `--verbose` option. mock is incredibly blabbery
about its internals otherwise, and seeing the build log isn't
particularly interesting.
and be able to specify the precise list of deps needed to create the
SRPM
Details: https://packit.dev/posts/copr-srpms/
Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
When installing the module, instead of copying the metainfo file to the
destination, merge the available translations for it. Since this is done
at install time, add gettext as BuildRequires for the RPM packaging;
add libappstream-glib-devel as well only on RHEL/CentOS 8, since it
contains the metainfo.its for gettext in order to handle .metainfo.xml
files.
This requires a LINGUAS file with the list of translations currently
available: this is the way msgfmt picks the available languages to
merge. Generate it dynamically from the list of available .po files.
Recent versions of gettext know how to extract messages also from XML
files such as AppStream metadata. Hence, extract their messages, and
append them together with the global message catalog.
The generated RPM is noarch, so by definition has no binaries to extract
debug symbols from. Hence, drop the %define that makes RPM not error out
in case there are no debug symbols around (usually in archful binaries).
This ensures that we stay independent from any changes that go on in
online repositories, and our mock/pbuilders are sufficiently pre-cached.
Drop the explicit install of `cockpit-ws` -- all our bots images have it
pre-installed.
This started giving errors like:
22:10 error 'Alert' is defined but never used no-unused-vars
Use eslint-plugin-react to improve the JSX usage, not just to silence this error.
On developer systems, bots is commonly a symlink to a shared checkout,
accept non-directories as well. Also, only ignore it at the top level of
the project directory.
This centralizes/factorizes the rpm package builds, and builds
RPM packages in the VM instead of on the host, which is cleaner. It also
paves the way for supporting Debian and arch builds.
Drop the `make srpm` rule, as it's not very useful. Keep the `make rpm`
rule, as sometimes developers do this manually. This might be replaced
later on with another image-customize feature which copies the built rpm
out of the VM.