From 3a3f9ac17af1920839d077ffee7a483675d6b449 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Matczuk?= Date: Mon, 27 Nov 2023 11:12:02 +0100 Subject: [PATCH] gh: add docs deployment Based on https://gohugo.io/hosting-and-deployment/hosting-on-github/ --- .github/workflows/docs.yml | 69 ++++++++++++++++++++++++++++++++++++++ docs/Makefile | 9 +++-- 2 files changed, 75 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/docs.yml diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 00000000..cf0960fe --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,69 @@ +--- +name: Docs + +on: + push: + branches: + - main + paths: + - 'docs/**' + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Set version env variables + run: | + cat .version >> $GITHUB_ENV + + - name: Setup Go + uses: actions/setup-go@v4 + with: + go-version: "${{env.GO_VERSION}}" + + - name: Install Hugo CLI + run: | + wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \ + && sudo dpkg -i ${{ runner.temp }}/hugo.deb + + - name: Install Dart Sass + run: sudo snap install dart-sass + + - name: Setup Pages + id: pages + uses: actions/configure-pages@v3 + + - name: Install Node.js dependencies + run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true" + + - name: Build with Hugo + run: make -C docs dist + + - name: Upload artifact + uses: actions/upload-pages-artifact@v2 + with: + path: ./docs/public + + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v2 diff --git a/docs/Makefile b/docs/Makefile index 9da4b4a2..804a31de 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -1,7 +1,10 @@ +.PHONY: install-dependencies +install-dependencies: + brew install hugo + .PHONY: up up: @hugo server --minify --disableFastRender -.PHONY: install-dependencies -install-dependencies: - brew install hugo +dist: + @HUGO_ENVIRONMENT=production HUGO_ENV=production hugo --gc --minify