Adam Kraitman [Tue, 24 Jun 2025 13:17:19 +0000 (16:17 +0300)]
Changes and fixes I have made to the builder.yml
- Installing java-21 insted of java-17(EOL)
- Stoping unattended-upgrades to avoid conflicts
- Refreshes the apt package cache to ensure the system has the latest package metadata before performing upgrades
- Upgrades all installed packages to their latest versions on debian based systems and cleans up unused dependencies and cached files
- Updates the package cache and upgrades all packages to their latest versions on redhat based systems
- Updates the package cache and upgrades all packages on suse based systems
- Fixing the task - "get github host key from github if necessary" that checks github_host_key == "" but since github_host_key is undefined, ansible throws an error
- Fixing the taks - "Install the systemd unit files for jenkins" by using playbook_dir for explicit path resolution
Signed-off-by: Adam Kraitman <akraitma@li-8b09b2cc-35b7-11b2-a85c-cd1dbade58f9.ibm.com>
Casey Bodley [Wed, 4 Jun 2025 20:57:37 +0000 (16:57 -0400)]
remove 'jaeger' flavor now that it's on by default
jaeger was enabled by default in all ceph builds in
https://github.com/ceph/ceph/pull/44684 which was present in reef and
later releases. so no supported releases need a flavor to turn it on
ceph-dev-new-trigger hadn't been updated from 'DISTROS=centos8 focal'
so is probably not being used
Matan Breizman [Wed, 28 May 2025 08:16:50 +0000 (11:16 +0300)]
ceph-dev-cron: Build both crimson flavors
When building the daily main build, use both crimson flavors.
This is critical for the weekly nightly runs.
Note: Usual builds would still only build a *single* crimson-flavor (debug).
This commit only affects the dev-cron
Matan Breizman [Sun, 8 Jun 2025 07:36:48 +0000 (10:36 +0300)]
Seperate Crimson flavors to crimson-debug/release
The following change would allow us to:
* Keep testing "Debug" builds (crimson-debug) by default.
* When crimson-only is used, crimson-release would also be built.
* `crimson-release` builds would be used in the weekly nightlies and on
selected PR gatings (when crimson-debug is not enough).
Note: Once crimson-release is stable enough we could switch crimson-debug
to actaully be of: "RelWithDebInfo + !NDEBUG + asserts" instead of "Debug".
For now, let's keep it as Debug since we know it's stable.
Seena Fallah [Tue, 27 May 2025 19:03:00 +0000 (21:03 +0200)]
vagrant-libvirt: install the latest version
The pinned version is already too old and is failing in CI due to:
```
Error message given during initialization: Unable to resolve dependency:
user requested 'vagrant-libvirt (= 0.12.2)'
```
Let's try the latest and see if the reason for pinning the old one
still exists.
Dan Mick [Mon, 19 May 2025 20:42:51 +0000 (13:42 -0700)]
ceph-build: remove container build step
This was removed from build_rpm, but then when a reorg happened
to separate the function into a separate script, the fact that
ceph-build doesn't do container builds anymore was missed.
Release container builds now happen after the manual signing
step using job ceph-release-containers
Matan Breizman [Sun, 18 May 2025 08:40:52 +0000 (11:40 +0300)]
scripts/build_utils: remove Debug build from Crimson
See: https://github.com/ceph/ceph-build/pull/2167/files
Builds should be set to Debug only when ending in "-debug".
https://github.com/ceph/ceph-build/pull/1805 set Crimson to always use Debug.
That made sense in earlier development phases.
However, today we should align with Classical builds and use Debug only when needed.
Dan Mick [Wed, 14 May 2025 00:35:03 +0000 (17:35 -0700)]
examples/builder.yml: set api token based on api_uri
This is really the ceph-jenkins ssh user's password, but they're
now stored in ceph-sepia-secrets so they don't have to be found
and entered on the cmdline here
This keeps 'one ansible-vault encrypt output' in one file, and
should be easier to edit/view/etc.
Dan Mick [Wed, 14 May 2025 00:36:34 +0000 (17:36 -0700)]
examples/builder.yml: fix up subuid/subgid handling code
1) not necessary to make 'find highest uid' conditional (and the
check was checking 0 instead of !0 anyway)
2) fix up choice of "calculated or default" using "| default()"
1. When building, use two tags: branch.os.arch, and sha1.branch.os.arch
2. After building, push both tags
3. Before building, pull both tags
As a result, we can avoid building entirely if that exact image has already been
pushed, and avoid building at least some layers if the branch had been built
somewhat recently.
Dan Mick [Tue, 25 Mar 2025 23:58:02 +0000 (16:58 -0700)]
Add ceph-release-containers job
Builds prerelease versions of ceph container images: two arch-specific
images and one 'manifest-list' image. Pushed all to quay.ceph.io/ceph,
in a private set of repos (prerelease-amd64, prerelease-arm64, and
prerelease) for testing and signoff. Once moved, the script
container/make-manifest-list.py can be used with the --promote flag to
promote them from quay.ceph.io to quay.io for public release.
Dan Mick [Thu, 20 Mar 2025 23:45:17 +0000 (16:45 -0700)]
ceph-build: remove container build
The container must be built from signed packages, and signing
is not part of the Jenkins build. So we'll create two new jobs
to build the prerelease containers (so that builders don't have
to have access to both amd64 and arm64 build hosts).