1
- docs_deploy : &docs
2
- docker :
3
- - image : node:8.10.0
4
- working_directory : /tmp/gh-pages
5
- steps :
6
- - run :
7
- name : Check whether this is the original repo
8
- command : |
9
- if [[ "$CIRCLE_PROJECT_USERNAME" != "nipreps" ]]; then
10
- echo "Not in nipreps/sdcflows - skipping docs deploy."
11
- circleci step halt
12
- fi
13
- - add_ssh_keys :
14
- fingerprints :
15
- - " 46:48:1e:6d:00:0e:f2:f8:e5:aa:b9:aa:da:eb:59:4e"
16
- - run :
17
- name : Install gh-pages tool
18
- command : |
19
- npm install -g --silent [email protected]
20
- - checkout
21
- - run :
22
- name : Set git settings
23
- command : |
24
- git config user.email "[email protected] "
25
- git config user.name "Documentation Push"
26
- - attach_workspace :
27
- at : docs/_build
28
- - run :
29
- name : Disable jekyll builds
30
- command : touch docs/_build/html/.nojekyll
31
- - run :
32
- name : Deploy docs to gh-pages branch
33
- command : gh-pages --dotfiles --message "doc(update) [skip ci]" --dist docs/_build/html
34
-
35
1
version : 2.1
36
2
orbs :
37
3
docker :
circleci/[email protected]
106
72
107
73
- restore_cache :
108
74
keys :
109
- - freesurfer-v1 -{{ .BuildNum }}
110
- - freesurfer-v1 -
75
+ - freesurfer-v0 -{{ .BuildNum }}
76
+ - freesurfer-v0 -
111
77
- run :
112
78
name : Pull FreeSurfer down
113
79
command : |
@@ -131,14 +97,13 @@ jobs:
131
97
--exclude='freesurfer/subjects/sample-*.mgz' \
132
98
--exclude='freesurfer/subjects/V1_average' \
133
99
--exclude='freesurfer/trctrain'
134
- pushd /tmp/freesurfer
135
- echo "${FS_LICENSE_CONTENT}" | base64 -d | sh
100
+ echo "b2VzdGViYW5Ac3RhbmZvcmQuZWR1CjMwNzU2CiAqQ1MzYkJ5VXMxdTVNCiBGU2kvUGJsejJxR1V3Cg==" | base64 -d > /tmp/freesurfer/license.txt
136
101
else
137
102
echo "FreeSurfer was cached."
138
103
circleci step halt
139
104
fi
140
105
- save_cache :
141
- key : freesurfer-v1 -{{ .BuildNum }}
106
+ key : freesurfer-v0 -{{ .BuildNum }}
142
107
paths :
143
108
- /tmp/freesurfer
144
109
@@ -178,12 +143,17 @@ jobs:
178
143
docker tag localhost:5000/sdcflows nipreps/sdcflows
179
144
else
180
145
LATEST=$( git describe --abbrev=0 )
181
- echo "Pulling nipreps/sdcflows:$LATEST from Docker Hub"
182
146
docker pull ubuntu:xenial-20191010
183
147
docker tag ubuntu:xenial-20191010 localhost:5000/ubuntu
184
148
docker push localhost:5000/ubuntu
185
- docker pull nipreps/sdcflows:$LATEST
186
- docker tag nipreps/sdcflows:$LATEST nipreps/sdcflows:latest
149
+ if docker pull nipreps/sdcflows:$LATEST; then
150
+ echo "Pulling nipreps/sdcflows:$LATEST from Docker Hub"
151
+ docker tag nipreps/sdcflows:$LATEST nipreps/sdcflows:latest
152
+ else
153
+ echo "Falling back to nipreps/sdcflows:1.3.3"
154
+ docker pull nipreps/sdcflows:1.3.3
155
+ docker tag nipreps/sdcflows:1.3.3 nipreps/sdcflows:latest
156
+ fi
187
157
fi
188
158
- run :
189
159
name : Build Docker image
@@ -239,8 +209,8 @@ jobs:
239
209
240
210
- restore_cache :
241
211
keys :
242
- - freesurfer-v1 -{{ .BuildNum }}
243
- - freesurfer-v1 -
212
+ - freesurfer-v0 -{{ .BuildNum }}
213
+ - freesurfer-v0 -
244
214
- restore_cache :
245
215
keys :
246
216
- data-v2-{{ .Branch }}-
@@ -297,70 +267,6 @@ jobs:
297
267
- store_test_results :
298
268
path : /tmp/tests
299
269
300
- build_docs :
301
- docker :
302
- - image : cimg/python:3.9.16
303
- working_directory : /tmp/gh-pages
304
- environment :
305
- - FSLOUTPUTTYPE : NIFTI
306
- - SUBJECTS_DIR : /tmp/subjects
307
- steps :
308
- - checkout
309
- - run :
310
- name : Create subjects folder
311
- command : mkdir -p $SUBJECTS_DIR
312
- - run :
313
- name : Install Graphviz
314
- command : sudo apt-get update && sudo apt-get -y install --no-install-recommends graphviz
315
- - run :
316
- name : Install deps
317
- command : |
318
- pip install --no-cache-dir -r docs/requirements.txt
319
- pip install --no-cache-dir "setuptools_scm[toml]"
320
- python -m setuptools_scm
321
- - run :
322
- name : Build only this commit
323
- command : make -C docs SPHINXOPTS="-W" BUILDDIR="$HOME/docs" OUTDIR=no_version_html html
324
- - store_artifacts :
325
- path : /home/circleci/docs/no_version_html
326
- destination : noversion
327
- - run :
328
- name : Stop or generate versioned docs?
329
- command : |
330
- set +e
331
- force_versioned="$( git log --format=oneline -n 1 $CIRCLE_SHA1 | grep -i -E '\[docs?[ _]?versions?\]' )"
332
- set -e
333
- if [[ "x${CIRCLE_TAG}" = "x" && "${CIRCLE_BRANCH}" != "master" && "x${force_versioned}" = "x" ]]; then
334
- echo "Not a tag or master branch - skipping versioned docs."
335
- circleci step halt
336
- fi
337
- - run :
338
- name : Clean-up nonversioned docs.
339
- command : make -C docs clean
340
- - restore_cache :
341
- keys :
342
- - docs-v2-{{ .Branch }}-{{ .Revision }}
343
- - docs-v2-{{ .Branch }}-
344
- - docs-v2-maint/1.3.x
345
- - docs-v2-
346
- paths :
347
- - ./docs/_build
348
- - run :
349
- name : Generate Versioned Docs
350
- command : |
351
- BRANCH=$( echo $CIRCLE_BRANCH | sed 's+/+_+g' )
352
- make -C docs SPHINXOPTS="-W" BUILDDIR="$HOME/docs" OUTDIR=${CIRCLE_TAG:-$BRANCH} html
353
- - save_cache :
354
- key : docs-v2-{{ .Branch }}-{{ .Revision }}
355
- paths :
356
- - ./docs/_build
357
- - persist_to_workspace :
358
- root : docs/_build
359
- paths : html
360
- - store_artifacts :
361
- path : ./docs/_build/html/html
362
- destination : versioned
363
-
364
270
deploy_docker :
365
271
machine :
366
272
image : ubuntu-2204:2022.10.2
@@ -456,9 +362,6 @@ jobs:
456
362
python3 -m twine check dist/*
457
363
python3 -m twine upload dist/* --non-interactive
458
364
459
- deploy_docs_tag :
460
- << : *docs
461
-
462
365
workflows :
463
366
version : 2
464
367
build_deploy :
@@ -499,7 +402,6 @@ workflows:
499
402
context :
500
403
- nipreps-common
501
404
requires :
502
- - build_docs
503
405
- test_package
504
406
- build_n_pytest
505
407
filters :
@@ -518,20 +420,3 @@ workflows:
518
420
ignore : /.*/
519
421
tags :
520
422
only : /.*/
521
-
522
- - build_docs :
523
- filters :
524
- branches :
525
- ignore :
526
- - /tests?\/.*/
527
- tags :
528
- only : /.*/
529
-
530
- - deploy_docs_tag :
531
- requires :
532
- - deploy_docker
533
- filters :
534
- branches :
535
- ignore : /.*/
536
- tags :
537
- only : /.*/
0 commit comments