workflow: change from circle-ci to github action for doc deployment

This commit is contained in:
Gaetan Lepage 2023-08-28 11:52:02 +02:00 committed by Gaétan Lepage
parent 30a8c1d01c
commit 2fea694de0
2 changed files with 55 additions and 60 deletions

View file

@ -1,60 +0,0 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/2.0/configuration-reference
version: 2.1
# Define a job to be invoked later in a workflow.
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
jobs:
build-docs:
docker:
- image: nixpkgs/nix-flakes
steps:
- run:
name: Disable Sandbox
command: mkdir -p ~/.config/nix/; echo 'sandbox = false' >> ~/.config/nix/nix.conf;
- checkout
- run:
name: "Build docs"
no_output_timeout: 30m
command: "nix build '.#docs' --show-trace"
- persist_to_workspace:
root: "result/share/"
paths: [ doc ]
docs-deploy:
docker:
- image: node:8.10.0
steps:
- checkout
- attach_workspace:
at: .
- run:
name: Install and configure dependencies
command: |
npm install -g --silent gh-pages@2.0.1
git config user.email "ci-build@pta2002.com"
git config user.name "ci-build"
# - add_ssh_keys:
# fingerprints:
# - ef:e9:c6:bf:56:b5:58:f9:3b:b7:e0:bf:ca:b9:d7:75
- add_ssh_keys:
fingerprints:
- e6:0d:b3:76:76:d9:e3:93:31:24:a6:49:d7:a2:8f:a3
- run:
name: Deploy docs to gh-pages branch
command: gh-pages --dist doc --message "[skip ci] Docs update"
# Invoke jobs via workflows
# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
workflows:
build-docs-workflow:
jobs:
- build-docs:
filters:
branches:
only: main
- docs-deploy:
requires:
- build-docs
filters:
branches:
only: main

View file

@ -0,0 +1,55 @@
name: Build and deploy documentation
on:
push:
# Runs on pushes targeting the default branch
branches: [main]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow one concurrent deployment
concurrency:
group: "pages"
cancel-in-progress: true
jobs:
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup pages
uses: actions/configure-pages@v3
- name: Install nix
uses: cachix/install-nix-action@v22
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Configure cachix
uses: cachix/cachix-action@v12
with:
name: nix-community
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- run: nix build .#docs --show-trace
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
path: "result/share/doc"
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2