Commit Graph

92 Commits

Author SHA1 Message Date
7b0f520e54 FIX(k8s): in-cluster kubeconfig access
- Set KUBECONFIG env at job level for all steps
- Generate kubeconfig from ServiceAccount token
- Use tokenFile reference for automatic token renewal
- Set proper cluster CA and server URL
- Test connection after setup

This ensures kubectl works correctly inside K8s Pod runner
2025-12-28 17:38:14 +09:00
37a7dbd561 CHORE(deploy): use argocd for kaniko
Infrastructure as Code:
- Add Kaniko namespace and RBAC manifests
- Create ArgoCD Application for Kaniko infrastructure
- Kustomize configuration for Kaniko resources

Workflow improvements:
- Remove kubeconfig dependency
- Use in-cluster ServiceAccount (runner runs in K8s)
- Remove all sudo commands
- Simplify Kubernetes access

GitOps workflow:
1. Push manifests to Git
2. ArgoCD auto-syncs infrastructure
3. Gitea runner uses ServiceAccount permissions
4. Kaniko builds run in kaniko-builds namespace

Benefits:
- True GitOps approach
- No secrets management needed
- Declarative infrastructure
- ArgoCD handles reconciliation
- Audit trail in Git
2025-12-28 17:36:10 +09:00
363f71d4a6 REFACTOR(config): use gitea kubeconfig
- Remove local kubeconfig detection logic
- Use KUBECONFIG secret from Gitea
- Decode base64-encoded kubeconfig
- Simplify setup and improve security
2025-12-28 17:08:24 +09:00
bf62077841 FIX(config): kubeconfig setup with fallback logic
- Add checks for kubeconfig file existence
- Try multiple methods to locate kubeconfig
- Add debugging output for troubleshooting
- Test kubectl connection with fallback to sudo
2025-12-28 17:06:43 +09:00
38cf2fb891 REFACTOR(app): extract kaniko manifest
- Create deploy/kaniko/job.yaml as template
- Use sed for template variable substitution
- Remove inline YAML heredoc from workflow
- Simplify workflow logic with template-based approach
- Add resource limits for Kaniko container
- Improve logging and error handling

Benefits:
- Better code organization and readability
- Easier to maintain and test
- Reusable manifest template
- Version controlled configuration
2025-12-28 17:05:14 +09:00
6bf3bff394 FEAT(config): add kubectl and kubeconfig
- Install kubectl if not available
- Setup kubeconfig from K3s
- Verify cluster access
2025-12-28 17:01:27 +09:00
9316f068a4 REFACTOR(docker): use kaniko on k8s
- Remove Docker dependency completely
- Execute Kaniko as Kubernetes Job in kaniko-builds namespace
- Use init container to clone source code from Git
- Share build context via EmptyDir volume
- Manage registry credentials as Kubernetes Secret
- Add job completion wait and cleanup logic

Benefits:
- No Docker daemon required (true Kaniko usage)
- Cloud-native build process
- Better isolation and security
- Automatic cleanup with ttlSecondsAfterFinished
2025-12-28 16:59:57 +09:00
826ed70e79 FIX(docker): use kaniko executor binary
- Download Kaniko executor binary directly
- Remove docker run dependency
- Use absolute paths instead of container volume mounts
- Fixes Docker daemon connection error
2025-12-28 16:54:14 +09:00
67baabcf29 PERF(app): optimize CPU from metrics
- jovies prod: 15m → 5m (actual: 1-2m)
2025-12-26 11:46:56 +09:00
ac66732ffc FEAT(app): add per-application ingress management
- Added ingress.yaml for production and development environments
- Updated kustomization files to include ingress resources
- Migrated from centralized ingress management to per-app architecture
2025-12-25 20:26:42 +09:00
8ff104fa09 FIX(app): fix image path mayne0213 to bluemayne
- Change image path to match Gitea repository name
- Fix container registry reference
2025-12-20 14:02:23 +09:00
7b6f2465c4 REFACTOR(app): switch to gitea registry
- Migrate container registry to Gitea
- Update image references
2025-12-20 14:02:23 +09:00
e34b91e285 CHORE(build): switch to kaniko builds
- Replace Docker build with Kaniko
- Enable secure rootless container builds
2025-12-20 14:02:23 +09:00
ba2ef73bfb CHORE(merge): merge develop to main
- Switch to Gitea container registry
- Merge registry migration changes
2025-12-20 13:04:36 +09:00
673921be5c REFACTOR(auth): use gitearegistry secret
- Change to gitearegistry secret for authentication
- Update registry credentials
2025-12-20 13:04:10 +09:00
c411a6499b REFACTOR(auth): use gitea secret
- Use Gitea-provided secret for registry authentication
- Simplify credential management
2025-12-20 12:45:02 +09:00
2101818450 REFACTOR(auth): use GITEA_PACKAGE_TOKEN
- Change to GITEA_PACKAGE_TOKEN for authentication
- Update registry login method
2025-12-20 12:42:20 +09:00
1db60d59ea FIX(ci): fix gitea registry login
- Use github.token for Gitea registry authentication
- Fix CI authentication
2025-12-20 12:38:57 +09:00
ce5894d2be CHORE(app): switch to Gitea container registry
- Migrate from ghcr.io to Gitea registry
- Update image references
2025-12-20 12:29:16 +09:00
d0b2fae860 CHORE(app): refresh hooks
- Trigger CI/CD pipeline
- Refresh deployment hooks
2025-12-18 17:34:42 +09:00
8ef073bb17 CHORE(app): refresh hooks
- Trigger CI/CD pipeline
- Refresh deployment hooks
2025-12-18 17:34:41 +09:00
5847b3ff2f FEAT(deploy): add prod argocd app
- Add ArgoCD Application for production environment
- Enable prod deployment management
2025-12-17 20:28:07 +09:00
4d858047cf CHORE(deploy): update argocd path
- Move ArgoCD application to deploy/argocd
- Update path references
2025-12-17 18:37:58 +09:00
f4c8858cb6 CHORE(merge): merge main branch changes
- Update application path to deploy/argocd
- Sync with main branch
2025-12-17 18:34:19 +09:00
d59294995d CHORE(deploy): update argocd path
- Move ArgoCD application to deploy/argocd
- Update path references
2025-12-17 18:33:10 +09:00
fafc265895 REFACTOR(deploy): move argocd manifests
- Reorganize ArgoCD application structure
- Move manifests to deploy/argocd folder
2025-12-17 18:27:23 +09:00
2e2d21bfeb REFACTOR(deploy): move argocd manifests
- Reorganize ArgoCD application structure
- Move manifests to deploy/argocd folder
2025-12-17 18:26:23 +09:00
c877661fd2 REFACTOR(deploy): remove argocd yaml
- Remove ArgoCD application from kustomization
- Prevent duplicate resource management
2025-12-17 18:17:05 +09:00
5eca3ecc95 REFACTOR(deploy): remove argocd yaml
- Remove ArgoCD application from kustomization
- Prevent duplicate resource management
2025-12-17 18:14:38 +09:00
41f67ad236 FEAT(app): add self-managing application resources
- Add ArgoCD Application manifest
- Enable GitOps self-management
2025-12-17 18:02:02 +09:00
3396abc352 FEAT(app): add self-managing application resources
- Add ArgoCD Application manifest
- Enable GitOps self-management
2025-12-17 18:02:02 +09:00
442c6e4e81 CHORE(merge): merge self-managing resources
- Merge ArgoCD self-management from main
- Sync with main branch
2025-12-17 18:01:49 +09:00
7af520bc03 CHORE(app): eliminate GitHub references
- Remove GitHub-specific configurations
- Clean up unused references
2025-12-13 11:52:29 +09:00
31ecd1dda4 CHORE(merge): merge branch main into develop
- Sync develop with main branch
- Resolve merge conflicts
2025-12-12 00:48:47 +09:00
5aafac4f7f FEAT(ci): add Gitea Actions workflow with ghcr.io
- Add CI/CD workflow for Gitea Actions
- Configure ghcr.io registry push
2025-12-12 00:17:49 +09:00
35f250eaa1 CHORE(docker): use standard docker build
- Use standard docker build for DinD compatibility
- Simplify build process
2025-12-11 23:05:47 +09:00
6480925d47 FIX(ci): fix Gitea Actions context variables
- Use github.* instead of gitea.* context
- Fix workflow variable references
2025-12-11 22:59:58 +09:00
19a44dccec CHORE(merge): merge branch develop
- Sync main with develop branch
- Apply development changes
2025-12-11 20:05:11 +09:00
5bce035df6 FEAT(ci): migrate to gitea actions
- Migrate workflows to Gitea Actions
- Configure container registry push
2025-12-11 19:59:26 +09:00
4de90ec898 FEAT(ci): add Gitea Actions workflows
- Add CI and build workflows for Gitea
- Enable automated builds
2025-12-11 11:48:52 +09:00
825d5b24a1 CHORE(merge): merge branch develop
- Sync main with develop branch
- Apply development changes
2025-12-09 03:37:11 +09:00
2cd0f180c6 REFACTOR(app): change replica count
- Update deployment replicas
- Adjust scaling configuration
2025-12-09 03:36:58 +09:00
7043d32296 CHORE(merge): merge branch develop
- Sync main with develop branch
- Apply development changes
2025-12-05 23:11:58 +09:00
48de6bad29 REFACTOR(app): remove CPU limit
- Remove CPU limits from deployment
- Prevent container throttling
2025-12-05 23:10:08 +09:00
c2a8ba0bee CHORE(merge): merge develop branch
- Apply ARM64 native runner changes
- Remove QEMU emulation
2025-12-05 22:49:05 +09:00
5c15e8eb13 REFACTOR(app): use native ARM64 runner
- Switch to native ARM64 runner
- Remove QEMU emulation overhead
2025-12-05 22:48:44 +09:00
bafb4dd8b9 CHORE(merge): merge develop branch
- Apply CPU limit removal
- Sync with development changes
2025-12-05 22:41:20 +09:00
d85430c421 REFACTOR(app): remove CPU limits
- Remove CPU limit configuration
- Improve container performance
2025-12-05 22:39:31 +09:00
01d506d28c FEAT(app): add QEMU for ARM64 build
- Enable ARM64 cross-compilation
- Add QEMU emulation support
2025-12-05 22:29:32 +09:00
92252484ac CHORE(app): reduce resource limits
- CPU limit: 300m → 50m (prod), 210m → 30m (dev)
- Memory limit: 120Mi → 100Mi (prod), 84Mi → 100Mi (dev)
- ResourceQuota adjusted accordingly

Actual usage: ~1m CPU, ~56Mi memory
2025-12-05 22:14:09 +09:00