Skip to content

Comments

Add Azure AKS deployment support with Key Vault integration and topology constraints#61

Closed
Copilot wants to merge 1 commit intoexample-aksfrom
copilot/sub-pr-60
Closed

Add Azure AKS deployment support with Key Vault integration and topology constraints#61
Copilot wants to merge 1 commit intoexample-aksfrom
copilot/sub-pr-60

Conversation

Copy link

Copilot AI commented Jan 12, 2026

Extends Helm chart compatibility with Azure Kubernetes Service (AKS Standard and AKS Automatic) through optional template enhancements and production-ready deployment example.

Template Enhancements

Added optional fields to all service deployments (API, UI, ELS, DAS):

  • volumeMounts / volumes - Azure Key Vault CSI Driver integration for secret management
  • topologySpreadConstraints - Pod distribution across nodes/zones for AKS Automatic policy compliance
  • initContainers.resources - Resource limits/requests for init containers (AKS Automatic requirement)

All fields use {{- with }} conditionals for backward compatibility - existing deployments unaffected.

# Example: Azure Key Vault volume mount
api:
  volumeMounts:
    - name: secrets-store
      mountPath: "/mnt/secrets-store"
      readOnly: true
  volumes:
    - name: secrets-store
      csi:
        driver: secrets-store.csi.k8s.io
        volumeAttributes:
          secretProviderClass: "featbit-keyvault-secrets"

AKS Deployment Example

New charts/featbit/examples/aks/ with production architecture:

Internet → Traffic Manager → Azure LB → NGINX Ingress (TLS) → FeatBit

  • featbit-aks-values.yaml - External PostgreSQL/Redis, Key Vault secrets, autoscaling config
  • keyvault-secret-provider.yaml - SecretProviderClass for CSI Driver
  • cluster-issuer.yaml - Let's Encrypt staging/production issuers
  • README.md - Complete deployment guide: NGINX Ingress setup, cert-manager, Traffic Manager multi-region, troubleshooting

Configuration highlights:

  • External PostgreSQL/Redis with Key Vault-managed credentials
  • HPA targeting 80% CPU/memory with 3-10 replicas
  • WebSocket-optimized NGINX timeouts (3600s)
  • Pod security contexts for RuntimeDefault seccomp profile

Additional Changes

  • .gitignore - Added *.local.yaml pattern for local config files

✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI changed the title [WIP] Update AKS deployment example for Azure Add Azure AKS deployment support with Key Vault integration and topology constraints Jan 12, 2026
Copilot AI requested a review from cosmic-flood January 12, 2026 11:22
@cosmic-flood
Copy link
Contributor

@copilot should i add v0.8.3 in the title?

Copy link
Author

Copilot AI commented Jan 12, 2026

@copilot should i add v0.8.3 in the title?

The current chart version is 0.8.2. Since this PR adds new optional features (volumeMounts, topologySpreadConstraints, initContainer resources) and a new AKS example, it would be appropriate to bump to 0.8.3 following semantic versioning (minor/patch increment for backward-compatible additions).

However, whether to include the version in the PR title is a project convention preference. Common approaches:

  • Include version: "v0.8.3: Add Azure AKS deployment support..." (useful for release tracking)
  • Exclude version: Current title (cleaner, version bump happens during merge/release)

If you want the version in the title, you'd also need to update Chart.yaml version from 0.8.2 to 0.8.3 in this PR. If version bumps happen separately during release, keep the current title.

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.

2 participants