diff --git a/.gitea/workflow/deploy.yaml b/.gitea/workflow/deploy.yaml new file mode 100644 index 0000000..02fec48 --- /dev/null +++ b/.gitea/workflow/deploy.yaml @@ -0,0 +1,51 @@ +name: Deploy Utopia Dev + +on: + push: + branches: + - main + +concurrency: + group: ${{ gitea.workflow }}-${{ gitea.ref }} + cancel-in-progress: true + +jobs: + deploy: + runs-on: ubuntu-24.04 + + steps: + - name: Deploy to server via SSH + uses: appleboy/ssh-action@v1.2.5 + with: + host: ${{ secrets.SSH_HOST }} + username: ${{ secrets.SSH_USER }} + password: ${{ secrets.SSH_PASSWORD }} + port: ${{ secrets.SSH_PORT }} + script: | + cd ~/deploy/erp + echo "Pulling latest code..." + git pull + echo "Starting deployment..." + sh start.sh + echo "Deploy done" + + cleanup: + runs-on: ubuntu-24.04 + needs: deploy + if: always() + steps: + - name: Cleanup Docker on server + uses: appleboy/ssh-action@v1.2.5 + with: + host: ${{ secrets.SSH_HOST }} + username: ${{ secrets.SSH_USER }} + password: ${{ secrets.SSH_PASSWORD }} + port: ${{ secrets.SSH_PORT }} + script: | + echo "=== Starting Docker cleanup ===" + docker images --format "{{.Repository}}:{{.Tag}} {{.ID}}" | \ + grep -v ":latest" | \ + awk '{print $2}' | \ + xargs -r docker rmi || true + docker system prune -f + echo "=== Cleanup completed ===" \ No newline at end of file diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..2383718 --- /dev/null +++ b/build.sh @@ -0,0 +1,6 @@ +PROJECT="bigdatacloud" +IMAGE="login" + +docker build -t docker.bigdatatech.vn/$PROJECT/$IMAGE:latest . +docker push docker.bigdatatech.vn/$PROJECT/$IMAGE:latest +docker rmi docker.bigdatatech.vn/$PROJECT/$IMAGE:latest \ No newline at end of file