-
Notifications
You must be signed in to change notification settings - Fork 19
feat: Rekor search-index tls #1159
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: main
Are you sure you want to change the base?
Conversation
Reviewer's GuideThis PR augments the Rekor search-index feature with TLS encryption, unifies database provisioning and credentials handling, refactors searchIndex logic into a centralized utility, and extends CRD schemas and controller actions to support secure Redis/MySQL connections. Sequence diagram for Rekor search-index provisioning with TLS and passwordsequenceDiagram
participant Operator
participant RekorCR
participant RedisSecret as "Secret: Redis Password"
participant RedisTLS as "Secret: Redis TLS"
participant RedisDeployment
participant RekorServer
Operator->>RekorCR: Reconcile
Operator->>RedisSecret: Create password secret
Operator->>RedisTLS: Create/resolve TLS secret
Operator->>RedisDeployment: Deploy Redis with password & TLS
Operator->>RekorServer: Deploy Rekor Server with secure Redis connection
RekorServer->>RedisDeployment: Connect using password & TLS
Entity relationship diagram for updated Rekor SearchIndex and SearchIndexStatuserDiagram
RekorSpec ||--o| SearchIndex : has
RekorStatus ||--o| SearchIndexStatus : has
SearchIndex {
BOOL Create
STRING Provider
STRING Url
TLS TLS
}
SearchIndexStatus {
TLS TLS
SecretKeySelector DbPasswordRef
}
TLS {
SecretKeySelector CertRef
SecretKeySelector PrivateKeyRef
}
SecretKeySelector {
STRING Name
STRING Key
}
Class diagram for new and updated Rekor types (SearchIndex, SearchIndexStatus, TLS)classDiagram
class RekorSpec {
RekorSigner Signer
SearchIndex SearchIndex
}
class RekorStatus {
RekorSigner Signer
SearchIndexStatus SearchIndex
}
class SearchIndex {
+bool* Create
+string Provider
+string Url
+TLS TLS
}
class SearchIndexStatus {
+TLS TLS
+SecretKeySelector* DbPasswordRef
}
class TLS {
+SecretKeySelector* CertRef
+SecretKeySelector* PrivateKeyRef
}
class SecretKeySelector {
+string Name
+string Key
}
RekorSpec --> SearchIndex
RekorStatus --> SearchIndexStatus
SearchIndex --> TLS
SearchIndexStatus --> TLS
SearchIndexStatus --> SecretKeySelector
TLS --> SecretKeySelector
Class diagram for new RedisOptions and related utility changesclassDiagram
class RedisOptions {
+string Host
+string Port
+string Password
+bool TlsEnabled
}
Class diagram for new controller actions: TlsAction and GeneratePasswordActionclassDiagram
class TlsAction {
+Name() string
+CanHandle(ctx, instance) bool
+Handle(ctx, instance) *Result
}
class GeneratePasswordAction {
+Name() string
+CanHandle(ctx, instance) bool
+Handle(ctx, instance) *Result
-cleanup(ctx, instance, configLabels)
}
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
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.
68a1a12
to
1528002
Compare
Caution There are some errors in your PipelineRun template.
|
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.
Please modify commit message based on our standard https://pages.rhtas.com/technical-guides/commit-messages it should be feat: short description of new feature
and reference to Jira or Github should be in Refs
footer. In your case Refs: SECURESIGN-2557
internal/controller/rekor/actions/searchIndex/redis/actions/generate_password.go
Outdated
Show resolved
Hide resolved
internal/controller/rekor/actions/searchIndex/redis/actions/deployment.go
Outdated
Show resolved
Hide resolved
internal/controller/rekor/actions/searchIndex/redis/actions/deployment.go
Outdated
Show resolved
Hide resolved
Refs: SECURESIGN-2557
1528002
to
b632867
Compare
Summary by Sourcery
Introduce TLS support and password management for the Rekor search-index; refactor CRDs, controller actions, and tests to unify and secure search-index deployments for Redis and MySQL.
New Features:
Bug Fixes:
Enhancements:
Documentation:
Tests:
Chores: