-
Notifications
You must be signed in to change notification settings - Fork 2
133 lines (114 loc) · 3.08 KB
/
documentation.yml
File metadata and controls
133 lines (114 loc) · 3.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
name: Documentation
on:
pull_request:
paths:
- claude/**
- docs/**
- k3s-cluster/**
push:
branches:
- main
paths:
- claude/**
- docs/**
- k3s-cluster/**
concurrency:
cancel-in-progress: false
group: pages
defaults:
run:
shell: bash
permissions:
checks: write
contents: write
id-token: write
issues: write
pages: write
jobs:
update:
name: Update
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: true
- name: Setup node
uses: actions/setup-node@v6
with:
node-version: 24
- name: Install node dependencies
run: npm install handlebars
- name: Configure repository
uses: actions/github-script@v8
with:
script: |
const { Workflow } = require('./.github/actions/handlers');
const workflow = new Workflow({ github, context, core, exec });
await workflow.configureRepository();
- name: Update git submodules
uses: actions/github-script@v8
with:
script: |
const { Workflow } = require('./.github/actions/handlers');
const workflow = new Workflow({ github, context, core, exec });
await workflow.updateSubmodules();
build:
name: Build
needs: update
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: true
- name: Setup go
uses: actions/setup-go@v6
with:
go-version: 1.26
cache: false
- name: Setup hugo
uses: peaceiris/actions-hugo@v3
with:
hugo-version: 0.157.0
extended: true
- name: Setup node
uses: actions/setup-node@v6
with:
node-version: 24
- name: Install node dependencies
run: npm install handlebars
- name: Build documentation
uses: actions/github-script@v8
with:
script: |
const { Workflow } = require('./.github/actions/handlers');
const workflow = new Workflow({ github, context, core, exec });
await workflow.buildDocumentation();
- name: Configure pages
id: pages
uses: actions/configure-pages@v5
- name: Upload pages artifact
uses: actions/upload-pages-artifact@v4
with:
path: ./public
- name: Report workflow issue
uses: actions/github-script@v8
if: always()
with:
script: |
const { Workflow } = require('./.github/actions/handlers');
const workflow = new Workflow({ github, context, core, exec });
await workflow.reportIssue();
deploy:
name: Deploy
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
if: github.event_name == 'push'
needs: build
runs-on: ubuntu-latest
steps:
- name: Deploy documentation
id: deployment
uses: actions/deploy-pages@v4