Files
resume-site/flux
Neon Vortex b803ba5468 Initial commit: Resume site with Flux CD automation
- Add HTML comment for hiring pipeline
- Configure Helm chart for Kubernetes deployment
- Set up ingress for resume.caffeinetux.com
- Configure Harbor registry at images.caffeinetux.com
- Add Flux CD manifests for GitOps deployment
- Update CI workflow for Harbor integration

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 13:34:27 -05:00
..

Flux Deployment for Resume Site

This directory contains Flux CD manifests for automated deployment of the resume site to Kubernetes.

Prerequisites

  1. Flux CD installed in your cluster
  2. Gitea repository created and pushed
  3. Harbor credentials configured
  4. Docker image built and pushed to Harbor

Setup Instructions

1. Update GitRepository URL

Edit gitrepository.yaml and replace the placeholder URL with your actual Gitea repository URL:

url: https://your-gitea-url/username/resume-site.git

2. Build and Push Docker Image

# Login to Harbor
docker login images.caffeinetux.com

# Build the image
docker build -t images.caffeinetux.com/production/resume-site:latest .

# Push to Harbor
docker push images.caffeinetux.com/production/resume-site:latest

3. Deploy with Flux

Apply the Flux manifests to your cluster:

kubectl apply -k flux/

Flux will:

4. Verify Deployment

# Check Flux GitRepository
kubectl get gitrepository -n flux-system resume-site

# Check Flux HelmRelease
kubectl get helmrelease -n default resume-site

# Check pods
kubectl get pods -n default -l app.kubernetes.io/name=resume-site

# Check ingress
kubectl get ingress -n default

Automatic Updates

Flux checks the Git repository every minute. Any changes to the helm/ directory will trigger an automatic update of the deployment.

Secrets

If you need to configure Harbor image pull secrets:

kubectl create secret docker-registry harbor-creds \
  --docker-server=images.caffeinetux.com \
  --docker-username=YOUR_USERNAME \
  --docker-password=YOUR_PASSWORD \
  --namespace=default

Then update helm/values.yaml:

imagePullSecrets:
  - name: harbor-creds