Commit graph

91 commits

Author SHA1 Message Date
Jelle van der Waa
3e1ae27a48 packit: Test on Fedora ELN 2026-09-25 08:47:46 +02:00
Jelle van der Waa
eceba97aae packit: Enable Fedora 45 2026-08-27 10:53:35 +03:00
Jelle van der Waa
83e7af0f5f packit: Use branched alias for bodhi updates 2026-06-09 16:36:12 +02:00
Jelle van der Waa
2d01a97651 packit: Re-enable s390x build
s390x builders are back in COPR.
2026-06-09 16:36:12 +02:00
Freya Gustavsson
e0e3ba3fee
packit: Use tars for propose_downstream (#23355)
`fix-spec-file` is not part of `propose_downstream` job so we need to
use the `post-modifications` hook instead.

Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
2026-06-05 13:06:13 +02:00
Jelle van der Waa
a06236acc3
packit: Fix cockpit-preview source urls (#23354)
Accidentally still referenced martin's fork and not our project.
2026-06-04 15:19:09 +02:00
Martin Pitt
1928a46ae7 packit: Fix cockpit-preview COPR build
The previous commits fd980a6b48, 3167867cff, f08f4bbfec all
unsuccessfully tried to fix the copr_build/release job (e.g. setting
`fix-spec-file:` to an empty string is invalid syntax).

Rework this to be similar to what cockpit-podman etc. do. Our spec file
in the upstream release tarball is already correct, so download these,
extract its cockpit.spec, and tell packit to leave it alone by
overwriting the `fix-spec-file:` action.
2026-05-26 16:23:21 +02:00
Martin Pitt
65b4ee67a9 packit: Document how to test changes to copr_build/release
Took me a while to figure this out, let's make it easier for the next
poor soul.
2026-05-26 16:23:21 +02:00
Martin Pitt
aa4f3c9a79 packit: Add issue_repository
That way we get notifications about failed releases, and can act on
them. Our other projects already have that, it was just forgotten in
cockpit itself.
2026-05-26 16:23:21 +02:00
Freya Gustavsson
fd980a6b48 packit: Use empty string for fix-spec-file
We had another failure with Packit release infra where Packit workflow
failed due to type incorrectly being `None` where it needs to be either
string or list.

Checking with Packit team again and they apologized and proposed we just
use empty string. This took place in ther Matrix.

Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
2026-04-23 10:04:38 +02:00
Freya Gustavsson
3167867cff
packit: Prevent Packit from modifying Source URLs (#23066)
By default Packit only grabs `Source0`. Problem is that Packit converts
all other Source URLs to local files and thus cannot download Source
files.[1] By overriding `fix-spec-file` and preventing Packit from
replacing all Source URLs it should in theory download all the tarballs.

With this we also no longer need to override `create-archive` as Packit
already does this.

[1] Due to Packit usually building directly from upstream repos

Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
2026-04-16 15:28:30 +02:00
tomasmatus
6500da89ec packit: don't use fix-spec to change version in specfile
As release of cockpit 360 showed the version in cockpit.spec is already
set to the correct number. As a result the correct version was replaced
as 360 -> 36360.
2026-04-16 10:59:54 +02:00
Freya Gustavsson
aacba4292d
packit: Manually download Source0 tar (#23025)
Packit doesn't support downloading all sources and will instead only
download the last Source listed in a specfile. We need to download the
`Source0` manually to get `cockpit.tar.xz` as `Source1` currently points
to `cockpit-node.tar.xz`.

Related-to: https://github.com/cockpit-project/cockpit/issues/22883
Related-to: https://github.com/packit/packit-service/issues/1505
Assisted-by: Claude
Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
Co-authored-by: Maja Massarini <mmassari@redhat.com>
2026-03-23 14:34:29 +01:00
Freya Gustavsson
f08f4bbfec packit: Use upstream repo as fallback
When we publish our packages we currently use the
`PACKIT_DOWNSTREAM_REPO` envvar. This is not defined when we are
publishing to Copr and instead we should use `PACKIT_UPSTREAM_REPO`
envvar.

Changing it to use downstream repo by default and fallback to upstream
repo fixes this issue.

Fixes: https://github.com/cockpit-project/cockpit/issues/22883
Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
2026-03-18 09:43:17 +01:00
Jelle van der Waa
88508113f2 packit: disable s390x copr_builds
The s390x builders are down due the deprecation of the cloud
infrastructure and there is no indication it will be back up soon.

See https://github.com/fedora-copr/copr/issues/4219
2026-03-17 16:24:26 +01:00
Jelle van der Waa
5fb84eaefb packit: drop Fedora 42, move to Fedora 44 2026-03-11 14:16:55 +01:00
Martin Pitt
3d56a5cdf3 packit: Don't rebuild release tarball for propose_downstream
Re-use the release copr_build actions for `propose-downstream`. We
really don't want/need this to rebuild the dist tarball and bundles.
This also regularly times out in packit's sandcastle containers due to
not having enough CPU/RAM.

It also started failing recently as `post-upstream-clone` happens before
installation of `srpm_build_deps`, so asciidoctor was not yet available.

Also, `$PACKIT_PROJECT{,_NAME}_VERSION` is not yet set in that early
rule, so partially revert c4d7d8e049. Sadly, the `propose-downstream`
job does not have a really good hook [1] for what we need to do -- e.g.
`fix-spec-file` does not run in that job. Fix the spec file (i.e.
resolve the NPM_PROVIDES) in `post-modifications:` inside the dist-git
dir.

[1] https://packit.dev/docs/configuration/actions
2026-01-29 09:07:38 +01:00
Martin Pitt
c4d7d8e049 packit: Fix copr_build job
Our COPR packit source build has failed since version 352 since the
reorganization of our build system for the -node tarball.
`tools/fix-spec` now requires `runtime-npm-modules.txt` to be present,
so adjust the tarball extraction accordingly.

While we are at it, also move the tarball downloads from fix-spec-file
into post-upstream-clone, which fits better. Now both the global and the
local `fix-spec-file:` rules are actually the same.
2026-01-09 13:31:24 +01:00
Freya Gustavsson
6a0da46280 doc: Prebundle docs on RHEL & CentOS
With this we can get rid of asciidoc-py dependency altogether and
instead rely on the docs being prebundled before installation.

Include the built guide and manpages into the release tarball for that.

Fixes #22670
https://issues.redhat.com/browse/COCKPIT-1370

Signed-off-by: Freya Gustavsson <freya@venefilyn.se>
Co-Authored-By: Martin Pitt <mpitt@redhat.com>
2026-01-08 13:02:15 +01:00
Martin Pitt
a30e928bdb packaging: Rebuild our bundle during Fedora package build
Also adjust the packit config. We have to stop using `create-archive:`
as that can only handle a single tarball [1]. It does two things for us
which we replace:

  * Set `Version:`; our `make-dist` already does that, so fish out
    the generated/fixed spec file from the release tarball instead of
    taking the template.
  * Replace SourceN URLs with local file names. Do that in the
    `fix-spec-file` rule manually, as suggested in [1].

[1] https://packit.dev/docs/configuration/actions#create-archive
2025-12-03 17:56:10 +01:00
Martin Pitt
094c5c8815 tools: Create -node tarball
Update `make-dist` and `release` to produce a runtime node_modules tarball.
`tools/node-modules runtime-tar` uses `jq`, so add that as a packit
source build dependency.

Adjust the consumers of `make-dist` accordingly. This isn't being used for
anything yet, this will be a follow-up.
2025-11-27 12:32:45 +01:00
Martin Pitt
3e98bd82fb build: Only include actually bundled npm modules into the spec
Our package.json's `dependencies` has transitive/optional dependencies
which don't actually end up in the bundle, e.g. `argparse`,
`attr-accept`, or `js-tokens`; or `react-dropzone` which is a
`@patternfly/react-table` dependency, but not actually used in
cockpit.

The next commit will aggravate this further.

So make the computation of the `Provides: bundled(npm(..))` lines more
precise: Ask esbuild about which modules it actually included, which it
tells us via the "metafile". Change build.js to always output that (drop
the `--metafile` option), compute a ./runtime-npm-modules.txt list, and
use that to build the spec file.

Ported from https://github.com/cockpit-project/cockpit-files/commit/e15a518fddad1
2025-11-19 11:53:54 +01:00
Martin Pitt
65f3a720fd packit: Drop obsolete npm srpm build dependency
Long-obsolete since we moved to putting node_modules into git.
2025-11-19 11:53:54 +01:00
Martin Pitt
ff75fd9d52 packit: Drop Fedora 41, add Fedora 43 2025-08-26 16:27:16 +03:00
Martin Pitt
98ceea8f54 packit: Enable CentOS-Stream-10-image-mode 2025-07-29 08:51:08 +02:00
Martin Pitt
d9430167da tmt: Add CentOS 9 bootc test
Disable the two storage plans for now. It's a ton of work to fix the
tests for TF image mode, and we don't run them upstream on bootc/ostree
images either. Let's do the enablement step by step.

A lot of our tests assume they can write into /usr/local, and our
upstream -bootc images allow that. Mount a tmpfs on it.

https://issues.redhat.com/browse/COCKPIT-1214
2025-07-28 22:34:44 +02:00
Martin Pitt
e655d80cd8 packit: Fix Fedora aarch64 test
fedora-latest-stable-aarch64 is not a thing unfortunately.
2025-07-10 10:06:25 +02:00
Packit Bot
250240ce73 packit: Adjust build targets
Add the build targets needed for the test jobs, as Packit is going to
change to require those explicitly.

See https://github.com/packit/packit-service/pull/2785
2025-06-17 09:22:42 +02:00
Martin Pitt
6b9175d502 packit: Enable fedora-42 test
This has worked for some time, and is enabled in all our other projects,
we just forgot about it here.
2025-03-12 13:48:11 +01:00
Martin Pitt
26af34d570 packit: Re-disable Fedora 42
The cloud images are missing [1] and not even COPR works.

Also move the s390x build from -development (which is 42 now, which
doesn't work) to -latest-stable (which is 41), same as for the --arch64
build.

[1] https://pagure.io/fedora-infrastructure/issue/12389
2025-02-06 10:15:43 +01:00
Martin Pitt
d5bdd7cadd packit: Add Fedora 42, drop 40
Fedora 42 branches off tomorrow:
https://fedorapeople.org/groups/schedule/f-42/f-42-key-tasks.html
2025-02-03 18:33:01 +01:00
Martin Pitt
8d94bf0928 packit: Re-enable Fedora 41
Testing Farm has a working image now.

Partially reverts commit e0012e909
2024-08-22 09:15:03 +02:00
Martin Pitt
e0012e9097 packit: Temporarily disable Fedora 41 tests
Testing Farm does not yet have a Fedora 41 image.

Also move the Fedora aarch64 run to the latest stable. Right now this
will go back to Fedora 40 instead of 41, so that we don't lose ARM
testing.
2024-08-20 09:48:15 +03:00
Martin Pitt
aec2721a91 packit: Add Fedora 41, drop Fedora 39 2024-08-16 13:26:00 +02:00
Martin Pitt
2a1d8a835c tools: Drop Fedora i686 package for Fedora 41/RHEL 10
It becomes harder and harder to support it there, we don't test on i386
any more, and as a server application there is little use case for it.
2024-06-04 13:19:27 +02:00
Martin Pitt
8b5217725a packit: Enable CentOS Stream 10 tests
Disable `TestLogin.testClientCertAuthentication` for the time being. It
fails on an unclear reason, and it can't be investigated locally with
`tmt` yet, as testcloud does not yet know about the  "CentOS-Stream-10"
image.
2024-05-23 13:33:26 +02:00
Martin Pitt
1b4dae048a packit: Add Fedora 40, drop Fedora 38 2024-02-27 11:39:26 +01:00
Martin Pitt
429b3c286f Drop cockpit-appstream split
This was only a thing on RHEL 8, which we don't support on this branch
any more.
2024-02-16 14:19:05 +01:00
Martin Pitt
47bc4c586a packit: Add Fedora 39, drop Fedora 37 2023-08-23 14:20:22 +02:00
Martin Pitt
9b072881f9 packit: Build COPR for main commits
Build every commit into main into
https://copr.fedorainfracloud.org/coprs/g/cockpit/main-builds/

We will use that for cross-project testing (e.g. running cockpit's tests
in systemd-policy or udisks upstream PRs). Users can also install that
to test bug fixes and new features after they landed, but before they
got released.
2023-08-01 15:52:52 +02:00
Martin Pitt
8bb6ddf0b9 fmf: Run cockpit-podman tests on current Fedora
This ensures that changes to the Python bridge don't break podman.
2023-08-01 11:16:36 +02:00
Martin Pitt
732198e3aa packit: Re-add post-upstream-clone to copr_build
In commit 940cc5cd1 I dropped the copr_build's `post-upstream-clone:`
action as it became identical to the global one, and I thought it would
be inherited. But it turns out that specifying `actions:` replaces the
global object entirely. That made release COPR builds fail on missing
spec file.

Copy the post-upstream-clone command and add a comment why it's
necessary. We'll have to keep this until
https://github.com/packit/packit-service/issues/1505 gets fixed.
2023-04-12 14:00:04 +02:00
Martin Pitt
940cc5cd1d tools: Declare bundled NPM dependencies in spec file
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2180520

We need to get a bit creative for packit: It needs the spec as first
thing, so build it manually. Share the code in a separate tools/fix-spec
for that.

Drop the obsolete hack for https://github.com/packit/packit/issues/1560
as that was fixed in packit a while ago.
2023-04-05 11:05:28 +02:00
Martin Pitt
b74232d34d packit: Enable tests on aarch64 2023-04-04 14:47:02 +02:00
Martin Pitt
e38333a130 packit: Build web bundles without webpack-jumpstart
packit hasn't had a sandcastle container for ages, but builds SRPMs on
COPR. This has enough RAM and CPU to just build the bundles by itself.
So drop explicit webpack-jumpstart call, and add a `nodejs` srpm
dependency instead.

`make-dist` still opportunistically tries to download a jumpstart
tarball, but does not wait or depend on it.
2023-03-21 15:51:31 +01:00
Martin Pitt
56e9bd2185 configure: Fix check for xgettext
Actually check for the "xgettext" binary in the relevant section.
xsltproc is already checked further down, conditionalized by
--enable-docs. The latter is also in a different package.

See https://github.com/cockpit-project/cockpit/discussions/18408
2023-02-27 08:43:36 +01:00
Jelle van der Waa
d118f0d8fe packit: add Fedora 38 testing and release, drop Fedora 36 2023-02-15 06:49:33 +01:00
Martin Pitt
38908baaf0 packit: Drop targets list from COPR build
Hardcoding this list is redundant and hard to change: changing the COPR
config and updating all our projects' packit.yml files needs to happen
in lockstep.

packit now learned to just read the configuration from an existing COPR
repository, so drop the target list entirely. See
https://github.com/packit/packit-service/issues/1499
2022-10-03 08:54:24 +02:00
Martin Pitt
73bf957ee1 packit: Drop Fedora 35, add Fedora 37
As usual, keep supporting the two most recent branched versions.

Also drop Rawhide from our cockpit-preview COPR build: We directly
upload new releases to Rawhide anyway, so this is redundant.
2022-08-31 16:53:13 +02:00
Martin Pitt
35107ebaa4 packit: Drop obsolete FMF plan bumping
tmt got fixed to be able to run the tests from the dist-git tarball
instead of checking it out from git, and this PR enabled that:
https://src.fedoraproject.org/rpms/cockpit/pull-request/76
2022-07-21 13:49:45 +02:00