name: CI on: push: jobs: build: runs-on: self-hosted steps: - uses: actions/checkout@v4 with: submodules: false - name: Build run: | git config --global url."https://oauth2:${{ secrets.WWW_PRIVATE_TOKEN }}@forgejo.binning.net/".insteadOf "https://forgejo.binning.net/" git submodule update --init --depth=1 nix shell nixpkgs#mdbook --command mdbook build printf "✓ Build complete!\n" - name: Upload artifact uses: actions/upload-artifact@v3 with: name: blog-${{ github.sha }} path: book/ deploy: runs-on: self-hosted steps: - name: Download artifact uses: actions/download-artifact@v3 with: name: blog-${{ github.sha }} path: book/ - name: Deploy run: | nix shell nixpkgs#rsync --command rsync -av --delete --filter='protect assets/' book/ /srv/www/binning.net/ printf "✓ Local deployment complete!\n"