1
+ name : Deploy Docs
2
+
3
+ on :
4
+ # Runs on pushes targeting the default branch
5
+ push :
6
+ branches : ["main"]
7
+
8
+ # Allows you to run this workflow manually from the Actions tab
9
+ workflow_dispatch :
10
+
11
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
12
+ permissions :
13
+ contents : read
14
+ pages : write
15
+ id-token : write
16
+
17
+ concurrency :
18
+ group : docs
19
+ cancel-in-progress : false
20
+
21
+ jobs :
22
+ docs :
23
+ name : ${{ matrix.lisp }} on ${{ matrix.os }}
24
+ runs-on : ${{ matrix.os }}
25
+ strategy :
26
+ matrix :
27
+ lisp : [sbcl-bin]
28
+ os : [ubuntu-latest]
29
+ environment :
30
+ name : github-pages
31
+ url : ${{ steps.deployment.outputs.page_url }}
32
+ steps :
33
+ - name : Check out repo
34
+ uses : actions/checkout@v4
35
+
36
+ - name : cache .roswell
37
+ id : cache-dot-roswell
38
+ uses : actions/cache@v3
39
+ with :
40
+ path : ~/.roswell
41
+ key : ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}-${{ hashFiles('**/*.asd') }}
42
+ restore-keys : |
43
+ ${{ runner.os }}-dot-roswell-${{ matrix.lisp }}-
44
+ ${{ runner.os }}-dot-roswell-
45
+
46
+ - name : Check out OCICL
47
+ uses : actions/checkout@v4
48
+ with :
49
+ repository : https://github.com/ocicl/ocicl.git
50
+ path : ocicl
51
+
52
+ - name : Install OCICL
53
+ run : |
54
+ sbcl_vers=$(ls -1A ~/.roswell/impls/x86-64/linux/sbcl-bin)
55
+ export PATH=~/.roswell/impls/x86-64/linux/sbcl-bin/${sbcl_vers}/bin:${PATH}
56
+ cd ocicl
57
+ sbcl --load setup.lisp
58
+ cat >> ~/.roswell/init.lisp << ROSWELL
59
+
60
+ #-ocicl
61
+ (when (probe-file #P"~/.local/share/ocicl/ocicl-runtime.lisp")
62
+ (load #P"~/.local/share/ocicl/ocicl-runtime.lisp"))
63
+ (asdf:initialize-source-registry
64
+ (list :source-registry (list :directory (uiop:getcwd)) :inherit-configuration))
65
+ ROSWELL
66
+
67
+ - name : Make the docs
68
+ run : |
69
+ sbcl_vers=$(ls -1A ~/.roswell/impls/x86-64/linux/sbcl-bin)
70
+ export PATH=~/.roswell/impls/x86-64/linux/sbcl-bin/${sbcl_vers}/bin:${PATH}
71
+ ros +Q -- build-docs.ros
72
+ - name : Setup Pages
73
+ uses : actions/configure-pages@v5
74
+ - name : Upload artifact
75
+ uses : actions/upload-pages-artifact@v3
76
+ with :
77
+ # Upload docs
78
+ path : ' docs/build/cliff-command-line-interface-functional-framework/html/'
79
+ - name : Deploy to GitHub Pages
80
+ id : deployment
81
+ uses : actions/deploy-pages@v4
0 commit comments