@@ -14,48 +14,92 @@ concurrency:
14
14
cancel-in-progress : true
15
15
16
16
jobs :
17
- sphinx- build :
17
+ build-latest-docs :
18
18
runs-on : ubuntu-latest
19
- if : " !contains(github.event.head_commit.message, '[skip ci]')"
20
19
21
20
steps :
22
- - uses : actions/checkout@v2
21
+ - uses : actions/checkout@v4
23
22
24
- - name : Install mamba
25
- uses : mamba-org/setup-micromamba@main
23
+ -
uses :
prefix-dev/[email protected]
26
24
with :
27
- environment-file : docs/environment.yml
28
-
29
- - name : Build anypytools
30
- shell : bash -l {0}
31
- run : pip install .
25
+ environments : docs
26
+ cache-write : ${{ github.event_name == 'push' && github.ref_name == 'master' }}
27
+ activate-environment : docs
32
28
33
29
- name : Build Documentation
34
- shell : bash -l {0}
35
30
run : |
36
31
set -e
37
32
cd docs
38
- make html-dev
33
+ sphinx-build -M html . _build -W --keep-going -a -t DEV_BUILD
39
34
cd ..
40
- mkdir -p public/dev
41
- cp -rT docs/_build/html public/dev
42
-
43
- - name : Build last tagged version
44
- if : github.ref == 'refs/heads/master'
45
- shell : bash -l {0}
35
+
36
+ - uses : actions/upload-artifact@v4
37
+ with :
38
+ name : dev-version
39
+ path : docs/_build/html
40
+
41
+
42
+
43
+ build-tagged-docs :
44
+ runs-on : ubuntu-latest
45
+
46
+ steps :
47
+ - uses : actions/checkout@v4
48
+ with :
49
+ fetch-depth : 0
50
+
51
+ # - name: Checkout last tagged version
52
+ # run: |
53
+ # git checkout $(git describe --tags `git rev-list --tags --max-count=1`);
54
+
55
+ -
uses :
prefix-dev/[email protected]
56
+ with :
57
+ environments : docs
58
+ cache-write : ${{ github.event_name == 'push' && github.ref_name == 'master' }}
59
+ activate-environment : docs
60
+
61
+ - name : Build Documentation
46
62
run : |
47
- git checkout $(git describe --tags `git rev-list --tags --max-count=1`);
48
63
cd docs
49
- make clean
50
- make html
51
- cd ..
52
- cp -rT docs/_build/html public
53
-
54
- - name : Deploy 🚀
55
- if : github.ref == 'refs/heads/master'
56
- uses : peaceiris/actions-gh-pages@v3
64
+ sphinx-build -M html . _build -a
65
+
66
+ - uses : actions/upload-artifact@v4
67
+ with :
68
+ name : tagged-version
69
+ path : docs/_build/html
70
+
71
+
72
+ prepare-pages :
73
+ needs : [build-latest-docs, build-tagged-docs]
74
+ runs-on : ubuntu-latest
75
+ steps :
76
+ - uses : actions/download-artifact@v4
57
77
with :
58
- deploy_key : ${{ secrets.ACTIONS_DEPLOY_KEY }}
59
- external_repository : AnyBody-Research-Group/anypytools-docs
60
- publish_branch : gh-pages
61
- publish_dir : ./public
78
+ name : tagged-version
79
+ path : public
80
+ - uses : actions/download-artifact@v4
81
+ with :
82
+ name : dev-version
83
+ path : public/dev
84
+ - uses : actions/upload-pages-artifact@v3
85
+ with :
86
+ path : public
87
+
88
+ deploy :
89
+ needs : prepare-pages
90
+ if : github.ref == 'refs/heads/master'
91
+ runs-on : ubuntu-latest
92
+ permissions :
93
+ pages : write
94
+ id-token : write
95
+
96
+ environment :
97
+ name : github-pages
98
+ url : ${{ steps.deployment.outputs.page_url }}
99
+
100
+ steps :
101
+ - name : Deploy to GitHub Pages
102
+ id : deployment
103
+ uses : actions/deploy-pages@v4
104
+
105
+
0 commit comments