diff --git a/.github/workflows/nix-build.yml b/.github/workflows/nix-build.yml index a270e5e..381b34b 100644 --- a/.github/workflows/nix-build.yml +++ b/.github/workflows/nix-build.yml @@ -82,3 +82,22 @@ jobs: ssh "$VPS_USER@$VPS_HOST" "sudo systemctl restart ${{ matrix.service }}" || echo " ⚠️ restart failed (may not be enabled yet)" echo "✅ ${{ matrix.service }} deployed" + + cleanup: + # Bersihkan sampah Nix di VPS SETELAH deploy: hapus generasi profile lama + # + nix store gc. Profil yang sedang dipakai tidak disentuh. + needs: build-and-deploy + if: always() + runs-on: ubuntu-latest + steps: + - name: Nix GC on VPS + env: + VPS_HOST: ${{ secrets.VPS_HOST }} + VPS_USER: ${{ secrets.VPS_USER }} + SSH_KEY: ${{ secrets.SSH_PRIVATE_KEY }} + run: | + mkdir -p ~/.ssh + echo "$SSH_KEY" > ~/.ssh/id_ed25519 + chmod 600 ~/.ssh/id_ed25519 + ssh-keyscan -H "$VPS_HOST" >> ~/.ssh/known_hosts 2>/dev/null + ssh "$VPS_USER@$VPS_HOST" "sudo /usr/local/bin/nix-gc-vps.sh" || echo "⚠️ Nix GC gagal (non-fatal)"