This commit is contained in:
50
.gitea/workflows/build-and-push.yaml
Executable file
50
.gitea/workflows/build-and-push.yaml
Executable file
@@ -0,0 +1,50 @@
|
||||
name: Build and Push Images
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
build-backend:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Login to Gitea Registry
|
||||
run: |
|
||||
echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login ${{ secrets.REGISTRY_HOST }} \
|
||||
-u ${{ secrets.REGISTRY_USER }} --password-stdin
|
||||
|
||||
- name: Build & Push Backend
|
||||
run: |
|
||||
IMAGE=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-backend:${{ github.sha }}
|
||||
IMAGE_LATEST=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-backend:latest
|
||||
docker build -t $IMAGE -t $IMAGE_LATEST ./backend/
|
||||
docker push $IMAGE
|
||||
docker push $IMAGE_LATEST
|
||||
|
||||
- name: Build & Push Frontend
|
||||
run: |
|
||||
IMAGE=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-frontend:${{ github.sha }}
|
||||
IMAGE_LATEST=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-frontend:latest
|
||||
docker build -t $IMAGE -t $IMAGE_LATEST ./frontend/
|
||||
docker push $IMAGE
|
||||
docker push $IMAGE_LATEST
|
||||
|
||||
- name: Update K8s image tags
|
||||
run: |
|
||||
BACKEND_IMAGE=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-backend:${{ github.sha }}
|
||||
FRONTEND_IMAGE=${{ secrets.REGISTRY_HOST }}/${{ secrets.REGISTRY_USER }}/portal-frontend:${{ github.sha }}
|
||||
|
||||
sed -i "s|image: .*portal-backend.*|image: ${BACKEND_IMAGE}|g" k8s/04-backend.yaml
|
||||
sed -i "s|image: .*portal-frontend.*|image: ${FRONTEND_IMAGE}|g" k8s/05-frontend.yaml
|
||||
|
||||
- name: Commit updated yaml
|
||||
run: |
|
||||
git config user.name "gitea-actions"
|
||||
git config user.email "actions@gitea"
|
||||
git add k8s/04-backend.yaml k8s/05-frontend.yaml
|
||||
git diff --staged --quiet || git commit -m "ci: update image tags to ${{ github.sha }}"
|
||||
git push
|
||||
Reference in New Issue
Block a user