diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..ff4c4c1 --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,55 @@ +name: Deploy momo-erp to production + +on: + push: + branches: + - main + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup SSH + run: | + mkdir -p ~/.ssh + echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/id_rsa + chmod 600 ~/.ssh/id_rsa + ssh-keyscan -H ${{ secrets.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null + + - name: Deploy via SSH + env: + SSH_USER: ${{ secrets.DEPLOY_USER }} + SSH_HOST: ${{ secrets.DEPLOY_HOST }} + DATABASE_URL: ${{ secrets.DATABASE_URL }} + NEXTAUTH_URL: ${{ secrets.NEXTAUTH_URL }} + NEXTAUTH_SECRET: ${{ secrets.NEXTAUTH_SECRET }} + MASTER_PWD: ${{ secrets.MASTER_PWD }} + AES_KEY: ${{ secrets.AES_KEY }} + run: | + ssh -o StrictHostKeyChecking=no "$SSH_USER@$SSH_HOST" bash -s << 'REMOTE' + set -e + DEPLOY_DIR="$HOME/momo-erp/source" + mkdir -p "$HOME/momo-erp" + if [ -d "$DEPLOY_DIR/.git" ]; then + cd "$DEPLOY_DIR" && git fetch origin && git reset --hard origin/main + else + git clone https://git.junggomoa.com/chpark/distribution_erp.git "$DEPLOY_DIR" + cd "$DEPLOY_DIR" + fi + cat > .env.production <