Skip to content

Feat: object storage bucket, policy, object, acl, version crud#659

Merged
avirtopeanu-ionos merged 51 commits intomasterfrom
feat/object-storage-bucket-crud
May 7, 2026
Merged

Feat: object storage bucket, policy, object, acl, version crud#659
avirtopeanu-ionos merged 51 commits intomasterfrom
feat/object-storage-bucket-crud

Conversation

@cristiGuranIonos
Copy link
Copy Markdown
Member

@cristiGuranIonos cristiGuranIonos commented Mar 30, 2026

Add ionosctl object-storage command tree for IONOS S3-compatible Object Storage
Also adds S3 credential resolution with provenance display (env vars, config file)

Copilot AI review requested due to automatic review settings March 30, 2026 13:42
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds Object Storage bucket CRUD support to ionosctl, including a dedicated S3 client initializer, CLI commands, docs, and Bats e2e coverage.

Changes:

  • Add object-storage bucket subcommands (create, get, delete) and register them in the root CLI.
  • Introduce an Object Storage (S3) client helper and required SDK dependency.
  • Add generated command documentation and Bats e2e tests for bucket flows.

Reviewed changes

Copilot reviewed 15 out of 141 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
test/bats/object-storage/object-storage.bats Adds e2e Bats tests for bucket create/get/delete and error cases
internal/constants/constants.go Adds constants for object storage flags/env vars
internal/client/s3client.go Adds S3/Object Storage client initialization with env/config credential resolution
go.mod Adds objectstorage SDK dependency
docs/summary.md Adds docs navigation entries for object storage bucket commands
docs/subcommands/Compute Engine/object/storage/bucket/create.md Adds docs page for object-storage bucket create
docs/subcommands/Compute Engine/object/storage/bucket/get.md Adds docs page for object-storage bucket get
docs/subcommands/Compute Engine/object/storage/bucket/delete.md Adds docs page for object-storage bucket delete
commands/root.go Registers the new object-storage command
commands/object-storage/object_storage.go Adds object-storage root command
commands/object-storage/bucket/bucket.go Adds bucket parent command and shared output columns
commands/object-storage/bucket/create.go Implements bucket creation
commands/object-storage/bucket/get.go Implements bucket lookup and output formatting
commands/object-storage/bucket/delete.go Implements bucket deletion with confirmation
CLAUDE.md Adds repository guidance for Claude Code

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread test/suites/object-storage/object-storage.bats
Comment thread test/suites/object-storage/object-storage.bats
Comment thread commands/object-storage/bucket/create.go Outdated
Comment thread commands/object-storage/bucket/delete.go
Comment thread docs/summary.md Outdated
Comment thread CLAUDE.md Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 24 out of 150 changed files in this pull request and generated 11 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread commands/root.go
Comment thread internal/client/objectstorageclient.go
Comment thread internal/client/objectstorageclient.go
Comment thread commands/object-storage/bucket/list.go
Comment thread commands/object-storage/bucket/list.go Outdated
Comment thread commands/object-storage/object/list.go Outdated
Comment thread commands/object-storage/bucket/list_objects.go Outdated
Comment thread commands/object-storage/bucket/head.go Outdated
Comment thread test/suites/object-storage/object-storage.bats
Comment thread test/suites/object-storage/object-storage.bats
@cristiGuranIonos cristiGuranIonos requested a review from Copilot April 2, 2026 06:16
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 75 out of 201 changed files in this pull request and generated 8 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread internal/client/objectstorageclient.go
Comment thread commands/object-storage/bucket/list.go Outdated
Comment thread commands/object-storage/object/get.go Outdated
Comment thread commands/object-storage/object/get.go Outdated
Comment thread internal/client/objectstorageclient.go
Comment thread internal/client/objectstorageclient.go
Comment thread internal/client/s3client.go Outdated
Comment thread internal/client/s3client.go Outdated
@cristiGuranIonos cristiGuranIonos requested a review from Copilot April 3, 2026 09:54
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 75 out of 201 changed files in this pull request and generated 9 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread commands/object-storage/object/object.go
Comment thread commands/object-storage/bucket/bucket.go
Comment thread commands/object-storage/bucket/bucket.go
Comment thread commands/object-storage/bucket/policy/policy.go
Comment thread commands/object-storage/bucket/policy/policy.go
Comment thread commands/object-storage/bucket/list.go
Comment thread commands/object-storage/completer/completer.go Outdated
Comment thread docs/subcommands/Object-Storage/object/list.md Outdated
Comment thread commands/root.go
@cristiGuranIonos cristiGuranIonos changed the title Feat/object storage bucket crud Feat: object storage bucket, policy, object, acl, version crud Apr 6, 2026
Comment thread commands/cfg/whoami.go
Comment thread commands/object-storage/bucket/head.go
Comment thread commands/object-storage/bucket/list.go Outdated
Comment thread commands/object-storage/object/list.go Outdated
Comment thread commands/object-storage/bucket/create.go Outdated
Comment thread commands/object-storage/bucket/list.go Outdated
Comment thread internal/client/objectstorageclient.go Outdated
Comment thread commands/object-storage/bucket/create.go Outdated
@glimberea glimberea requested review from a team, adeatcu-ionos, avirtopeanu-ionos, cavramoniu-ionos, cbeti-ionos, glimberea, mimihalescu and rmocanu-ionos and removed request for a team April 24, 2026 08:16
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link
Copy Markdown
Contributor

@avirtopeanu-ionos avirtopeanu-ionos left a comment

Choose a reason for hiding this comment

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

nice work!

@avirtopeanu-ionos avirtopeanu-ionos force-pushed the feat/object-storage-bucket-crud branch from d764ff1 to 5136615 Compare May 7, 2026 09:32
@avirtopeanu-ionos avirtopeanu-ionos changed the base branch from master to test/more-info May 7, 2026 09:32
cristiGuranIonos and others added 26 commits May 7, 2026 13:45
* add bucket policy command tree

* add s3 creds in workflow

---------

Co-authored-by: Gabriela Limberea <glimberea@ionos.com>
Co-authored-by: Gabriela Limberea <glimberea@ionos.com>
Co-authored-by: Gabriela Limberea <glimberea@ionos.com>
…bucket related commands under bucket, object related commands under object
@avirtopeanu-ionos avirtopeanu-ionos force-pushed the feat/object-storage-bucket-crud branch from b1e4562 to a19b617 Compare May 7, 2026 10:48
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 7, 2026

@avirtopeanu-ionos avirtopeanu-ionos merged commit 2f508a8 into master May 7, 2026
12 checks passed
@avirtopeanu-ionos avirtopeanu-ionos deleted the feat/object-storage-bucket-crud branch May 7, 2026 10:59
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