Files
jambotron/.gitea/workflows/deploy.yml
T

41 lines
1.5 KiB
YAML

name: Jambotron Multi-Env Deploy
on:
push:
branches:
- production
- development
jobs:
build-and-deploy:
runs-on: ubuntu-latest # Твой helsinki-runner
steps:
- name: Checkout Code
uses: actions/checkout@v3
# ... остальные шаги без изменений
- name: Define Environment
run: |
if [[ "${{ github.ref }}" == "refs/heads/production" ]]; then
echo "ENV_NAME=prod" >> $GITHUB_ENV
echo "COMPOSE_FILE=docker-compose.yml" >> $GITHUB_ENV
echo "DOCKER_TAG=prod-latest" >> $GITHUB_ENV
else
echo "ENV_NAME=staging" >> $GITHUB_ENV
echo "COMPOSE_FILE=docker-compose.staging.yml" >> $GITHUB_ENV
echo "DOCKER_TAG=stg-latest" >> $GITHUB_ENV
fi
- name: Build Docker Image
run: |
# Теперь команда docker будет найдена на твоём сервере
docker build -t jambotron-app:${{ env.DOCKER_TAG }} .
- name: Deploy to Server
run: |
# Копируем конфиги из инфраструктурной папки в текущую папку билда
cp /root/jambotron-infra/${{ env.COMPOSE_FILE }} .
cp /root/jambotron-infra/.env.staging . 2>/dev/null || true
# Запускаем деплой из текущей папки
docker compose -f ${{ env.COMPOSE_FILE }} up -d --remove-orphans