Skip to content

[feature]: Integrate Flux for automated OCI artifact reconciliation #503

@devantler

Description

@devantler

User Story

As a cluster administrator,
I want ksail-go to automate:

  • Installation of Flux to the cluster,
  • Setup of a local OCI-compliant registry,
  • Building and pushing of OCI artifacts to a repository in this registry,
  • Creation and configuration of Flux custom resources that sync workload changes from updated OCI artifacts,

So that continuous deployment is managed with seamless reconciliation via ksail workload reconcile when Flux is set as the GitOpsEngine.

graph TD
  A[Cluster Administrator]
  B[Ksail-Go]
  C[Flux Installed]
  D[Local OCI Registry Provisioned]
  E[OCI Artifact Built & Pushed]
  F[Flux Custom Resources Configured]
  G[Continuous Reconciliation]

  A --> B
  B --> C
  B --> D
  D --> E
  E --> F
  F --> G
Loading

Acceptance Criteria

  • Ksail-go installs Flux during cluster bootstrap or on demand
  • Ksail-go provisions and configures a local OCI registry for artifact storage
  • OCI artifacts (container images/charts) are built and pushed to a specified repository in the local registry
  • Flux custom resources are generated and configured to track artifact version updates and perform sync
  • ksail workload reconcile triggers Flux-based reconciliation if Flux is selected as GitOpsEngine
  • Comprehensive documentation covers deployment, registry use, artifact push, and Flux resource configuration
  • Automated/e2e tests confirm flows from registry setup to workload reconciliation

Definition of Done

  • All acceptance criteria are met.
  • Code is reviewed and approved.
  • Necessary tests are written and pass.
  • Documentation is updated, if applicable.
  • Feature is deployed to the [environment name].

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

Status

👀 In Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions