feat: Add CI/CD pipeline, versioning and changelog
ALVA Deploy / deploy (push) Has been skipped
ALVA Deploy / build (push) Failing after 11s
Guidad Felsökning / test-och-bygg (push) Has been cancelled
Guidad Felsökning / tjanster (push) Has been cancelled
Guidad Felsökning / terraform (push) Has been cancelled
Guidad Felsökning / leverantorskedja (push) Has been cancelled
Guidad Felsökning / aterstallning (push) Has been cancelled
Guidad Felsökning / publicera (push) Has been cancelled
Guidad Felsökning / driftsatt (push) Has been cancelled

- Gitea Actions workflow for build and deploy
- VERSION file (1.0.0)
- CHANGELOG.md
- Automatic ECR push on commit
- Automatic EKS deployment on main branch
This commit is contained in:
Bernt
2026-08-08 13:13:01 +00:00
parent 04e0a1e8ec
commit 55655edec4
3 changed files with 99 additions and 0 deletions
+76
View File
@@ -0,0 +1,76 @@
name: ALVA Deploy
on:
push:
branches: [main, master]
tags: ['v*']
pull_request:
branches: [main, master]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-north-1
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v2
- name: Build and push webb image
working-directory: felsokning/app
run: |
# Kopiera gemensam-moduler
mkdir -p services
cp -r ../services/gemensam services/
# Bygg image
docker build \
--build-arg VITE_SUPABASE_URL="${{ secrets.VITE_SUPABASE_URL }}" \
--build-arg VITE_SUPABASE_PUBLISHABLE_KEY="${{ secrets.VITE_SUPABASE_PUBLISHABLE_KEY }}" \
--build-arg VITE_AI_ORKESTER_URL="https://ai.alva.landvex.com" \
--build-arg VITE_PLATTFORM_URL="https://api.alva.landvex.com" \
-t ${{ steps.login-ecr.outputs.registry }}/alva-webb:${{ github.sha }} \
-t ${{ steps.login-ecr.outputs.registry }}/alva-webb:latest \
.
docker push ${{ steps.login-ecr.outputs.registry }}/alva-webb:${{ github.sha }}
docker push ${{ steps.login-ecr.outputs.registry }}/alva-webb:latest
deploy:
needs: build
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/v')
steps:
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-north-1
- name: Update kubeconfig
run: aws eks update-kubeconfig --name landvex-prod --region eu-north-1
- name: Deploy to EKS
run: |
kubectl set image deployment/alva-webb \
webb=${{ steps.login-ecr.outputs.registry }}/alva-webb:${{ github.sha }} \
-n alva
kubectl rollout status deployment/alva-webb -n alva --timeout=300s
- name: Verify deployment
run: |
kubectl get pods -n alva
curl -s https://alva.landvex.com/ | grep -E "<title>" | head -1