Skip to content

mv upate log table #175

mv upate log table

mv upate log table #175

name: Build Backend Docker Images
on:
workflow_dispatch:
push:
branches:
- main
paths:
- 'backend/**'
env:
REGISTRY_HOST: registry.cn-hangzhou.aliyuncs.com
CONTAINER_NAME: apo-backend
DEPLOYMENT_NAME: apo-backend
NAMESPACE: apo
jobs:
build-backend:
runs-on: ubuntu-latest
outputs:
IMAGE_TAG_NAME: ${{ steps.build-image.outputs.IMAGE_TAG_NAME }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build backend image
id: build-image
env:
BRANCH_NAME: ${{ github.ref_name }}
COMMIT_HASH: ${{ github.sha }}
run: |
DATE=$(date +"%Y%m%d%H%M%S%Z")
IMAGE_TAG_NAME="${BRANCH_NAME}-${COMMIT_HASH::7}-${DATE}"
echo "IMAGE_TAG_NAME=$IMAGE_TAG_NAME" >> "$GITHUB_OUTPUT"
IMAGE_FULL_NAME="${{ env.REGISTRY_HOST }}/${{ secrets.REGISTRY_USERNAME }}/${{ env.CONTAINER_NAME }}:$IMAGE_TAG_NAME"
echo "IMAGE_FULL_NAME=$IMAGE_FULL_NAME" >> "$GITHUB_ENV"
docker build -t $IMAGE_FULL_NAME ./backend
- name: Log in to container registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY_HOST }}
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Push to container registry
run: |
echo "IMAGE_FULL_NAME=$IMAGE_FULL_NAME"
docker push $IMAGE_FULL_NAME
deploy-dev:
runs-on: [self-hosted, dev]
needs: [build-backend]
if: github.ref == 'refs/heads/main'
steps:
- name: Deploy to dev
env:
IMAGE_TAG_NAME: ${{ needs.build-backend.outputs.IMAGE_TAG_NAME }}
run: |
IMAGE_FULL_NAME="${{ env.REGISTRY_HOST }}/${{ secrets.REGISTRY_USERNAME }}/${{ env.CONTAINER_NAME }}:$IMAGE_TAG_NAME"
echo "IMAGE_FULL_NAME=$IMAGE_FULL_NAME"
export KUBECONFIG="/root/.kube/config"
kubectl set image deployment ${{ env.DEPLOYMENT_NAME }} ${{ env.CONTAINER_NAME }}=$IMAGE_FULL_NAME -n ${{ env.NAMESPACE }}