From c1d6f15da4f129977613f61d61714fa56d3df7ae Mon Sep 17 00:00:00 2001 From: Stan <26458805+Staninna@users.noreply.github.com> Date: Wed, 27 Aug 2025 15:21:36 +0200 Subject: [PATCH] Create cd --- .github/workflows/cd | 48 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/cd diff --git a/.github/workflows/cd b/.github/workflows/cd new file mode 100644 index 0000000..a4ac8e8 --- /dev/null +++ b/.github/workflows/cd @@ -0,0 +1,48 @@ +name: Pages – per-branch static + +on: + push: + branches-ignore: + - gh-pages + workflow_dispatch: + +permissions: + contents: write + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Sanitize branch name + id: br + shell: bash + run: | + SAFE="$(echo "${GITHUB_REF_NAME}" \ + | tr '/:@ ' '----' \ + | sed 's/[^A-Za-z0-9._-]/-/g')" + echo "safe=$SAFE" >> "$GITHUB_OUTPUT" + + - name: Stage only static files + run: | + mkdir -p _site + rsync -a --prune-empty-dirs \ + --include='*/' \ + --include='*.html' \ + --include='*.css' \ + --include='*.js' \ + --include='*.json' \ + --exclude='*' \ + ./ _site/ + + - name: Deploy to gh-pages/ + uses: peaceiris/actions-gh-pages@v4 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_branch: gh-pages + publish_dir: _site + destination_dir: ${{ steps.br.outputs.safe }} + keep_files: true + commit_message: Deploy ${{ github.ref_name }}