Skip to content

CBG-5647 Move the weekly integration sweep into a Jenkinsfile - #8776

Merged
bbrks merged 5 commits into
mainfrom
weekly-integration-jenkinsfile
Sep 11, 2026
Merged

CBG-5647 Move the weekly integration sweep into a Jenkinsfile#8776
bbrks merged 5 commits into
mainfrom
weekly-integration-jenkinsfile

Conversation

@torcolvin

@torcolvin torcolvin commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

CBG-5647 Move the weekly integration sweep into a Jenkinsfile

Extracted the Jenkinsfile directly in the first commit.

Dynamically resolve the versions to pick up the latest minor versions:

  1. ask dockerhub the latest 7.6, 8.0 tags for minor versions (7.6.12, 8.0.3 currently)
  2. ask cb-vanilla for latest 7.6, 8.0, 8.5 (resolved to x.y.z-1234 now)

Tested with https://jenkins.sgwdev.com/job/tmp-ghcr-tag-probe/7/console

After this merges, SyncGatewayIntegration-weekly will need to be updated to point at this jenkinsfile.

torcolvin and others added 2 commits September 10, 2026 10:39
SyncGatewayIntegration-weekly ran as an inline pipeline script in Jenkins. Move
it to integration-test/SyncGatewayIntegrationWeekly/Jenkinsfile, along with the
job settings that belong with it: the Saturday cron, the timeout, the log
rotator and disableConcurrentBuilds.

The server versions are resolved on every run rather than pinned, so the sweep
follows patch releases without a commit. GA versions come from the Docker Hub
tag API and the unreleased tips from the cb-vanilla package, read with the
github_ghcr_pat credential the child jobs already use to pull those images. The
pins had all fallen behind: 7.6.11 was older than GA, and 8.1 has since become
8.5.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The floating '<version>' tag moves from build to build, so the build record did
not say which image a sweep ran. Resolve the '<version>-<build number>' tag
instead, which is immutable. Released versions keep their plain Docker Hub tag,
where the patch number is enough.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@torcolvin torcolvin changed the title Move the weekly integration sweep into a Jenkinsfile CBG-5647 Move the weekly integration sweep into a Jenkinsfile Sep 10, 2026
@torcolvin
torcolvin requested a lite review from Copilot September 10, 2026 14:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The Docker Hub tag-resolution shell pipeline should use set -euo pipefail to avoid masking upstream failures and producing misleading resolution errors.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Introduces a new Jenkins declarative pipeline to run the weekly “integration sweep” as a first-class Jenkinsfile, dynamically resolving Couchbase Server versions (GA from Docker Hub and tip builds from cb-vanilla) and fanning out into parallel SyncGatewayIntegration-Pipeline child builds.

Changes:

  • Added integration-test/SyncGatewayIntegrationWeekly/Jenkinsfile to schedule and run the weekly sweep via a Jenkinsfile-defined cron trigger.
  • Implemented runtime resolution of latest patch tags from Docker Hub for selected release lines.
  • Implemented runtime resolution of latest build tags from ghcr.io/cb-vanilla/server via the GitHub Packages API, and ran all combinations in parallel.
File summaries
File Description
integration-test/SyncGatewayIntegrationWeekly/Jenkinsfile Adds a scheduled weekly sweep pipeline that resolves server versions dynamically and triggers parallel downstream integration jobs.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread integration-test/SyncGatewayIntegrationWeekly/Jenkinsfile
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@torcolvin
torcolvin requested a review from bbrks September 10, 2026 15:02
@torcolvin
torcolvin marked this pull request as ready for review September 10, 2026 15:02
@torcolvin
torcolvin requested a review from a team September 10, 2026 15:02
@factory-droid

factory-droid Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Droid finished @torcolvin's task —— View job


Phase 2 (validation) complete

  • Candidates validated: 1
  • Approved (posted): 1
  • Rejected (not posted): 0

Summary: Validated 1 candidate comment for this PR; 1 is approved for posting. The approved note flags a likely Jenkins capacity issue where each parallel branch holds a lightweight executor while waiting on a downstream build.

Comment thread integration-test/SyncGatewayIntegrationWeekly/Jenkinsfile Outdated

@bbrks bbrks left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm other than the droid suggestion

@bbrks bbrks assigned torcolvin and unassigned bbrks Sep 11, 2026
@torcolvin
torcolvin requested a review from bbrks September 11, 2026 13:46
@torcolvin torcolvin assigned bbrks and unassigned torcolvin Sep 11, 2026
@bbrks
bbrks merged commit c8c5c2a into main Sep 11, 2026
48 of 49 checks passed
@bbrks
bbrks deleted the weekly-integration-jenkinsfile branch September 11, 2026 14:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants