-
Notifications
You must be signed in to change notification settings - Fork 72
[Feature] [Platform] Installer move to OCI #1987
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
76ccda4 to
1f6d4ab
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR migrates the platform installer from using an S3-based chart registry to an OCI (Open Container Initiative) registry approach. The key changes consolidate registry client functionality, add environment variable support for license manager credentials, and introduce a stage-based registry host naming convention.
- Migrated from S3-based chart repository to OCI registry for Helm chart distribution
- Consolidated registry client creation into a reusable
cli.Registrymodule - Added environment variable support for license manager credentials
Reviewed Changes
Copilot reviewed 18 out of 18 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| pkg/util/k8sutil/helm/package.go | Added Stage field to PackageSpec and GetStage() method with "prd" default |
| pkg/util/executor/executor.go | Added default case with continue in Timeout select statement |
| pkg/util/cli/registry.go | New file implementing registry client factory with configuration support |
| pkg/util/cli/lm.go | Added RegistryHosts method and EnvEnabled support for credentials |
| pkg/util/cli/flag.go | Implemented environment variable loading for flags via GetFromEnv() |
| pkg/platform/runner.go | Replaced flagPlatformEndpoint with flagRegistry in runner |
| pkg/platform/regclient.go | Removed - functionality moved to cli.Registry |
| pkg/platform/package_registry.go | Removed - registry redirection command removed |
| pkg/platform/package_install.go | Updated to use OCI registry, improved logging with structured logger |
| pkg/platform/package_import.go | Updated to use consolidated registry client |
| pkg/platform/package_export.go | Updated to use OCI registry with endpoint-based chart references |
| pkg/platform/package.go | Removed packageRegistry command |
| pkg/platform/pack/utils.go | New file with OCI chart reference and export utilities |
| pkg/platform/pack/export.go | Updated to use OCI registry instead of ChartManager |
| pkg/platform/flags.go | Replaced individual registry flags with cli.Registry |
| pkg/platform/chart_manager.go | Removed - S3-based chart manager no longer needed |
| docs/cli/arangodb_operator_platform.md | Updated documentation to reflect new flags and removed commands |
| CHANGELOG.md | Added bugfix entry for installer OCI migration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| default: | ||
| continue |
Copilot
AI
Nov 6, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The default case with continue is redundant and serves no purpose. The continue statement at the end of a loop iteration happens automatically. This case can be safely removed without changing behavior.
| default: | |
| continue |
| } | ||
|
|
||
| logger.Info("Installed Chart: %s", name) | ||
| log.Info("Installed Chart: %s") |
Copilot
AI
Nov 6, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The log message contains a format specifier %s but no corresponding argument is provided. This will print the literal string 'Installed Chart: %s'. Either remove the %s or pass the chart name as an argument.
| log.Info("Installed Chart: %s") | |
| log.Info("Installed Chart: %s", name) |
| return err | ||
| } | ||
| logger.Info("Updated Service: %s", name) | ||
| log.Info("Updated Service: %s", name) |
Copilot
AI
Nov 6, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This logging statement uses printf-style formatting which is inconsistent with the structured logging approach used elsewhere in the same function (e.g., line 128 uses log.Str()). For consistency, either use structured logging or ensure the logger supports printf-style formatting.
| log.Info("Updated Service: %s", name) | |
| log.Info("Updated Service", log.Str("name", name)) |
1f6d4ab to
9d6b685
Compare
No description provided.