Add K8s manifests and CD pipeline for K3s deployment
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
name: Build and Push Container Image
|
||||
name: CI/CD Pipeline
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -52,3 +52,30 @@ jobs:
|
||||
run: |
|
||||
VERSION=${GITEA_REF#refs/tags/}
|
||||
docker push ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${VERSION}
|
||||
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
needs: build
|
||||
if: gitea.event_name != 'pull_request'
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup kubeconfig
|
||||
run: |
|
||||
mkdir -p ~/.kube
|
||||
echo "${{ secrets.KUBE_CONFIG }}" | base64 -d > ~/.kube/config
|
||||
chmod 600 ~/.kube/config
|
||||
|
||||
- name: Apply manifests
|
||||
run: |
|
||||
kubectl apply -f k8s/configmap.yaml -f k8s/service.yaml -f k8s/deployment.yaml
|
||||
|
||||
- name: Update image
|
||||
run: |
|
||||
kubectl set image deployment/cfb-manager \
|
||||
cfb-manager=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${{ gitea.sha }}
|
||||
|
||||
- name: Wait for rollout
|
||||
run: |
|
||||
kubectl rollout status deployment/cfb-manager --timeout=120s
|
||||
|
||||
Reference in New Issue
Block a user