From 5eb166ffcad26f9d64ba254bf633c4d4fb473c86 Mon Sep 17 00:00:00 2001 From: ordinarthur <@arthurbarre.js@gmail.com> Date: Sat, 11 Apr 2026 11:44:03 +0200 Subject: [PATCH] feat: add Gitea Actions CI/CD workflow --- .gitea/workflows/deploy.yml | 45 +++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .gitea/workflows/deploy.yml diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..a075f0d --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,45 @@ +name: Build & Deploy to K3s + +on: + push: + branches: [main] + +env: + REGISTRY: git.ordinarthurbarre.fr + IMAGE: git.ordinarthurbarre.fr/ordinarthur/aurelie-portfolio + +jobs: + build-and-deploy: + runs-on: self-hosted + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Login to Gitea Container Registry + run: | + echo "${{ secrets.REGISTRY_PASSWORD }}" | \ + docker login ${{ env.REGISTRY }} -u ordinarthur --password-stdin + + - name: Build Docker image + run: | + docker build -t ${{ env.IMAGE }}:${{ github.sha }} -t ${{ env.IMAGE }}:latest . + + - name: Push to registry + run: | + docker push ${{ env.IMAGE }}:${{ github.sha }} + docker push ${{ env.IMAGE }}:latest + + - name: Deploy to K3s + run: | + kubectl apply -f k8s/namespace.yml + kubectl apply -f k8s/service.yml + kubectl apply -f k8s/deployment.yml + + kubectl -n portfolio set image deployment/aurelie-portfolio \ + aurelie-portfolio=${{ env.IMAGE }}:${{ github.sha }} + + kubectl -n portfolio rollout status deployment/aurelie-portfolio --timeout=120s + + - name: Cleanup old images + run: | + docker image prune -f