Skip to content

drop ceph/radosgw backend support and block ceph-style endpoints#2614

Merged
bert-e merged 2 commits intodevelopment/8.4from
improvement/ARSN-573-drop-ceph-support
Apr 20, 2026
Merged

drop ceph/radosgw backend support and block ceph-style endpoints#2614
bert-e merged 2 commits intodevelopment/8.4from
improvement/ARSN-573-drop-ceph-support

Conversation

@benzekrimaha
Copy link
Copy Markdown
Contributor

Issue: ARSN-573

@bert-e
Copy link
Copy Markdown
Contributor

bert-e commented Apr 15, 2026

Hello benzekrimaha,

My role is to assist you with the merge of this
pull request. Please type @bert-e help to get information
on this process, or consult the user documentation.

Available options
name description privileged authored
/after_pull_request Wait for the given pull request id to be merged before continuing with the current one.
/bypass_author_approval Bypass the pull request author's approval
/bypass_build_status Bypass the build and test status
/bypass_commit_size Bypass the check on the size of the changeset TBA
/bypass_incompatible_branch Bypass the check on the source branch prefix
/bypass_jira_check Bypass the Jira issue check
/bypass_peer_approval Bypass the pull request peers' approval
/bypass_leader_approval Bypass the pull request leaders' approval
/approve Instruct Bert-E that the author has approved the pull request. ✍️
/create_pull_requests Allow the creation of integration pull requests.
/create_integration_branches Allow the creation of integration branches.
/no_octopus Prevent Wall-E from doing any octopus merge and use multiple consecutive merge instead
/unanimity Change review acceptance criteria from one reviewer at least to all reviewers
/wait Instruct Bert-E not to run until further notice.
Available commands
name description privileged
/help Print Bert-E's manual in the pull request.
/status Print Bert-E's current status in the pull request TBA
/clear Remove all comments from Bert-E from the history TBA
/retry Re-start a fresh build TBA
/build Re-start a fresh build TBA
/force_reset Delete integration branches & pull requests, and restart merge process from the beginning.
/reset Try to remove integration branches unless there are commits on them which do not appear on the source branch.

Status report is not available.

@bert-e
Copy link
Copy Markdown
Contributor

bert-e commented Apr 15, 2026

Incorrect fix version

The Fix Version/s in issue ARSN-573 contains:

  • None

Considering where you are trying to merge, I ignored possible hotfix versions and I expected to find:

  • 8.4.0

Please check the Fix Version/s of ARSN-573, or the target
branch of this pull request.

Comment thread lib/patches/locationConstraints.ts Outdated
Comment thread lib/patches/locationConstraints.ts Outdated
@claude
Copy link
Copy Markdown

claude Bot commented Apr 15, 2026

  • isUnsupportedCephEndpoint matches the 3-char substring "rgw" which could cause false positives on legitimate endpoints — consider a word-boundary-aware match instead
    • Use a regex like /(?:^|[^a-z0-9])rgw(?:[^a-z0-9]|$)/ to match rgw as a distinct token
  • Rejected ceph endpoints are logged at info level, which may be missed — silently dropping a configured location warrants warn
    • Change log.info to log.warn on the rejection path

Review by Claude Code

In this commit we :
removed explicit Ceph location type handling from location patching logic
removed CI_CEPH path-style override behavior
removed Ceph-specific unit test coverage
added defensive validation to reject Ceph/RadosGW-style endpoints even when configured through generic S3 location types
added unit tests validating endpoint rejection for ceph and radosgw patterns

Issue: ARSN-573
@benzekrimaha benzekrimaha force-pushed the improvement/ARSN-573-drop-ceph-support branch from b2fb8c1 to 1504695 Compare April 15, 2026 17:29
@claude
Copy link
Copy Markdown

claude Bot commented Apr 15, 2026

LGTM

Clean removal of the ceph/radosgw backend. The endpoint-blocking heuristic uses proper word-boundary matching to avoid false positives (e.g. forgwave), the fallthrough switch logic is preserved correctly, and test coverage addresses the key scenarios.

Review by Claude Code

@benzekrimaha benzekrimaha marked this pull request as ready for review April 15, 2026 17:32
@benzekrimaha benzekrimaha requested review from a team, DarkIsDude and SylvainSenechal April 15, 2026 17:32
@claude
Copy link
Copy Markdown

claude Bot commented Apr 15, 2026

LGTM

Review by Claude Code

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 15, 2026

Codecov Report

❌ Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 73.48%. Comparing base (1bad36f) to head (b56f378).
⚠️ Report is 9 commits behind head on development/8.4.

Files with missing lines Patch % Lines
lib/patches/locationConstraints.ts 88.88% 1 Missing ⚠️
Additional details and impacted files
@@               Coverage Diff                @@
##           development/8.4    #2614   +/-   ##
================================================
  Coverage            73.47%   73.48%           
================================================
  Files                  222      222           
  Lines                18177    18183    +6     
  Branches              3762     3763    +1     
================================================
+ Hits                 13356    13361    +5     
- Misses                4816     4817    +1     
  Partials                 5        5           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread lib/patches/locationConstraints.ts Outdated
supportsVersioning = true; // fallthrough
case 'location-do-spaces-v1':
if (isUnsupportedCephEndpoint(l.details?.endpoint)) {
log.warn('unsupported ceph endpoint for location type', {
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.

Maybe adding the word "deprecated" inside would provide more context

Copy link
Copy Markdown
Contributor

@SylvainSenechal SylvainSenechal left a comment

Choose a reason for hiding this comment

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

Can you explain a bit the pr :
in zenko when we removed ceph, we just completely removed everything.
Here it seems that instead of just removing any reference to ceph, we add tests that will assert that ceph is not supported ? its kinda weird because later someone might read this and wonder why would we do this for ceph but not for any other s3 backend ?

I mean, i guess the pr is ok but just lacking context, like one of the location (location-do-spaces-v1) is just removed from the switch statement, while the location-do-spaces-v1 is not removed bu gets an extra isUnsupported ceph endpoint logic

Maybe there is some coupling with other codebase because it's Arsenal, forcing us to do this ?

@claude
Copy link
Copy Markdown

claude Bot commented Apr 19, 2026

LGTM

The Ceph/RadosGW removal is clean: the location-ceph-radosgw-s3-v1 case and CI_CEPH env var are fully removed with no remaining references. The isUnsupportedCephEndpoint regex correctly uses non-alphanumeric boundaries to catch "ceph", "radosgw", and "rgw" as standalone tokens without false-positiving on substrings like "forgwave". Tests cover the key cases (rejection, substring pass-through). The LocationType union change is an intentional breaking change consistent with the PR's purpose.

Review by Claude Code

@benzekrimaha
Copy link
Copy Markdown
Contributor Author

/approve

@scality scality deleted a comment from bert-e Apr 20, 2026
@bert-e
Copy link
Copy Markdown
Contributor

bert-e commented Apr 20, 2026

In the queue

The changeset has received all authorizations and has been added to the
relevant queue(s). The queue(s) will be merged in the target development
branch(es) as soon as builds have passed.

The changeset will be merged in:

  • ✔️ development/8.4

The following branches will NOT be impacted:

  • development/6.4
  • development/7.10
  • development/7.4
  • development/7.70
  • development/8.1
  • development/8.2
  • development/8.3

There is no action required on your side. You will be notified here once
the changeset has been merged. In the unlikely event that the changeset
fails permanently on the queue, a member of the admin team will
contact you to help resolve the matter.

IMPORTANT

Please do not attempt to modify this pull request.

  • Any commit you add on the source branch will trigger a new cycle after the
    current queue is merged.
  • Any commit you add on one of the integration branches will be lost.

If you need this pull request to be removed from the queue, please contact a
member of the admin team now.

The following options are set: approve

@bert-e
Copy link
Copy Markdown
Contributor

bert-e commented Apr 20, 2026

I have successfully merged the changeset of this pull request
into targetted development branches:

  • ✔️ development/8.4

The following branches have NOT changed:

  • development/6.4
  • development/7.10
  • development/7.4
  • development/7.70
  • development/8.1
  • development/8.2
  • development/8.3

Please check the status of the associated issue ARSN-573.

Goodbye benzekrimaha.

@bert-e bert-e merged commit 800ce54 into development/8.4 Apr 20, 2026
8 checks passed
@bert-e bert-e deleted the improvement/ARSN-573-drop-ceph-support branch April 20, 2026 13:10
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.

4 participants