name: Jambotron Multi-Env Deploy on: push: branches: - production - development jobs: build-and-deploy: runs-on: ubuntu-latest # Это заставит helsinki-runner работать прямо в системе # НИКАКОГО БЛОКА container ТУТ БЫТЬ НЕ ДОЛЖНО 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: | # Переходим в папку, которую мы видели в Midnight Commander cd /root/jambotron-infra docker compose -f ${{ env.COMPOSE_FILE }} up -d --remove-orphans