name: Deploy Interior Site on: push: branches: [master, main] paths: - 'Ремонт квартира/**' jobs: deploy: runs-on: self-hosted steps: - name: Update interior site run: | cd /opt/digital-home/interior # Синхронизировать контент из vault (без rsync) rm -rf /opt/digital-home/interior/content/notes mkdir -p /opt/digital-home/interior/content/notes cp -r "/home/daniil/obsidian/Ремонт квартира/." /opt/digital-home/interior/content/notes/ # Убедиться что index.md есть if [ ! -f /opt/digital-home/interior/content/index.md ]; then printf -- '--- title: Ремонт квартиры --- # Ремонт квартиры - [[notes/Интерьер]] - [[notes/Интерьер кухня]] - [[notes/Интерьер спальни]] ' > /opt/digital-home/interior/content/index.md fi # Пересобрать и перезапустить docker build -t interior:latest . docker rm -f interior || true docker run -d \ --name interior \ --network coolify \ -p 3007:80 \ --restart unless-stopped \ --label traefik.enable=true \ --label 'traefik.http.routers.interior.rule=Host(`interior.digital-home.site`)' \ --label traefik.http.routers.interior.entrypoints=https \ --label traefik.http.routers.interior.tls=true \ --label traefik.http.routers.interior.tls.certresolver=letsencrypt \ --label traefik.http.services.interior.loadbalancer.server.port=80 \ interior:latest echo 'Deploy done'