Skip to main content
Version: 0.3 (Next)

Konstruct 0.3

Released: January 2026

Major Features

Umbrella Chart Consolidation

All Konstruct platform services now deploy through a single konstruct umbrella Helm chart, consolidating what were previously 8 separate ArgoCD Applications into one.

Services Included:

  • konstruct-api
  • konstruct-ui
  • application-operator
  • cloudaccount-operator
  • gitaccount-operator
  • sso-operator
  • team-management-operator
  • workloadcluster-operator

Key Benefits:

  • Coordinated Versioning: All services version together
  • Simplified Promotion: Single chart to promote across environments
  • Reduced Complexity: One ArgoCD Application instead of eight
  • Atomic Deployments: Related services deploy together
For Existing Users

If upgrading from 0.2, see the Upgrading from 0.2 section for the safe migration sequence that preserves your Custom Resources.

For GitOps Users

What Changed

Previously, each operator had its own ArgoCD Application YAML:

  • application-operator.yaml
  • cloudaccount-operator.yaml
  • etc.

Now, all services are configured within konstruct.yaml under the helm.values section.

Configuration Example

# registry/environments/development/konstruct.yaml
spec:
source:
chart: konstruct
helm:
values: |
konstruct-api:
# API configuration...
konstruct-ui:
# UI configuration...
application-operator:
imagePullSecrets:
- name: docker-config
cloudaccount-operator:
imagePullSecrets:
- name: docker-config
# ... other operators

Upgrading from 0.2

Critical: Follow This Sequence

Operator Helm charts include CRDs. If ArgoCD prunes Applications before the umbrella chart takes over, all Custom Resources will be deleted (GitAccounts, CloudAccounts, Applications, etc.). Follow the phases below exactly.

Phase 1: Remove Finalizers (Prevents Pruning)

Update each operator Application YAML to remove the resources-finalizer.argocd.argoproj.io finalizer:

# BEFORE
metadata:
name: development-application-operator
finalizers:
- resources-finalizer.argocd.argoproj.io # REMOVE THIS

# AFTER
metadata:
name: development-application-operator
# No finalizers - ArgoCD will orphan resources instead of pruning

Apply to all operator Applications:

  • application-operator.yaml
  • cloudaccount-operator.yaml
  • gitaccount-operator.yaml
  • sso-operator.yaml
  • team-management-operator.yaml
  • workloadcluster-operator.yaml

Commit and wait for ArgoCD to sync.

Phase 2: Verify Finalizers Removed

Confirm ArgoCD has removed the finalizers from live Applications:

kubectl get application -n argocd -o jsonpath='{range .items[*]}{.metadata.name}{": "}{.metadata.finalizers}{"\n"}{end}' | grep operator

All operators should show empty finalizers [] before proceeding.

Phase 3: Deploy Umbrella Chart

  1. Update your konstruct.yaml to include operator values
  2. Delete the individual operator Application YAMLs
  3. Commit both changes together

ArgoCD will:

  • Orphan the old resources (not prune, because finalizers were removed)
  • Deploy operators via the umbrella chart
  • Take over management seamlessly

Why This Sequence Matters

ActionWith FinalizerWithout Finalizer
Delete Application YAMLArgoCD prunes all resources (including CRDs)ArgoCD orphans resources (leaves them running)
CRDs deletedAll CRs cascade-deletedCRs preserved

The two-phase approach ensures zero downtime and no data loss.

What's Next?

Stay tuned for Konstruct 0.4 with expanded features.