]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-build.git/log
ceph-build.git
3 weeks agojenkins-job-builder: skip the CVE jobs 2653/head
David Galloway [Fri, 10 Jul 2026 22:51:10 +0000 (18:51 -0400)]
jenkins-job-builder: skip the CVE jobs

Skip cve-pipeline and cve-source-dist in the update loop and exclude
them from the deletion pass so they aren't removed for lacking test
XML.  Changes to those jobs must be made manually by a Jenkins admin.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2651 from ceph/wip-pulp-upload-fixes
David Galloway [Fri, 10 Jul 2026 22:44:36 +0000 (18:44 -0400)]
Merge pull request #2651 from ceph/wip-pulp-upload-fixes

enhancement: split `Chacra` and `Pulp` upload into independent pipeline stages

3 weeks agoceph-dev-pipeline: verify the chacra repo URL answers before trusting shaman 2651/head
David Galloway [Fri, 10 Jul 2026 22:39:39 +0000 (18:39 -0400)]
ceph-dev-pipeline: verify the chacra repo URL answers before trusting shaman

Follow-up to the shaman-based chacra existence check: a ready repo
record can outlive the repo it points at (chacra nodes get rotated or
rebuilt, and shaman has been observed reporting "no healthy chacra
nodes" while ready records remained).  Skipping compilation on the
strength of a stale record would leave consumers with a dead repo URL,
so extract the record's chacra_url and require it to answer 2xx; any
failure falls back to rebuilding.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agosetup_chacractl: fail when shaman has no healthy chacra nodes
David Galloway [Fri, 10 Jul 2026 18:17:36 +0000 (14:17 -0400)]
setup_chacractl: fail when shaman has no healthy chacra nodes

shaman's /api/nodes/next/ answers 404 with an HTML error page when it
has no healthy chacra node to allocate; without -f, curl captured that
page and setup_chacractl.sh wrote it into ~/.chacractl as the url.
Fail the curl instead.

Also run setup_chacractl.sh from the chacra upload stage rather than
the check stage: the existence check asks shaman now, so chacra being
unhealthy only fails cells that actually need to upload to chacra
(the upload stage's environment{} provides the credentials).

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agobuild_container: fix the shaman repo readiness wait
David Galloway [Fri, 10 Jul 2026 16:54:56 +0000 (12:54 -0400)]
build_container: fix the shaman repo readiness wait

Two problems in the wait loop:

- It only inspected .[0] of the shaman search result, but shaman holds
  several repo records for the same sha1 (one per backend and per
  uploading job).  Observed: .[0] was the chacra record posted by the
  production ceph-dev-pipeline building the same main sha1, whose
  extra.build_url could never match this build's, so the loop always
  timed out even though this build's own (pulp) record was ready at
  .[1].  Scan all records instead.

- The skipped-compilation escape hatch keyed off the CI_COMPILE
  parameter, which stays "true" when the artifact-existence check is
  what skipped compilation.  The pipeline now exports UPLOADED (this
  cell compiled, THROWAWAY off, at least one backend enabled); when
  false, any ready record for this sha1 satisfies the wait.

Also make the timeout fatal: it used to print FAIL and build the
container anyway, which either fails later in the Containerfile or
silently bakes stale packages.  Now that the readiness check is
accurate, a timeout is a real error.  Note THROWAWAY=true with
CI_CONTAINER=true now fails cleanly when the sha1 was never published
anywhere, instead of building an image from whatever shaman had.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-dev-pipeline: only skip compilation when every enabled backend has the build
David Galloway [Fri, 10 Jul 2026 16:48:15 +0000 (12:48 -0400)]
ceph-dev-pipeline: only skip compilation when every enabled backend has the build

shouldSkipCompilation() treated the existence checks as an OR: if
either Chacra or Pulp already had the build, compilation was skipped
entirely -- which also skipped the upload to the backend that was
missing it.  Observed with PULP_UPLOAD and CHACRA_UPLOAD both enabled:
pulp had the distribution, the chacra check came back empty, and the
cell skipped straight past both uploads, so chacra never received the
build.

Skip compilation only when every enabled backend already has the build
(disabled backends don't count), and when compilation does run because
one backend was missing, skip the upload stage of the backend that
already had it (unless FORCE) so packages aren't blindly re-pushed.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2650 from ceph/crp-64k
David Galloway [Fri, 10 Jul 2026 17:04:48 +0000 (13:04 -0400)]
Merge pull request #2650 from ceph/crp-64k

ceph-release-pipeline: use @Field for top-level variables

3 weeks agoceph-dev-pipeline: check for existing chacra builds via shaman
David Galloway [Fri, 10 Jul 2026 16:34:01 +0000 (12:34 -0400)]
ceph-dev-pipeline: check for existing chacra builds via shaman

setup_chacractl.sh points chacractl at whichever chacra node shaman's
/api/nodes/next/ hands out, which is a round-robin upload allocator.
`chacractl exists` against that node only finds a previous build's
binaries when the rotation happens to land on the same node the build
uploaded to: observed binaries on 2.chacra.ceph.com while the check
404'd against 1.chacra.ceph.com.  This predates the stage split but now
gates compilation.

Ask shaman instead, which records which node holds each build: a
"ready" repo record for this project/ref/sha1/distro/arch/flavor with
a chacra.ceph.com chacra_url.  Pulp repo records live in the same
shaman collection, so filter on chacra_url.  setup_chacractl.sh still
runs here to configure ~/.chacractl for the upload stage.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2649 from ceph/job-mod-test
David Galloway [Fri, 10 Jul 2026 15:53:20 +0000 (11:53 -0400)]
Merge pull request #2649 from ceph/job-mod-test

README: Update "testing changes" section

3 weeks agoceph-dev-pipeline: report the flavor-level pulp repo URL to shaman
David Galloway [Fri, 10 Jul 2026 14:36:03 +0000 (10:36 -0400)]
ceph-dev-pipeline: report the flavor-level pulp repo URL to shaman

The repo record's url pointed at the per-arch distribution
(.../flavors/default/x86_64/), but noarch/, x86_64/ and SRPMS/ are
sibling distributions under the flavor path, not subdirectories of each
other.  Consumers follow chacra's convention of a flavor-level URL:
ceph.git's Containerfile appends noarch/Packages/... to the shaman url
to fetch the ceph-release RPM, which 404'd against the arch-level URL
and failed the CI container build.

The per-arch repository API href in chacra_url (from pulp_repo_info) is
unchanged, so the x86_64 and arm64 cells still post distinct records.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoremove the dead TEST='test' chacra ref logic
David Galloway [Thu, 9 Jul 2026 19:10:08 +0000 (15:10 -0400)]
remove the dead TEST='test' chacra ref logic

The TEST parameter was meant to push release packages to chacra under
the 'test' ref, but the logic has been dead for a while: neither
ceph-dev-pipeline.yml defines a TEST parameter nor does
ceph-release-pipeline forward one when triggering the build.  It was
also broken if ever enabled (env.SHA1[0..6] on the 4-character 'test'
string throws).  Remove the ref override from doUploadChacraStage and
the unused TEST parameter from ceph-release-pipeline.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agopulp_upload.sh: include the flavor in repository and distribution names
David Galloway [Thu, 9 Jul 2026 19:09:31 +0000 (15:09 -0400)]
pulp_upload.sh: include the flavor in repository and distribution names

Repository names were branch/os/version-scoped and distribution names
derived from them, so default and debug builds of the same branch/sha1
shared repositories and produced identically named distributions: the
stale-distribution delete would clobber one flavor's distribution with
the other's, and both flavors' packages mixed in one repository even
though their base_paths are flavor-specific.

Add FLAVOR to REPO_NAME, which flows into the per-arch repository names
and the dist-<repo>-<short_sha1> distribution names, and update the
existence check in the ceph-dev-pipeline Jenkinsfile to match.

Distributions created under the old naming may still own a base_path
(base_paths are unique in pulp), so also delete any differently named
distribution occupying the base_path before creating the new one.
Existing repositories with unflavored names are left in place and can
be cleaned up manually.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-release-pipeline: pass boolean parameters as booleans
David Galloway [Thu, 9 Jul 2026 16:28:45 +0000 (12:28 -0400)]
ceph-release-pipeline: pass boolean parameters as booleans

The ceph-dev-pipeline and second ceph-tag invocations passed env values
(strings) straight to booleanParam, unlike the first ceph-tag
invocation which converts with .toBoolean().  Downstream now compares
params.THROWAWAY == false strictly, so make sure the values arrive as
actual booleans.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agopulp_upload.sh: use the rpm arch for the repository handoff lookup
David Galloway [Thu, 9 Jul 2026 16:28:25 +0000 (12:28 -0400)]
pulp_upload.sh: use the rpm arch for the repository handoff lookup

The final `pulp repository show --name ${REPO_NAME}-${ARCH}` uses the
Jenkins matrix arch (arm64), but rpm repositories are created per rpm
arch (aarch64) by the upload loop.  For arm64 rpm builds the lookup
fails after all uploads succeeded and, under set -e, kills the script,
failing the stage.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agocve-pipeline: add FORCE parameter
David Galloway [Thu, 9 Jul 2026 16:28:09 +0000 (12:28 -0400)]
cve-pipeline: add FORCE parameter

cve-pipeline runs the ceph-dev-pipeline Jenkinsfile, which consults
FORCE to decide whether to rebuild and re-upload when artifacts already
exist in Chacra or Pulp.  Without the parameter, env.FORCE is unset and
a CVE rebuild of an already-uploaded sha1 always skips compilation with
no way to override short of THROWAWAY=true.

Also sync the THROWAWAY description with ceph-dev-pipeline's.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-dev-pipeline: key build_matrix by flavor and fix FLAVOR axis
David Galloway [Thu, 9 Jul 2026 16:26:26 +0000 (12:26 -0400)]
ceph-dev-pipeline: key build_matrix by flavor and fix FLAVOR axis

build_matrix was keyed by "${DIST}_${ARCH}" but the matrix has a
FLAVOR axis, so the default and debug cells of the same dist/arch
shared one key: when the artifact check found existing default
artifacts and set the key false, it cancelled the debug cell's build
too (and vice versa), even though the chacra endpoints and pulp
distributions are flavor-specific.  Include FLAVOR in the key
everywhere build_matrix is read or written.

Also declare the FLAVOR axis with `axis` instead of a nested `axes`
block, which is not valid declarative matrix syntax.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoenhancement: split `Chacra` and `Pulp` upload into independent pipeline stages
Vaibhav Mahajan [Thu, 9 Jul 2026 19:07:32 +0000 (15:07 -0400)]
enhancement: split `Chacra` and `Pulp` upload into independent pipeline stages

Refactor the ceph-dev-pipeline build job so Chacra and Pulp uploads are
independently configurable and run as separate Jenkins stages.

Signed-off-by: Vaibhav Mahajan <vamahaja@redhat.com>
Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2646 from ceph/cdp-trixie
Casey Bodley [Thu, 9 Jul 2026 15:50:19 +0000 (11:50 -0400)]
Merge pull request #2646 from ceph/cdp-trixie

ceph-dev-pipeline: Add trixie to build matrix

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 weeks agoceph-release-pipeline: use @Field for top-level variables 2650/head
David Galloway [Thu, 9 Jul 2026 14:43:12 +0000 (10:43 -0400)]
ceph-release-pipeline: use @Field for top-level variables

SCRIPT_SPLITTING_TRANSFORMATION (JENKINS-37984) is enabled on
jenkins.ceph.com to keep ceph-dev-pipeline under the JVM 64KB method
limit. That flag rejects Declarative pipelines with script-level local
variable declarations, so ceph-release-pipeline failed to compile:

  General error during semantic analysis: [JENKINS-37984]
  SCRIPT_SPLITTING_TRANSFORMATION is ... incompatible with local
  variable declarations inside a Jenkinsfile.

Annotate the cross-stage variables with @Field, same as was done for
ceph-dev-pipeline-trigger in c898b349. Audited all other Declarative
Jenkinsfiles in the repo; no other job has script-level variable
declarations.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoREADME: Update "testing changes" section 2649/head
David Galloway [Thu, 9 Jul 2026 13:59:22 +0000 (09:59 -0400)]
README: Update "testing changes" section

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2645 from ceph/cve-pipeline2
David Galloway [Thu, 9 Jul 2026 13:35:24 +0000 (09:35 -0400)]
Merge pull request #2645 from ceph/cve-pipeline2

CVE pipeline

3 weeks agoMerge pull request #2648 from shraddhaag/enable-noble
Shraddha Agrawal [Thu, 9 Jul 2026 13:33:42 +0000 (19:03 +0530)]
Merge pull request #2648 from shraddhaag/enable-noble

introduce noble debug builds

3 weeks agointroduce noble debug builds 2648/head
Shraddha Agrawal [Mon, 22 Jun 2026 06:55:49 +0000 (12:25 +0530)]
introduce noble debug builds

This commit introduces debug builds for noble which can be used for
integration testing.
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
3 weeks agoMerge pull request #2647 from knrt10/fix-ceph-perf-timeout
Kautilya Tripathi [Thu, 9 Jul 2026 03:10:00 +0000 (08:40 +0530)]
Merge pull request #2647 from knrt10/fix-ceph-perf-timeout

ceph-perf: bound CBT hangs and make comment triggers reliable

3 weeks agoceph-perf: bound CBT hangs and make comment triggers reliable 2647/head
Kautilya Tripathi [Thu, 9 Jul 2026 02:56:30 +0000 (08:26 +0530)]
ceph-perf: bound CBT hangs and make comment triggers reliable

radosbench prefill has wedged bath01 for days with no job timeout.
Cap each run-cbt.sh at 1h and the job at 8h, kill leftover Ceph
processes around CBT, and require an explicit "jenkins test
{osd-flavor} perf" comment so label-only auto-builds do not queue
forever on a stuck performance node.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
3 weeks agoceph-dev-pipeline: Add trixie to build matrix 2646/head
Zack Cerza [Wed, 8 Jul 2026 20:58:57 +0000 (14:58 -0600)]
ceph-dev-pipeline: Add trixie to build matrix

Signed-off-by: Zack Cerza <zack@cerza.org>
3 weeks agoMerge pull request #2643 from ceph/64k
David Galloway [Wed, 8 Jul 2026 20:52:25 +0000 (16:52 -0400)]
Merge pull request #2643 from ceph/64k

jenkins: enable Declarative script splitting to fix "Method too large" pipeline failures

3 weeks agoceph-dev-pipeline: Pulp repo support in ceph-release RPM's ceph.repo 2645/head
David Galloway [Wed, 17 Jun 2026 13:12:13 +0000 (09:12 -0400)]
ceph-dev-pipeline: Pulp repo support in ceph-release RPM's ceph.repo

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-dev-pipeline: Notify shaman of pulp repo URLs
David Galloway [Fri, 12 Jun 2026 18:20:23 +0000 (14:20 -0400)]
ceph-dev-pipeline: Notify shaman of pulp repo URLs

Mirror chacra's shaman repo records: 'url' points at the browsable
package repo (the Pulp content distribution for this arch) and
'chacra_url' points at the repository's API endpoint
(/pulp/api/v3/repositories/...).

pulp_upload.sh hands off the repository's API href and the package
manager version to the notify script via $WORKSPACE/pulp_repo_info.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-dev-pipeline: Add CHACRA_UPLOAD parameter
David Galloway [Thu, 2 Jul 2026 13:54:24 +0000 (09:54 -0400)]
ceph-dev-pipeline: Add CHACRA_UPLOAD parameter

This logic was chosen to preserve the logic the THROWAWAY parameter
provides regardless of package repository choice.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agocve-pipeline: Creation
David Galloway [Thu, 11 Jun 2026 20:27:10 +0000 (16:27 -0400)]
cve-pipeline: Creation

This enables us to build packages and containers from ceph-private.git privately.
This includes Jenkins build logs, artifacts, packages, and containers.

Packages will be pushed to the internal-only pulp instance and containers
to the internal-only quay instance.

To avoid job duplication, each job pulls in the respective Jenkinsfiles e.g.,
  - cve-pipeline -> ceph-dev-pipeline
  - cve-source-dist -> ceph-source-dist

The only difference is the parameters we pass to the job.  The key differences
there are CEPH_REPO points to ceph-private.git whereas ceph-dev-pipeline is
not capable of doing so.  We also tell the pipeline not to use a public
chacra instance.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoceph-dev-pipeline-trigger: use @Field for top-level variable 2643/head
David Galloway [Tue, 7 Jul 2026 13:41:27 +0000 (09:41 -0400)]
ceph-dev-pipeline-trigger: use @Field for top-level variable

The Declarative script splitting transformation being enabled on the
controller rejects pipelines that declare top-level local variables.
Convert the params list to a @Field, renamed to build_params to avoid
clobbering Jenkins pipeline's 'params' predefined global variable.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agojenkins: enable Declarative script splitting to avoid 64KB method limit
David Galloway [Tue, 7 Jul 2026 13:41:17 +0000 (09:41 -0400)]
jenkins: enable Declarative script splitting to avoid 64KB method limit

The ceph-dev-pipeline matrix fails to compile with 'Method too large:
WorkflowScript.___cps___NNN' when new cells are added (e.g. noble debug
builds, #2622), because the Declarative RuntimeASTTransformer emits the
entire pipeline model as a single method. Extracting stage bodies into
helper functions (#2621) does not help since the per-cell model
boilerplate dominates.

Enable the script splitting transformation (JENKINS-37984), which
splits the generated model into multiple methods so no single one hits
the JVM's 64KB bytecode limit.

Signed-off-by: David Galloway <david.galloway@ibm.com>
3 weeks agoMerge pull request #2642 from ceph/wip-77920
David Galloway [Mon, 6 Jul 2026 15:06:02 +0000 (11:06 -0400)]
Merge pull request #2642 from ceph/wip-77920

bwc: pin podman auth to a persistent authfile

3 weeks agoMerge pull request #2618 from ceph/pulp-repos
David Galloway [Mon, 6 Jul 2026 14:21:39 +0000 (10:21 -0400)]
Merge pull request #2618 from ceph/pulp-repos

enhancement: create Pulp repositories with labels before upload

4 weeks agoenhancement: create Pulp repositories with labels before upload 2618/head
Vaibhav Mahajan [Thu, 18 Jun 2026 10:20:42 +0000 (15:50 +0530)]
enhancement: create Pulp repositories with labels before upload

Add repository creation to the Pulp upload flow so CI jobs ensure the
target repo exists and carries labels discovery metadata before packages
are uploaded.

- Add `create_pulp_repository()` to idempotently create `rpm`/`deb`
  repositories, apply metadata labels as JSON and honor `retain-repo-versions`.
- Extract `get_pulp_distribution_labels()` and reuse it for both
  repository and distribution label application.
- Refactor `publish_pulp_distribution()` to use the shared label helper.
- Require `BRANCH` from the environment instead of deriving it from
  `CEPH_VERSION` via `release_from_version()`

Signed-off-by: Vaibhav Mahajan <vamahaja@redhat.com>
4 weeks agobwc: pin podman auth to a persistent authfile 2642/head
David Galloway [Thu, 2 Jul 2026 22:21:21 +0000 (18:21 -0400)]
bwc: pin podman auth to a persistent authfile

podman login was writing credentials to the default location under
XDG_RUNTIME_DIR (/run/user/<uid>), which is logind-managed tmpfs. The
Jenkins agent runs without XDG_RUNTIME_DIR set, so the runtime dir can
be torn down or re-resolved between bwc_login and the podman build it
is meant to authenticate. When that happens, the base image pull inside
build-with-container.py silently falls back to anonymous and hits
Docker Hub's per-IP unauthenticated rate limit (toomanyrequests), e.g.:

  https://jenkins.ceph.com/job/ceph-pull-requests-arm64/99076/

Set REGISTRY_AUTH_FILE to a persistent path in $HOME and pass
--authfile to podman login so login and all subsequent podman/buildah
invocations in the job resolve the same credential file regardless of
session state.

Fixes: https://tracker.ceph.com/issues/77920
Signed-off-by: David Galloway <david.galloway@ibm.com>
4 weeks agoMerge pull request #2641 from ceph/revert-2622-wip-shraddhaag-add-debug-noble
David Galloway [Thu, 2 Jul 2026 14:14:42 +0000 (10:14 -0400)]
Merge pull request #2641 from ceph/revert-2622-wip-shraddhaag-add-debug-noble

Revert "introduce noble debug builds"

4 weeks agoRevert "introduce noble debug builds" 2641/head
Shraddha Agrawal [Thu, 2 Jul 2026 14:13:55 +0000 (19:43 +0530)]
Revert "introduce noble debug builds"

4 weeks agoMerge pull request #2622 from shraddhaag/wip-shraddhaag-add-debug-noble
David Galloway [Thu, 2 Jul 2026 13:11:39 +0000 (09:11 -0400)]
Merge pull request #2622 from shraddhaag/wip-shraddhaag-add-debug-noble

introduce noble debug builds

4 weeks agoMerge pull request #2640 from tchaikov/wip-ceph-win
Kefu Chai [Thu, 2 Jul 2026 06:23:20 +0000 (14:23 +0800)]
Merge pull request #2640 from tchaikov/wip-ceph-win

Revert "ceph-windows: actually disable the mgr for the vstart cluster"

Reviewed-by: Ville Ojamo <git2233+ceph@ojamo.eu>
4 weeks agoRevert "ceph-windows: actually disable the mgr for the vstart cluster" 2640/head
Kefu Chai [Thu, 2 Jul 2026 05:57:18 +0000 (13:57 +0800)]
Revert "ceph-windows: actually disable the mgr for the vstart cluster"

turns out vstart.sh depends on mgr, and windows test uses vstart.sh
to start a cluter for running tests.

This reverts commit ed61da39dff87518e2779727c62d509f4a7ebd2c.

4 weeks agointroduce noble debug builds wip-shraddhaag-add-debug-noble 2622/head
Shraddha Agrawal [Mon, 22 Jun 2026 06:55:49 +0000 (12:25 +0530)]
introduce noble debug builds

This commit introduces debug builds for noble which can be used for
integration testing.
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
4 weeks agoMerge pull request #2621 from shraddhaag/refactor-matrix-stage-script
David Galloway [Wed, 1 Jul 2026 15:00:10 +0000 (11:00 -0400)]
Merge pull request #2621 from shraddhaag/refactor-matrix-stage-script

ceph-dev-pipeline: extract matrix stage script bodies into helper funcs

4 weeks agoMerge pull request #2630 from tchaikov/wip-windows-vstart-disable-mgr
David Galloway [Wed, 1 Jul 2026 14:17:17 +0000 (10:17 -0400)]
Merge pull request #2630 from tchaikov/wip-windows-vstart-disable-mgr

ceph-windows: actually disable the mgr for the vstart cluster

4 weeks agoceph-dev-pipeline: extract matrix stage script bodies into helper funcs 2621/head
Shraddha Agrawal [Mon, 22 Jun 2026 06:30:39 +0000 (12:00 +0530)]
ceph-dev-pipeline: extract matrix stage script bodies into helper funcs

Problem: We were hitting JVM's 64KB bytecode limit when adding new
distros to the matrix stage script.

Solution: Add helper functions for each stage in the matrix stage
script, such that the original block is significantly reduced, thus
ensuring we do not hit the JVM's 64KB limit again. This will also ensure
we can keep extending the matrix with more distros without worrying
about this issue.
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
4 weeks agoMerge pull request #2638 from knrt10/fix-venv-ceph-perf
Kautilya Tripathi [Mon, 29 Jun 2026 14:56:42 +0000 (20:26 +0530)]
Merge pull request #2638 from knrt10/fix-venv-ceph-perf

ceph-perf: install mdutils and run CBT under gh-venv

4 weeks agoceph-perf: install mdutils and run CBT under gh-venv 2638/head
Kautilya Tripathi [Mon, 29 Jun 2026 11:39:45 +0000 (17:09 +0530)]
ceph-perf: install mdutils and run CBT under gh-venv

cbt imports mdutils but ceph/cbt master requirements.txt does not
list it. Install mdutils into gh-venv, put the venv on PATH for
run-cbt.sh, and invoke compare.py via python3 so its /usr/bin/python3
shebang is not used. Only skip CBT runs when the archive dir already
has results, and fail the step if the archive is empty after run-cbt.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
4 weeks agoMerge pull request #2637 from knrt10/fix-arg-perf-test
Kautilya Tripathi [Mon, 29 Jun 2026 09:20:16 +0000 (14:50 +0530)]
Merge pull request #2637 from knrt10/fix-arg-perf-test

ceph-perf: default unset CEPH_PERF_EXTRA_CMAKE_ARGS for set -u

4 weeks agoceph-perf: default unset CEPH_PERF_EXTRA_CMAKE_ARGS for set -u 2637/head
Kautilya Tripathi [Mon, 29 Jun 2026 09:05:14 +0000 (14:35 +0530)]
ceph-perf: default unset CEPH_PERF_EXTRA_CMAKE_ARGS for set -u

run-cbt uses set -euxo pipefail, but the optional Jenkins parameter is not
always exported into the shell environment. Use ${CEPH_PERF_EXTRA_CMAKE_ARGS:-}
so PR-triggered builds do not fail before cmake.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
4 weeks agoMerge pull request #2634 from knrt10/fix-shebang
Kautilya Tripathi [Mon, 29 Jun 2026 04:13:24 +0000 (09:43 +0530)]
Merge pull request #2634 from knrt10/fix-shebang

ceph-perf: run run-cbt under bash on Jenkins

4 weeks agoceph-perf: run run-cbt under bash on Jenkins 2634/head
Kautilya Tripathi [Mon, 29 Jun 2026 03:25:35 +0000 (08:55 +0530)]
ceph-perf: run run-cbt under bash on Jenkins

Jenkins invokes shell steps as /bin/sh -xe when there is no shebang.
On Noble that is dash, which rejects set -o pipefail. Add #!/bin/bash
so Jenkins runs the run-cbt builder with bash.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
5 weeks agoMerge pull request #2623 from ceph/pulp-registry-upload
Zack Cerza [Fri, 26 Jun 2026 21:02:33 +0000 (15:02 -0600)]
Merge pull request #2623 from ceph/pulp-registry-upload

Add optional Pulp container registry upload to ceph-dev-pipeline.

5 weeks agoMerge pull request #2633 from ceph/wip-kernel-perl
Ilya Dryomov [Fri, 26 Jun 2026 19:16:44 +0000 (21:16 +0200)]
Merge pull request #2633 from ceph/wip-kernel-perl

kernel: install perl

Reviewed-by: Dan Mick <dan.mick@redhat.com>
5 weeks agokernel: install perl 2633/head
Ilya Dryomov [Fri, 26 Jun 2026 12:25:39 +0000 (14:25 +0200)]
kernel: install perl

perl has been required for building the Linux kernel for a long time
but it's not installed explicitly.

  error: Failed build dependencies:
   perl is needed by kernel-7.1.0_g0248d0a325dc-1.x86_64
  make[2]: *** [scripts/Makefile.package:75: binrpm-pkg] Error 11

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
5 weeks agoMerge pull request #2632 from knrt10/fix-pyjwt-version
Kautilya Tripathi [Thu, 25 Jun 2026 15:59:03 +0000 (21:29 +0530)]
Merge pull request #2632 from knrt10/fix-pyjwt-version

ceph-perf: fix github-check JWT iss with github3 from git

5 weeks agoceph-perf: pin pyjwt<2.11 for github-check 2632/head
Kautilya Tripathi [Thu, 25 Jun 2026 15:33:18 +0000 (21:03 +0530)]
ceph-perf: pin pyjwt<2.11 for github-check

github-check uses github3.py 4.0.1, which passes app_id as int to
jwt.encode(). PyJWT 2.11+ requires iss to be a string. Install
githubcheck first, then pin pyjwt<2.11.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
5 weeks agoMerge pull request #2626 from knrt10/fix-app-ip-ceph-perf-pr
Kautilya Tripathi [Thu, 25 Jun 2026 13:52:20 +0000 (19:22 +0530)]
Merge pull request #2626 from knrt10/fix-app-ip-ceph-perf-pr

ceph-perf: pin pyjwt for github-check and detect clang-18

5 weeks agoAdd optional Pulp container registry upload to ceph-dev-pipeline. 2623/head
deepssin [Mon, 22 Jun 2026 10:24:31 +0000 (15:54 +0530)]
Add optional Pulp container registry upload to ceph-dev-pipeline.
Mirror dev container images from Quay to Pulp when PULP_REGISTRY_UPLOAD
is enabled

5 weeks agoMerge pull request #2629 from ceph/c9-libvirt
adam kraitman [Thu, 25 Jun 2026 07:43:54 +0000 (10:43 +0300)]
Merge pull request #2629 from ceph/c9-libvirt

builder.yml: Get libvirt-devel from CRB

5 weeks agoceph-windows: actually disable the mgr for the vstart cluster 2630/head
Kefu Chai [Thu, 25 Jun 2026 01:41:15 +0000 (09:41 +0800)]
ceph-windows: actually disable the mgr for the vstart cluster

-WITH_MGR=OFF and -WITH_LTTNG=OFF were passed to do_cmake.sh with a single
dash, so cmake never set them.  The mgr has therefore been built and started
by every vstart run since this script was added in 2022, only to fail loading
rbd_support and telemetry because their python deps were never installed.

The librbd, rados and cephfs tests run against this cluster use the direct
library API and do not need the mgr, so disable it as originally intended.
Pass -DWITH_MGR=OFF (and -DWITH_LTTNG=OFF), and set CEPH_NUM_MGR=0 for
vstart.sh so it does not try to start a ceph-mgr that is no longer built.

python3-prettytable is kept: it is a client CLI dependency (ceph_daemon.py),
not a mgr one.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
5 weeks agobuilder.yml: Get libvirt-devel from CRB 2629/head
David Galloway [Wed, 24 Jun 2026 20:28:15 +0000 (16:28 -0400)]
builder.yml: Get libvirt-devel from CRB

Tested on CentOS 9 Stream and Rocky 10

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agoceph-perf: fix github-check and use run-make.sh for clang-19 2626/head
Kautilya Tripathi [Tue, 23 Jun 2026 10:17:07 +0000 (15:47 +0530)]
ceph-perf: fix github-check and use run-make.sh for clang-19

github-check fails on fresh venvs with PyJWT 2.13+ because github3
passes app_id as int to jwt.encode(). Pin pyjwt<2.13 before installing
githubcheck, and quote app-id/install-id in github-check calls.

Stop probing for clang down to 18 in the perf job; Crimson needs
clang-19. Let run-make.sh install it via llvm.sh (get_llvm) and select
it with discover_compiler, same as make-check nodes.

Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
5 weeks agoMerge pull request #2607 from cbodley/wip-cron-umbrella-jammy
David Galloway [Tue, 23 Jun 2026 13:45:20 +0000 (09:45 -0400)]
Merge pull request #2607 from cbodley/wip-cron-umbrella-jammy

ceph-dev-cron: add jammy to umbrella

5 weeks agoMerge pull request #2521 from ceph/sync-docker
David Galloway [Tue, 23 Jun 2026 13:40:11 +0000 (09:40 -0400)]
Merge pull request #2521 from ceph/sync-docker

sync-images: Login to dockerhub

5 weeks agosync-images: Login to dockerhub 2521/head
David Galloway [Tue, 30 Dec 2025 22:36:00 +0000 (17:36 -0500)]
sync-images: Login to dockerhub

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agoMerge pull request #2625 from ceph/builder-ansible-fail
Jitendra Sahu [Tue, 23 Jun 2026 13:34:56 +0000 (19:04 +0530)]
Merge pull request #2625 from ceph/builder-ansible-fail

builder-reimage improvements

5 weeks agoMerge pull request #2620 from ceph/no-fatal-br
Jitendra Sahu [Tue, 23 Jun 2026 13:34:09 +0000 (19:04 +0530)]
Merge pull request #2620 from ceph/no-fatal-br

builder-reimage: Noop if builder not found

5 weeks agobuilder.yml: Check for dir before running restorecon on it 2625/head
David Galloway [Mon, 22 Jun 2026 17:18:43 +0000 (13:18 -0400)]
builder.yml: Check for dir before running restorecon on it

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agobuilder.yml: Get pipx from epel
David Galloway [Mon, 22 Jun 2026 16:50:22 +0000 (12:50 -0400)]
builder.yml: Get pipx from epel

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agoMerge pull request #2566 from ceph/reenable-ceph-perf-check
Kautilya Tripathi [Tue, 23 Jun 2026 04:59:40 +0000 (10:29 +0530)]
Merge pull request #2566 from ceph/reenable-ceph-perf-check

ceph-perf: tighten PR regression gate

5 weeks agoMerge pull request #2624 from ceph/rocky-iscsi
David Galloway [Mon, 22 Jun 2026 19:54:42 +0000 (15:54 -0400)]
Merge pull request #2624 from ceph/rocky-iscsi

ceph-iscsi: Support building for el10

5 weeks agobuilder-reimage: Add missing common and container-host roles
David Galloway [Mon, 22 Jun 2026 16:27:33 +0000 (12:27 -0400)]
builder-reimage: Add missing common and container-host roles

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agobuilder-reimage: Make ansible failures fatal
David Galloway [Mon, 22 Jun 2026 16:22:30 +0000 (12:22 -0400)]
builder-reimage: Make ansible failures fatal

Signed-off-by: David Galloway <david.galloway@ibm.com>
5 weeks agoceph-iscsi: Support building for el10 2624/head
David Galloway [Mon, 22 Jun 2026 14:51:16 +0000 (10:51 -0400)]
ceph-iscsi: Support building for el10

Signed-off-by: David Galloway <david.galloway@ibm.com>
6 weeks agoMerge pull request #2617 from deepssin/nightly-priority-and-suite-cleanup
Zack Cerza [Thu, 18 Jun 2026 22:03:03 +0000 (16:03 -0600)]
Merge pull request #2617 from deepssin/nightly-priority-and-suite-cleanup

teuthology-nightly-cadence: fix NIGHTLY_PRIORITY scope in @NonCPS method

6 weeks agobuilder-reimage: Noop if builder not found 2620/head
David Galloway [Thu, 18 Jun 2026 19:46:12 +0000 (15:46 -0400)]
builder-reimage: Noop if builder not found

If we're adding a host to Jenkins for the first time, it won't exist yet.  And we'll send the labels when we run builder.yml.

Signed-off-by: David Galloway <david.galloway@ibm.com>
6 weeks agoMerge pull request #2613 from ceph/77418
David Galloway [Thu, 18 Jun 2026 15:32:53 +0000 (11:32 -0400)]
Merge pull request #2613 from ceph/77418

Support updating github PR status checks when manually triggering job

6 weeks agoteuthology-nightly-cadence: fix NIGHTLY_PRIORITY scope in @NonCPS method 2617/head
deepssin [Thu, 18 Jun 2026 09:59:38 +0000 (09:59 +0000)]
teuthology-nightly-cadence: fix NIGHTLY_PRIORITY scope in @NonCPS method

Signed-off-by: deepssin <deepssin@redhat.com>
6 weeks agoMerge pull request #2616 from tchaikov/revert-pr-2612
Kefu Chai [Thu, 18 Jun 2026 06:33:01 +0000 (14:33 +0800)]
Merge pull request #2616 from tchaikov/revert-pr-2612

Revert "introduce debug builds for noble"

Reviewed-by: Shraddha Agrawal <shraddhaag@ibm.com>
6 weeks agoRevert "introduce debug builds for noble" 2616/head
Kefu Chai [Thu, 18 Jun 2026 04:20:42 +0000 (12:20 +0800)]
Revert "introduce debug builds for noble"

This reverts commit 3c7edbed014b7b36d9e4eb9ecac91f1ebd6da3a8.

The added matrix cell pushed the CPS-generated WorkflowScript method past
the JVM's 64KB bytecode limit, failing every ceph-dev-pipeline build with
MethodTooLargeException. Revert to unblock CI; noble debug builds will be
re-landed once the matrix stage bodies are extracted into helper methods.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
6 weeks agoMerge pull request #2492 from anshuman-agarwala/power-support
Zack Cerza [Thu, 18 Jun 2026 00:46:19 +0000 (18:46 -0600)]
Merge pull request #2492 from anshuman-agarwala/power-support

[ceph-make-check-periodic-ppc64] Added support for ppc64 runners

6 weeks agoMerge pull request #2612 from shraddhaag/wip-shraddhaag-add-noble-debug
David Galloway [Wed, 17 Jun 2026 18:18:59 +0000 (14:18 -0400)]
Merge pull request #2612 from shraddhaag/wip-shraddhaag-add-noble-debug

introduce debug builds for noble

6 weeks agointroduce debug builds for noble 2612/head
Shraddha Agrawal [Tue, 16 Jun 2026 08:01:54 +0000 (13:31 +0530)]
introduce debug builds for noble

This commit adds debug builds for the distro noble. With this change, we
will also get debug noble builds. This is especially useful for testing
crimson in QA suites.
Signed-off-by: Shraddha Agrawal <shraddha.agrawal000@gmail.com>
6 weeks agoMerge pull request #2610 from ceph/improve-builder-reimage
David Galloway [Wed, 17 Jun 2026 16:49:23 +0000 (12:49 -0400)]
Merge pull request #2610 from ceph/improve-builder-reimage

builder-reimage: improve reimage flow and node handling

6 weeks agobuilder-reimage: add OS label validation, MAAS state check, and abort handling 2610/head
jitendrasahu1803 [Fri, 12 Jun 2026 05:13:36 +0000 (10:43 +0530)]
builder-reimage: add OS label validation, MAAS state check, and abort handling

Signed-off-by: jitendrasahu1803 <jitendra.sahu1803@gmail.com>
6 weeks agoceph-pull-requests-ppc64:Added support for ppc64 runners 2492/head
Anshuman [Mon, 3 Nov 2025 04:52:57 +0000 (10:22 +0530)]
ceph-pull-requests-ppc64:Added support for ppc64 runners

Signed-off-by: Anshuman <anshuman@ibm.com>
6 weeks agoMerge pull request #2609 from deepssin/nightly-priority-and-suite-cleanup
Zack Cerza [Tue, 16 Jun 2026 17:04:23 +0000 (11:04 -0600)]
Merge pull request #2609 from deepssin/nightly-priority-and-suite-cleanup

teuthology-nightly-cadence: raise priority, trim EOL suites, add umbr…

6 weeks agoPR checks: Send status updates if manually triggered 2613/head
David Galloway [Mon, 15 Jun 2026 20:57:34 +0000 (16:57 -0400)]
PR checks: Send status updates if manually triggered

Signed-off-by: David Galloway <david.galloway@ibm.com>
6 weeks agopr_only_for: Default to ceph/ceph, check GH for target branch
David Galloway [Mon, 15 Jun 2026 19:51:32 +0000 (15:51 -0400)]
pr_only_for: Default to ceph/ceph, check GH for target branch

In case we manually triggered the job.

Signed-off-by: David Galloway <david.galloway@ibm.com>
6 weeks agoMerge pull request #2611 from ceph/77414
David Galloway [Tue, 16 Jun 2026 13:51:52 +0000 (09:51 -0400)]
Merge pull request #2611 from ceph/77414

setup_container_runtime.sh: Cleanup buildah containers

6 weeks agosetup_container_runtime.sh: Cleanup buildah containers 2611/head
David Galloway [Mon, 15 Jun 2026 17:55:01 +0000 (13:55 -0400)]
setup_container_runtime.sh: Cleanup buildah containers

Unsure where these are even coming from but let's clean 'em up.

Fixes: https://tracker.ceph.com/issues/77414
Signed-off-by: David Galloway <david.galloway@ibm.com>
6 weeks agoteuthology-nightly-cadence: raise priority, trim EOL suites, add umbrella 2609/head
deepssin [Mon, 15 Jun 2026 11:09:21 +0000 (11:09 +0000)]
teuthology-nightly-cadence: raise priority, trim EOL suites, add umbrella

Bump maintenance nightly suites to priority 200 so jobs run ahead of the
old 800+ backlog while staying behind dev/release work at 50–75. Drop
teuthology/nop and quincy (EOL). Add umbrella with the same suite list and
daily cadence as main; keep squid for active stable testing. Timer now
fires main, tentacle, squid, and umbrella

Signed-off-by: deepssin <deepssin@redhat.com>
7 weeks agoMerge pull request #2582 from bluikko/pr-commits-docs-and-backports-branch
Kefu Chai [Fri, 12 Jun 2026 07:36:19 +0000 (15:36 +0800)]
Merge pull request #2582 from bluikko/pr-commits-docs-and-backports-branch

ceph-pr-commits: support target branch in docs commit summary

Reviewed-by: Kefu Chai <k.chai@proxmox.com>
7 weeks agoceph-pr-commits: support target branch in docs commit msgs 2582/head
Ville Ojamo [Fri, 12 Jun 2026 05:21:27 +0000 (12:21 +0700)]
ceph-pr-commits: support target branch in docs commit msgs

ceph/ceph@0a54fcdfc491ce2b2bb3ded77e319a7cff785e73 added a new policy
that backport PRs with not-cherry-picked commits need the commit log
summary to begin with the target branch name.
This policy conflicted with docs-only commits that must have the same
line start with "doc", as enforced by this job.

Modify the regex used to allow an additional optional "branch: " string in
front of the "doc" string in the beginning of the commit message
summary, only if "target_branch" is something else than "main".

Signed-off-by: Ville Ojamo <git2233+ceph@ojamo.eu>
7 weeks agoceph-pr-commits: simplify regex and git command
Ville Ojamo [Fri, 12 Jun 2026 05:19:24 +0000 (12:19 +0700)]
ceph-pr-commits: simplify regex and git command

Use git command output formatting instead of a complex regex on the
standard git log output.

Signed-off-by: Ville Ojamo <git2233+ceph@ojamo.eu>
7 weeks agoceph-dev-cron: add jammy to umbrella 2607/head
Casey Bodley [Thu, 11 Jun 2026 14:51:00 +0000 (10:51 -0400)]
ceph-dev-cron: add jammy to umbrella

umbrella will still support ubuntu jammy, and qa suites there depend on
jammy packages. reenable jammy in ceph-dev-cron builds in case we
want to schedule suites directly against the tip of umbrella

https://docs.ceph.com/en/latest/start/os-recommendations/#platforms

Signed-off-by: Casey Bodley <cbodley@redhat.com>
7 weeks agoceph-perf: tighten PR regression gate 2566/head
Kautilya Tripathi [Thu, 26 Mar 2026 09:54:14 +0000 (15:24 +0530)]
ceph-perf: tighten PR regression gate

This describes the perf PR job as a release regression check, pin the
benchmark definition to ceph-main, and surface the perf regression
status in GitHub. This also reenables the ceph-perf-pull-request

Fixes: https://tracker.ceph.com/issues/75665
Signed-off-by: Kautilya Tripathi <kautilya.tripathi@ibm.com>
7 weeks agoMerge pull request #2602 from ceph/builder-reimage-final
David Galloway [Wed, 10 Jun 2026 16:21:17 +0000 (12:21 -0400)]
Merge pull request #2602 from ceph/builder-reimage-final

Add Jenkins pipeline for builder reimage

7 weeks agoBuilder-Reimage: Fix merge conflict in README.md 2602/head
Jitendra Sahu [Wed, 10 Jun 2026 14:53:33 +0000 (20:23 +0530)]
Builder-Reimage: Fix merge conflict in README.md

Removed merge conflict markers from README.