9455c521cf
FEAT(config): add debugging for kubeconfig secret
...
- Check if secret is set and show helpful error
- Handle both single-line and multi-line base64
- Show secret length and preview for debugging
- Provide direct link to secrets settings
2025-12-28 17:53:27 +09:00
2a42104912
CHORE(app): use kaniko as separate job
...
Architecture (Option 3 - Recommended):
Runner Pod (DinD maintained)
└─ kubectl create job
└─ Kaniko Pod (isolated)
Benefits:
- Resource isolation
- Parallel builds possible
- Build failures don't affect runner
- Pod-level isolation
- Proper security boundaries
Changes:
- Restore kubectl and kubeconfig setup
- Use kubeconfig from Gitea Secret
- Create Kaniko Job in separate namespace
- Wait for Job completion
- Proper cleanup after build
Infrastructure (already deployed via ArgoCD):
- kaniko-builds namespace
- RBAC for gitea runner ServiceAccount
- Proper permission boundaries
2025-12-28 17:43:22 +09:00
619eabf4c4
CHORE(docker): run kaniko directly
...
Remove Kubernetes complexity:
- Remove kubectl installation and setup
- Remove kubeconfig generation
- Remove Kubernetes Job creation
- Use docker run to execute Kaniko directly
Benefits:
- Much simpler workflow
- No Kubernetes API access needed
- No RBAC complexity in workflow
- Faster execution (no Job overhead)
- Kaniko still builds without Docker daemon
Note: Kaniko infrastructure (namespace, RBAC) kept via
ArgoCD for potential future use or manual kubectl access
2025-12-28 17:40:59 +09:00
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