Files

87 lines
2.8 KiB
YAML

name: CSSD-backend-publish
on:
push:
tags:
- '*' # run on any tag push
jobs:
build:
name: Run Publish Job
runs-on: ubuntu-latest
permissions:
contents: read
security-events: write
actions: read
packages: write
id-token: write
steps:
- name: Checkout code
uses: https://git.meshkee.com/actions/checkout@main
- name: Setup Docker buildx
uses: https://git.meshkee.com/actions/setup-buildx-action@master
- name: Log into registry git.meshkee.com
uses: https://git.meshkee.com/actions/login-action@master
with:
registry: git.meshkee.com
username: ${{ vars.DOCKER_USERNAME }}
password: ${{ vars.DOCKER_PASSWORD }}
- name: Build and push Docker image
id: build-and-push
uses: https://git.meshkee.com/actions/build-push-action@master
with:
context: .
push: true
tags: |
git.meshkee.com/${{ gitea.repository }}:${{ gitea.ref_name }}
git.meshkee.com/${{ gitea.repository }}:latest
cache-from: type=registry,ref=git.meshkee.com/${{ gitea.repository }}:buildcache
cache-to: type=registry,ref=git.meshkee.com/${{ gitea.repository }}:buildcache,mode=max
# cache-from: type=local,src=/tmp/.buildx-cache
# cache-to: type=local,dest=/tmp/.buildx-cache
secrets: |
gitea_token=${{ secrets.TOKEN }}
# deploy:
# name: Deploy Job
# runs-on: ubuntu-latest
# permissions:
# contents: read
# security-events: write
# actions: read
# id-token: write
# steps:
# - name: Deploy to server
# uses: appleboy/ssh-action@v1.0.0
# with:
# host: ${{ secrets.SSH_HOST }}
# username: ${{ secrets.SSH_USER }}
# key: ${{ secrets.SSH_KEY }}
# port: 22
# script: |
# cd /apps/balout-backend
# docker pull git.meshkee.com/${{ gitea.repository }}:${{ gitea.ref_name }}
# IMAGE=git.meshkee.com/${{ gitea.repository }}:${{ gitea.ref_name }} docker compose run --rm balout-backend php artisan migrate --pretend --force
# # docker run --rm git.meshkee.com/${{ gitea.repository }}:${{ gitea.ref_name }} php artisan migrate --pretend --force
# if [ $? -eq 0 ]; then
# echo "Migration check passed. Deploying..."
# IMAGE=git.meshkee.com/${{ gitea.repository }}:${{ gitea.ref_name }} docker compose up -d
# # اجرای واقعی migration داخل کانتینر در حال اجرا
# docker exec balout-backend php artisan migrate --force
# else
# echo "Migration test failed, aborting deploy"
# exit 1
# fi