name: build-and-deploy on: push: branches: [ main ] jobs: #───────────────── build & push ───────────────── build: runs-on: docker env: REG: gitea.nucleoriofrio.com/nucleo000 steps: - uses: actions/checkout@v3 - uses: docker/setup-buildx-action@v2 - uses: docker/login-action@v2 with: registry: gitea.nucleoriofrio.com username: nucleo000 password: 7bc7b2fcd283bd6a251bef3ede368b7f897c919d - name: Build+push repodructor run: | docker build -t $REG/repodructor:${{ github.sha }} -t $REG/repodructor:latest . docker push $REG/repodructor:${{ github.sha }} docker push $REG/repodructor:latest #───────────────── deploy ───────────────── deploy: needs: build runs-on: docker env: REG: gitea.nucleoriofrio.com/nucleo000 steps: - uses: actions/checkout@v3 - name: Login to registry run: docker login gitea.nucleoriofrio.com -u nucleo000 -p 7bc7b2fcd283bd6a251bef3ede368b7f897c919d - name: Check music directory mount run: | echo "Checking if music directory is mounted..." if [ -d "/srv/repodructor/musica" ] && mountpoint -q /srv/repodructor/musica; then echo "✅ Music directory is properly mounted" echo "Mount info:" mount | grep "/srv/repodructor/musica" else echo "❌ ERROR: Music directory is not mounted!" echo "" echo "Please mount your music directory first:" echo " sudo mkdir -p /srv/repodructor/musica" echo " sudo mount -t cifs //YOUR_NAS_SERVER/path/to/music /srv/repodructor/musica -o username=YOUR_USER,password=YOUR_PASS,ro" echo "" echo "Or update docker-compose.yml to point to your music directory." exit 1 fi - name: Pull fresh images used in compose run: docker compose pull - name: Clean up stack run: docker compose --project-name repodructor down - name: Update stack run: docker compose --project-name repodructor up -d --remove-orphans --wait