Skip to content

[FIX] fix cluster threshold in randomise + change default prefix #2063

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 905 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
905 commits
Select commit Hold shift + click to select a range
77f5bd4
FIX: T2/FLAIR inputs not mutually exclusive
effigies Nov 13, 2017
637f033
regenerate dockerfiles with base nipype/nipype:base
Nov 13, 2017
a29400b
enh: optimize + use nipype/nipype dockerhub repo
Nov 13, 2017
399fe16
use nipype/nipype repo instead of kaczmarj/nipype
Nov 13, 2017
126831e
Merge remote-tracking branch 'upstream/master' into enh/circleci-neur…
Nov 13, 2017
68e8ef0
Merge pull request #2279 from effigies/enh/reconall_flair
effigies Nov 13, 2017
38f8b63
fix: testing for non-developer installation
mgxd Nov 13, 2017
0f4a190
fix: missing comma
mgxd Nov 13, 2017
4a6351b
fix: included testing data
mgxd Nov 13, 2017
e50226e
[FIX] Do not break when building profiling summary
oesteban Nov 14, 2017
28547cc
generate dockerfiles in ci + rm dockerfiles
Nov 15, 2017
c4a249a
Merge pull request #2280 from mgxd/fix/pytest
satra Nov 15, 2017
56838b9
add jakub kaczmarzyk (mit)
Nov 15, 2017
bba7a7c
sty: whitespaces
mgxd Nov 15, 2017
d7a2d16
enable reuse of resource_monitor.json, write it in base_dir
oesteban Nov 15, 2017
58b4905
Merge branch 'fix/resource-monitor-file' into fix/resource-monitor-re…
oesteban Nov 15, 2017
75cb366
Merge remote-tracking branch 'upstream/master' into fix/resource-moni…
oesteban Nov 15, 2017
b72f9aa
allow disable resource_monitor appending with nipype option
oesteban Nov 15, 2017
cd46847
allow disable resource_monitor appending with nipype option (amend to…
oesteban Nov 15, 2017
8e79259
improving documentation of new config entry
oesteban Nov 15, 2017
afa63dc
add new [monitoring] section to nipype config
oesteban Nov 15, 2017
0100135
read new monitoring.summary_file option
oesteban Nov 15, 2017
edaf222
Merge pull request #2202 from kaczmarj/enh/circleci-neurodocker
mgxd Nov 15, 2017
b159b01
Merge remote-tracking branch 'upstream/master' into fix/resource-moni…
oesteban Nov 15, 2017
92974cf
Merge branch 'master' of git://github.com/nipy/nipype into rel/0.14.0
mgxd Nov 15, 2017
a2d28b6
fix: ensure encoding when opening commit info
mgxd Nov 15, 2017
612ed03
fix tests
oesteban Nov 15, 2017
be7f6b4
[skip ci] clean header up, fix two pep8 warnings
oesteban Nov 15, 2017
fd43693
[ENH] Set maxtasksperchild in MultiProc Pool
oesteban Nov 16, 2017
cfdf07f
[skip ci] clarify `new plugin_arg` description
oesteban Nov 16, 2017
b0828e0
[ENH] Revising use of subprocess.Popen
oesteban Nov 16, 2017
f07707d
fix: use gzip compression -6 instead of -1
Nov 16, 2017
d0741b9
Merge pull request #2287 from kaczmarj/fix/circleci-deploy
mgxd Nov 16, 2017
13e454f
add: missing autotests and updated mailmap
mgxd Nov 16, 2017
71a85e0
tst+enh: update neurodocker version + retry building base image
Nov 16, 2017
5a152a0
Merge pull request #2284 from oesteban/enh/multiproc-maxtasksperchild
oesteban Nov 16, 2017
69575bc
Merge pull request #2288 from kaczmarj/tst/fix-circle
mgxd Nov 17, 2017
eaef0b2
Merge pull request #2282 from mgxd/fix/cp
mgxd Nov 17, 2017
89371e8
Merge branch 'master' into enh/revising-popen-calls
oesteban Nov 17, 2017
1913dca
fix tests, address @effigies' comments
oesteban Nov 17, 2017
dac651d
tst+fix: do not save empty tar.gz file + use fastest gzip compression
Nov 17, 2017
14161a5
Merge pull request #2290 from kaczmarj/tst/fix-circle
mgxd Nov 17, 2017
e420ceb
[REF] Clean-up class Node code
oesteban Nov 17, 2017
a5ba813
general cleanup
oesteban Nov 18, 2017
d892072
Merge branch 'master' of git://github.com/nipy/nipype into rel/0.14.0
mgxd Nov 20, 2017
3e9ebcc
rel: 0.14.0 (rc1)
mgxd Nov 20, 2017
54e1c2a
fix: revert mailmap and add link to 0.14 milestone
mgxd Nov 20, 2017
3b95ad9
fix: md formatting
mgxd Nov 20, 2017
7c671a1
removing ALLOW_UNICODE from a couple more tests
djarecka Nov 21, 2017
c5bc410
ENH: make release candidate to test travis deployment first
mgxd Nov 21, 2017
1b05497
Merge pull request #2293 from djarecka/tmp_pytest
oesteban Nov 21, 2017
309c6ea
final touch
oesteban Nov 21, 2017
7f0ef16
Merge remote-tracking branch 'upstream/master' into enh/revising-pope…
oesteban Nov 21, 2017
cadcdbe
update CHANGES
oesteban Nov 21, 2017
425996e
Merge remote-tracking branch 'upstream/master' into fix/resource-moni…
oesteban Nov 21, 2017
87d1c7a
update CHANGES
oesteban Nov 21, 2017
80247fc
[FIX] Improve determination of ANTSPATH in BrainExtraction interface
oesteban Nov 21, 2017
5375f36
[ENH] Memoize FSL version check
oesteban Nov 21, 2017
bd086f9
remove unused packages
oesteban Nov 21, 2017
3d13246
Update CHANGES
oesteban Nov 21, 2017
48117bc
parse_version should be static
oesteban Nov 22, 2017
d159fe9
add rbt option
salma1601 Nov 22, 2017
4c9ccdf
update test
salma1601 Nov 22, 2017
d1b65be
add note option for experts
salma1601 Nov 22, 2017
bb9f5b4
Extended MRtrix3 interface
matteomancini Nov 22, 2017
d216b4a
Merge pull request #2294 from oesteban/fix/antsBrainExtraction-ANTSPATH
satra Nov 22, 2017
ac1412f
enh: test travis wheel deployment
mgxd Nov 22, 2017
07a62fb
Merge remote-tracking branch 'upstream/master' into enh/revising-pope…
oesteban Nov 22, 2017
ff63da8
make sure we clear up all stdout, stderr, stdoutstr, stderrstr
oesteban Nov 22, 2017
73ff136
fix deprecation message
oesteban Nov 22, 2017
1676c84
undo commenting out hacks of DynamicTraitedSpeck.__deepcopy__
oesteban Nov 22, 2017
6d42999
[FIX] MultiProc mishandling crashes
oesteban Nov 22, 2017
b34b000
Update CHANGES [skip ci]
oesteban Nov 22, 2017
47fa790
revert changing _report_crash signature
oesteban Nov 22, 2017
98cffc7
Merge pull request #2292 from mgxd/rel/0.14.0
mgxd Nov 22, 2017
7b2b350
move _exists_in_path to filemanip, and update
oesteban Nov 22, 2017
f6f97b6
use nipype's which in nifty package
oesteban Nov 22, 2017
a984f9f
ensure which call in ants/segmentation is correct)
oesteban Nov 22, 2017
8b56e12
ensure which calls in interfaces/base are correct
oesteban Nov 22, 2017
6676d22
cleaning up imports
oesteban Nov 22, 2017
d6a4b90
move from base with deprecation the load_template method
oesteban Nov 23, 2017
833d716
mv Multi- traits to traits_extension
oesteban Nov 23, 2017
82411ae
deep refactor of nipype.interfaces.base
oesteban Nov 23, 2017
d9c7f3d
fix final errors and wrong imports
oesteban Nov 23, 2017
3f0991c
Merge branch 'master' into enh/revising-popen-calls
oesteban Nov 23, 2017
b622934
Merge branch 'master' into fix/2300
oesteban Nov 23, 2017
1fd774b
[skip ci] update CHANGES
oesteban Nov 23, 2017
d663e2f
test passing locally
oesteban Nov 23, 2017
8629376
remove some unicode prefixes
oesteban Nov 23, 2017
6949323
simplify fname_presuffix adding test
oesteban Nov 23, 2017
4e37641
run test in temp directory
oesteban Nov 23, 2017
672d1a0
add some docstrings
oesteban Nov 23, 2017
4227937
Merge branch 'master' into enh-mrtrix3
matteomancini Nov 23, 2017
f18aef6
[skip ci] Merge remote-tracking branch 'upstream/master' into fix/2300
oesteban Nov 24, 2017
9b3ff0d
[skip ci] Merge branch 'fix/2300' of github.com:oesteban/nipype into …
oesteban Nov 24, 2017
080603d
Update CHANGES [skip ci]
oesteban Nov 24, 2017
52c03c4
Merge pull request #2302 from nipy/oesteban-patch-1
mgxd Nov 24, 2017
92a8ce5
fixup DictStrStr
oesteban Nov 26, 2017
4a7474a
[skip ci] Update CHANGES
oesteban Nov 26, 2017
71b1787
[skip ci] Update CHANGES
oesteban Nov 26, 2017
3fd6c28
[skip ci] Update CHANGES
oesteban Nov 26, 2017
97e186e
[skip ci] Merge remote-tracking branch 'upstream/master' into fix/res…
oesteban Nov 26, 2017
3b83940
member could be function, and use filemanip.hash_infile
oesteban Nov 26, 2017
59ae74c
amend to previous commit
oesteban Nov 26, 2017
290eb77
minor fixes
oesteban Nov 26, 2017
328e33f
setting matplotlib backend
djarecka Nov 26, 2017
9da0851
Merge pull request #2296 from salma1601/afni_unifize_rbt
oesteban Nov 27, 2017
e214b54
unicode_literals
djarecka Nov 27, 2017
fcff92d
Merge pull request #2295 from oesteban/fix/fslversion
mgxd Nov 27, 2017
f90dfe2
[skip ci] Merge remote-tracking branch 'upstream/master' into fix/res…
oesteban Nov 27, 2017
51585be
ading tmpdir; applying pep8 to my changes
djarecka Nov 27, 2017
7220ab3
[skip ci] Merge branch 'fix/resource-monitor-revisions' of github.com…
oesteban Nov 27, 2017
19aca5b
Merge branch 'master' into enh/revising-popen-calls
mgxd Nov 28, 2017
8d59408
fix indentation
oesteban Nov 28, 2017
10a0a41
Merge pull request #2289 from oesteban/enh/revising-popen-calls
mgxd Nov 28, 2017
dea0721
Merge branch 'master' into fix/2300
mgxd Nov 28, 2017
12598b6
Merge branch 'master' into fix/2300
oesteban Nov 28, 2017
f1d690c
Merge pull request #2261 from djarecka/ants2245
mgxd Nov 28, 2017
404a1c9
Merge branch 'master' into fix/resource-monitor-revisions
oesteban Nov 29, 2017
c15ba6b
Revert "Extended MRtrix3 interface"
matteomancini Nov 29, 2017
248e589
Updated MRtrix3 interfaces
matteomancini Nov 29, 2017
88a1734
Merge branch 'enh-mrtrix3' of https://github.com/matteomancini/nipype…
matteomancini Nov 29, 2017
a00149f
Merge pull request #2301 from oesteban/fix/2300
mgxd Nov 29, 2017
d6c4957
Merge pull request #2304 from djarecka/matplotlib_backend
satra Nov 29, 2017
0cd54bc
Merge remote-tracking branch 'upstream/master' into enh-mrtrix3
matteomancini Nov 29, 2017
a762317
[skip ci] Merge remote-tracking branch 'upstream/master' into fix/res…
oesteban Nov 29, 2017
ccb5403
[skip ci] Merge branch 'fix/resource-monitor-revisions' of github.com…
oesteban Nov 29, 2017
5573e54
ENH: Explicit garbage collection in MultiProc
effigies Nov 29, 2017
0edf2de
STY: Flake8 cleanup
effigies Nov 29, 2017
6a57e3e
Merge pull request #2285 from oesteban/fix/resource-monitor-revisions
satra Nov 29, 2017
3cb99d8
[skip ci] Add release date (v.0.14.0)
oesteban Nov 29, 2017
67491af
Merge remote-tracking branch 'upstream/master' into ref/interface-base
oesteban Nov 29, 2017
e5bb856
Merge branch 'ref/interface-base' of github.com:oesteban/nipype into …
oesteban Nov 29, 2017
7ebfd62
rel: 0.14.0
mgxd Nov 29, 2017
150a734
[ENH] Update zenodo
emdupre Nov 30, 2017
5af42c8
Merge pull request #2314 from emdupre/patch-1
chrisgorgo Nov 30, 2017
bf979cc
Update .zenodo.json
Shotgunosine Nov 30, 2017
decaa78
Merge pull request #2316 from Shotgunosine/patch-1
effigies Nov 30, 2017
d83fd34
Update .zenodo.json
rmarkello Nov 30, 2017
ee4dbb1
Merge pull request #2318 from rmarkello/patch-1
chrisgorgo Nov 30, 2017
7a836d3
Merge branch 'master' of git://github.com/nipy/nipype into rel/0.14
mgxd Nov 30, 2017
bc8260c
fix: sort additional contributors
mgxd Nov 30, 2017
bdb7afc
Merge pull request #2312 from mgxd/rel/0.14
mgxd Nov 30, 2017
b4b2e47
rel: on to the next one
mgxd Nov 30, 2017
44b5c17
Merge pull request #2319 from mgxd/rel/0.14.1
mgxd Nov 30, 2017
6662086
fix: remove ldd flag
mgxd Dec 1, 2017
2bf1569
[ENH] Logging - indicate whether the node was cached
oesteban Dec 1, 2017
d21b321
Merge remote-tracking branch 'upstream/master' into ref/Node-cleanup
oesteban Dec 1, 2017
5cb476e
revert changes to plugin base - make in different PR
oesteban Dec 1, 2017
671ea05
[ENH] Logging - MultiProc report current tasks
oesteban Dec 1, 2017
5f87526
revert changes to multiproc - to another PR
oesteban Dec 1, 2017
a70b507
Merge pull request #2322 from mgxd/fix/linuxlibs
oesteban Dec 1, 2017
7e66b04
take switch and loggin outside try except
oesteban Dec 1, 2017
15b13ea
pep8 fixups
oesteban Dec 1, 2017
02dba98
tidy up imports, fix pep8 issues
oesteban Dec 1, 2017
5467376
add some comments [skip ci]
oesteban Dec 1, 2017
60b35a1
FIX: Environment canonicalization bugs
effigies Dec 2, 2017
aee2e6e
Merge pull request #2328 from nipy/fix-2326
oesteban Dec 2, 2017
281c0e7
Merge remote-tracking branch 'upstream/master' into ref/interface-base
oesteban Dec 2, 2017
5758373
change dict_ when they are list_
oesteban Dec 2, 2017
8915591
fix logging in PY2
oesteban Dec 2, 2017
b366e91
add replacement for textwrap.indent
oesteban Dec 3, 2017
e049918
use new makedirs
oesteban Dec 3, 2017
b454961
set base_dir
oesteban Dec 3, 2017
98f5c31
move fsl.model templates
oesteban Dec 3, 2017
331e939
Merge pull request #2315 from effigies/garbage_collect
oesteban Dec 3, 2017
cfcc2bc
Merge branch 'master' into enh/logging-multiproc
oesteban Dec 3, 2017
79c22ee
final fixes
oesteban Dec 3, 2017
7ebf20c
Merge pull request #2323 from oesteban/enh/logging-cached
satra Dec 3, 2017
b401014
Merge pull request #2324 from oesteban/enh/logging-multiproc
satra Dec 4, 2017
9147408
move tests, update specs
oesteban Dec 4, 2017
86792b9
split huge test_base into pieces
oesteban Dec 4, 2017
15cd86f
fix imports in new tests
oesteban Dec 4, 2017
609c505
Merge branch 'ref/interface-base' of github.com:oesteban/nipype into …
oesteban Dec 4, 2017
50580aa
fix tests
oesteban Dec 4, 2017
5512779
update specs [skip ci]
oesteban Dec 5, 2017
d42ae1a
Merge pull request #2303 from oesteban/ref/interface-base
oesteban Dec 5, 2017
2fcab30
Merge remote-tracking branch 'upstream/master' into ref/Node-cleanup
oesteban Dec 5, 2017
3070378
add docstring to emptydirs
oesteban Dec 5, 2017
de11e79
remove self._results from Node
oesteban Dec 5, 2017
a1c0fbd
hashfiles is True
oesteban Dec 5, 2017
5c56bfe
ENH: Profile VMS as well as RSS
effigies Dec 4, 2017
a8a899b
ENH: Improve loop timing in DistributedPluginBase
effigies Nov 29, 2017
89bf38f
STY: Flake8 cleanup
effigies Nov 29, 2017
43537aa
fix import of md5
oesteban Dec 5, 2017
a5f48d7
rss/vms_gb -> rss/vms_GiB
effigies Dec 5, 2017
d1176eb
Merge pull request #2317 from effigies/constant_loop
oesteban Dec 5, 2017
a15e086
ENH: Reorder profiler columns
effigies Dec 5, 2017
e8b7697
ENH: Profile at constant interval
effigies Dec 5, 2017
373bddd
Merge pull request #2331 from effigies/profile/vms
oesteban Dec 6, 2017
b46704f
improved hashfiles checks
oesteban Dec 7, 2017
54d058e
Conflicts with master resolved
matteomancini Dec 12, 2017
b135506
Fixed tests
matteomancini Dec 12, 2017
bdb340d
Removed trailing spaces
matteomancini Dec 13, 2017
1e1dcc0
Removed last trailing spaces
matteomancini Dec 13, 2017
e92e112
Removed last trailing spaces
matteomancini Dec 13, 2017
4ac9162
quiet clfrac and t2_up parameters
salma1601 Dec 13, 2017
cbc904d
use '_unifized' as template for out_file
salma1601 Dec 13, 2017
03a67a9
add verbosity options
salma1601 Dec 17, 2017
a9099ed
update MaskTool test
salma1601 Dec 17, 2017
6e487b7
update Tstat test
salma1601 Dec 17, 2017
6829757
rather use verbose than verb
salma1601 Dec 18, 2017
c3ccafe
Minor fixes (style)
matteomancini Dec 19, 2017
1197307
Minor fixes (tests)
matteomancini Dec 19, 2017
a984202
wip - refactoring
oesteban Dec 21, 2017
e975626
fix emptydirs
oesteban Dec 22, 2017
73ec692
fix write_report
oesteban Dec 22, 2017
ead00d7
refactor nodes
oesteban Dec 22, 2017
16eafc0
Update SPM interfaces to use the new PackageInfo
oesteban Dec 22, 2017
db479b1
fix spm.Info when spm is not installed
oesteban Dec 23, 2017
94a4604
improve logging of nodes with updated hash
oesteban Dec 31, 2017
37554d0
remove hashfiles on error situations, improve logging the diff of has…
oesteban Dec 31, 2017
a0b2b04
python2 compat, sty fixes
oesteban Jan 1, 2018
2daabf0
[FIX] Fix surf_reg input trait
oesteban Jan 3, 2018
371a10b
Merge remote-tracking branch 'upstream/master' into ref/Node-cleanup
oesteban Jan 3, 2018
afa74b7
make sure the OSError when cwd is deleted by other process is handled…
oesteban Jan 3, 2018
8fc2771
STY: correct for tailing spaces and newline at end of file
miykael Jan 5, 2018
08e4d66
STY: correct for tailing spaces and newline at end of file
miykael Jan 5, 2018
d0dd3e1
STY: correct for newline at end of file
miykael Jan 5, 2018
adf0026
STY: delets heading newline in textfiles
miykael Jan 5, 2018
e3dffee
STY: adds newline to end of file
miykael Jan 5, 2018
3ed2840
Merge pull request #2339 from salma1601/afni_unifize_more_options
mgxd Jan 5, 2018
775e21b
Merge pull request #2345 from salma1601/afni_verbosity
mgxd Jan 5, 2018
193693d
Merge remote-tracking branch 'upstream/master' into STY_space_correction
miykael Jan 6, 2018
77e5257
improve log trace when ``os.getcwd()`` failed
oesteban Jan 7, 2018
a1c780b
cache cwd in config object, handle os.getcwd errors
oesteban Jan 7, 2018
d0e1ec8
elevate trace to warning
oesteban Jan 7, 2018
ee7c70b
add test for cwd
oesteban Jan 7, 2018
459e0ac
cleaning pe.utils
oesteban Jan 7, 2018
1725515
finishing pe.nodes cleanup
oesteban Jan 7, 2018
4e0f6e1
finishing pe.nodes - unfinished hashfiles
oesteban Jan 7, 2018
396aa1e
fix Bunch does not have keys()
oesteban Jan 7, 2018
bb905b9
[skip ci] fix ordering as per @djarecka
oesteban Jan 8, 2018
4e4c670
[skip ci] Extend docstring as per @djarecka
oesteban Jan 8, 2018
a80c9b1
[skip ci] Update CHANGES
oesteban Jan 8, 2018
6f7ae71
Reset change to make hash assertion happy
miykael Jan 8, 2018
132bd89
FIX: Reset change to make hash assertion happy
miykael Jan 8, 2018
974ae09
FIX: updates hash to accept newline in realign_json.json
miykael Jan 8, 2018
6401e97
Merge remote-tracking branch 'upstream/master' into enh-mrtrix3
matteomancini Jan 8, 2018
c31d7cd
Minor fix (test)
matteomancini Jan 8, 2018
cfcd8f6
Merge pull request #2338 from matteomancini/enh-mrtrix3
mgxd Jan 8, 2018
9be816e
Merge pull request #2325 from oesteban/ref/Node-cleanup
mgxd Jan 8, 2018
fb2628e
Merge branch 'DiffusionToolkit_fix' of https://github.com/forwho/nipy…
djarecka Jan 9, 2018
ee06cc8
updating the auto test
djarecka Jan 9, 2018
17151d6
Merge pull request #2352 from oesteban/fix/vol2surf
mgxd Jan 9, 2018
6f5b7f7
Merge pull request #2355 from miykael/STY_space_correction
oesteban Jan 9, 2018
8384523
Merge pull request #2361 from djarecka/forwho-DiffusionToolkit_fix
oesteban Jan 9, 2018
00ef467
[HOTFIX] Incorrect call to warnings.warn
oesteban Jan 10, 2018
09465cf
fix: doctest
mgxd Jan 10, 2018
3fedaab
fix: randomise autotest
mgxd Jan 10, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
51 changes: 0 additions & 51 deletions .circle/tests.sh

This file was deleted.

194 changes: 194 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,194 @@
version: 2
jobs:

compare_base_dockerfiles:
docker:
- image: docker:17.10.0-ce-git
steps:
- checkout:
path: /home/circleci/nipype
- setup_remote_docker
- run:
name: Generate and prune base Dockerfile in preparation for cache check
working_directory: /home/circleci/nipype/docker
command: |
mkdir -p /tmp/docker
ash ./generate_dockerfiles.sh -b

# Use the sha256 sum of the pruned Dockerfile as the cache key.
ash prune_dockerfile.sh Dockerfile.base > /tmp/docker/Dockerfile.base-pruned
- restore_cache:
key: dockerfile-cache-v1-master-{{ checksum "/tmp/docker/Dockerfile.base-pruned" }}
- run:
name: Determine how to get base image
command: |
if [ -f /tmp/docker/cache/Dockerfile.base-pruned ]; then
echo "Cache found. Will pull base image."
echo 'export GET_BASE=PULL' > /tmp/docker/get_base_image.sh
else
echo "Cache not found. Will build base image."
echo 'export GET_BASE=BUILD' > /tmp/docker/get_base_image.sh
fi
- persist_to_workspace:
root: /tmp
paths:
- docker/Dockerfile.base-pruned
- docker/get_base_image.sh


build_and_test:
parallelism: 4
machine:
# Ubuntu 14.04 with Docker 17.10.0-ce
image: circleci/classic:201710-02
working_directory: /home/circleci/nipype
steps:
- checkout:
path: /home/circleci/nipype
- attach_workspace:
at: /tmp
- run:
name: Get test dependencies and generate Dockerfiles
command: |
pip install --no-cache-dir codecov
make gen-dockerfiles
- run:
name: Modify Nipype version if necessary
command: |
if [ "$CIRCLE_TAG" != "" ]; then
sed -i -E "s/(__version__ = )'[A-Za-z0-9.-]+'/\1'$CIRCLE_TAG'/" nipype/info.py
fi
- run:
name: Get base image (pull or build)
no_output_timeout: 60m
command: |
source /tmp/docker/get_base_image.sh
if [ "$GET_BASE" == "PULL" ]; then
echo "Pulling base image ..."
docker pull nipype/nipype:base
elif [ "$GET_BASE" == "BUILD" ]; then
e=1 && for i in {1..5}; do
docker build -t nipype/nipype:base - < docker/Dockerfile.base && e=0 && break || sleep 15
done && [ "$e" -eq "0" ]
else
echo "Error: method to get base image not understood"
exit 1
fi
- run:
name: Build main image (py36)
no_output_timeout: 60m
command: |
e=1 && for i in {1..5}; do
docker build \
--rm=false \
--tag nipype/nipype:latest \
--tag nipype/nipype:py36 \
--build-arg BUILD_DATE="$(date -u +"%Y-%m-%dT%H:%M:%SZ")" \
--build-arg VCS_REF="$(git rev-parse --short HEAD)" \
--build-arg VERSION="${CIRCLE_TAG}" /home/circleci/nipype \
&& e=0 && break || sleep 15
done && [ "$e" -eq "0" ]
- run:
name: Build main image (py27)
no_output_timeout: 60m
command: |
e=1 && for i in {1..5}; do
docker build \
--rm=false \
--tag nipype/nipype:py27 \
--build-arg PYTHON_VERSION_MAJOR=2 \
--build-arg PYTHON_VERSION_MINOR=7 \
--build-arg BUILD_DATE="$(date -u +"%Y-%m-%dT%H:%M:%SZ")" \
--build-arg VCS_REF="$(git rev-parse --short HEAD)" \
--build-arg VERSION="${CIRCLE_TAG}-py27" /home/circleci/nipype \
&& e=0 && break || sleep 15
done && [ "$e" -eq "0" ]
- run:
name: Download test data
no_output_timeout: 20m
working_directory: /home/circleci/examples
environment:
OSF_NIPYPE_URL: "https://files.osf.io/v1/resources/nefdp/providers/osfstorage"
command: |
export DATA_NIPYPE_TUTORIAL_URL="${OSF_NIPYPE_URL}/57f4739cb83f6901ed94bf21"
curl -sSL --retry 5 --connect-timeout 15 "$DATA_NIPYPE_TUTORIAL_URL" | tar xj

export DATA_NIPYPE_FSL_COURSE="${OSF_NIPYPE_URL}/57f472cf9ad5a101f977ecfe"
curl -sSL --retry 5 --connect-timeout 15 "$DATA_NIPYPE_FSL_COURSE" | tar xz

export DATA_NIPYPE_FSL_FEEDS="${OSF_NIPYPE_URL}/57f473066c613b01f113e7af"
curl -sSL --retry 5 --connect-timeout 15 "$DATA_NIPYPE_FSL_FEEDS" | tar xz
- run:
name: Run tests
no_output_timeout: 4h
environment:
WORKDIR: /home/circleci/work
command: |
mkdir -p "$WORKDIR"
chmod -R 777 "$WORKDIR"
bash /home/circleci/nipype/.circleci/tests.sh
- store_artifacts:
path: /home/circleci/work/tests
- run:
name: Save Docker images to workspace
no_output_timeout: 60m
command: |
if [ "$CIRCLE_NODE_INDEX" -eq "0" ] && [ "$CIRCLE_BRANCH" == "master" ]; then
docker save nipype/nipype:base \
nipype/nipype:latest \
nipype/nipype:py36 \
nipype/nipype:py27 | gzip -1 > /tmp/docker/nipype-base-latest-py36-py27.tar.gz
du -h /tmp/docker/nipype-base-latest-py36-py27.tar.gz
fi
- persist_to_workspace:
root: /tmp
paths:
- docker/*


deploy:
docker:
- image: docker:17.10.0-ce-git
steps:
- setup_remote_docker
- attach_workspace:
at: /tmp
- run:
name: Load saved Docker images.
no_output_timeout: 60m
command: |
docker load < /tmp/docker/nipype-base-latest-py36-py27.tar.gz
- run:
name: Push to DockerHub
no_output_timeout: 120m
command: |
echo "$DOCKER_PASS" | docker login -u "$DOCKER_USER" --password-stdin
docker push nipype/nipype:base
docker push nipype/nipype:latest
docker push nipype/nipype:py36
docker push nipype/nipype:py27
- run:
name: Move pruned Dockerfile to /tmp/docker/cache directory
command: |
mkdir -p /tmp/docker/cache/
mv /tmp/docker/Dockerfile.base-pruned /tmp/docker/cache/Dockerfile.base-pruned
- save_cache:
paths:
- /tmp/docker/cache/Dockerfile.base-pruned
key: dockerfile-cache-v1-{{ .Branch }}-{{ checksum "/tmp/docker/cache/Dockerfile.base-pruned" }}


workflows:
version: 2
build_test_deply:
jobs:
- compare_base_dockerfiles
- build_and_test:
requires:
- compare_base_dockerfiles
- deploy:
filters:
branches:
only: master
requires:
- build_and_test
54 changes: 54 additions & 0 deletions .circleci/tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
#!/bin/bash
#
# Balance nipype testing workflows across CircleCI build nodes
#

# Setting # $ help set
set -e # Exit immediately if a command exits with a non-zero status.
set -u # Treat unset variables as an error when substituting.
set -x # Print command traces before executing command.

if [ "${CIRCLE_NODE_TOTAL:-}" != "4" ]; then
echo "These tests were designed to be run at 4x parallelism."
exit 1
fi

DOCKER_IMAGE="nipype/nipype"

# These tests are manually balanced based on previous build timings.
# They may need to be rebalanced in the future.
case ${CIRCLE_NODE_INDEX} in
0)
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e CI_SKIP_TEST=1 -e NIPYPE_RESOURCE_MONITOR=1 -e FSL_COURSE_DATA="/data/examples/nipype-fsl_course_data" "${DOCKER_IMAGE}:py36" /usr/bin/run_pytests.sh \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e CI_SKIP_TEST=1 -e NIPYPE_RESOURCE_MONITOR=1 -e FSL_COURSE_DATA="/data/examples/nipype-fsl_course_data" "${DOCKER_IMAGE}:py27" /usr/bin/run_pytests.sh \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /src/nipype/doc "${DOCKER_IMAGE}:py36" /usr/bin/run_builddocs.sh \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh test_spm Linear /data/examples/ workflow3d \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh test_spm Linear /data/examples/ workflow4d
exitcode=$?
;;
1)
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_spm_dartel Linear /data/examples/ level1 \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_spm_dartel Linear /data/examples/ l2pipeline
exitcode=$?
;;
2)
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e NIPYPE_NUMBER_OF_CPUS=4 "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ level1 \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e NIPYPE_NUMBER_OF_CPUS=4 -e NIPYPE_RESOURCE_MONITOR=1 "${DOCKER_IMAGE}:py27" /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ l2pipeline
exitcode=$?
;;
3)
docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work -e NIPYPE_NUMBER_OF_CPUS=4 "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_spm_nested MultiProc /data/examples/ level1 \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_fsl_feeds Linear /data/examples/ l1pipeline \
&& docker run --rm=false -t -v $WORKDIR:/work -v $HOME/examples:/data/examples:ro -w /work "${DOCKER_IMAGE}:py36" /usr/bin/run_examples.sh fmri_fsl_reuse Linear /data/examples/ level1_workflow
exitcode=$?
;;
esac

# Exit with error if any of the tests failed
if [ "$exitcode" != "0" ]; then exit 1; fi

codecov --file "${WORKDIR}/tests/coverage*.xml" \
--root "${HOME}/nipype/" --flags unittests -e CIRCLE_NODE_INDEX

codecov --file "${WORKDIR}/tests/smoketest*.xml" \
--root "${HOME}/nipype/" --flags smoketests -e CIRCLE_NODE_INDEX
2 changes: 1 addition & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@ Vagrantfile
.mailmap

# Previous coverage results
.coverage
.coverage
7 changes: 7 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Aimi Watanabe <watanabe.aimi@gmail.com> stymy <rschadmin@cmi-rsch-li002.childmind.org>
Aimi Watanabe <watanabe.aimi@gmail.com> stymy <watanabe.aimi@gmail.com>
Alejandro de la Vega <aleph4@gmail.com> adelavega <delavega@utexas.edu>
Alexander Schaefer <alexschaefer83@gmail.com> Alexander Schaefer <aschaefer@melisse.cbs.mpg.de>
Alexander Schaefer <alexschaefer83@gmail.com> alexschaefer83 <alexschaefer83@gmail.com>
Alexander Schaefer <alexschaefer83@gmail.com> aschaefer <aschaefer@aschaefer-U36SD.(none)>
Expand Down Expand Up @@ -56,11 +57,13 @@ Franz Liem <franz.liem@gmail.com> fliem <franz.liem>
Gael Varoquaux <gael.varoquaux@normalesup.org> GaelVaroquaux
Gael Varoquaux <gael.varoquaux@normalesup.org> GaelVaroquaux <gael.varoquaux@noramlesup.org>
Gavin Cooper <Gavin.Cooper@newcastle.edu.au> gjcooper <gjcooper@gmail.com>
Gilles de Hollander <gilles.de.hollander@gmail.com> Gilles86 <gilles.de.hollander@gmail.com>
Hans Johnson <hans-johnson@uiowa.edu> Hans Johnson <hans.j.johnson@gmail.com>
Hans Johnson <hans-johnson@uiowa.edu> hjmjohnson <hans.j.johnson@gmail.com>
Horea Christian <horea.christ@yandex.com> Horea Christian <h.chr@mail.ru>
Isaac Schwabacher <ischwabacher@wisc.edu> ischwabacher <ischwabacher@wisc.edu>
James Kent <james-kent@uiowa.edu> jdkent <james-kent@uiowa.edu>
Jakub Kaczmarzyk <jakubk@mit.edu> kaczmarj <jakubk@mit.edu>
Jason Wong <jf126dolphin@gmail.com> Jason <jf126dolphin@gmail.com>
Jason Wong <jf126dolphin@gmail.com> jason <jf126dolphin@gmail.com>
Jason Wong <jf126dolphin@gmail.com> Jason W <jf126dolphin@gmail.com>
Expand All @@ -72,7 +75,9 @@ Joerg Stadler <Joerg.Stadler@lin-magdeburg.de> Jörg Stadler <Stadler@lin-magdeb
Joke Durnez <joke.durnez@gmail.com> jokedurnez <joke.durnez@gmail.com>
Josh Warner <silvertrumpet999+github@gmail.com> Josh Warner (Mac) <warner.joshua@mayo.edu>
Kai Schlamp <schlamp@gmx.de> medihack <schlamp@gmx.de>Jessica Forbes <jessica-forbes@uiowa.edu> jessicaforbes <jessica-forbes@uiowa.edu>
Kevin Sitek <ksitek@mit.edu> sitek <ksitek@mit.edu>
Leonie Lampe <leonie.lampe@gmail.com> Leonie Lmape <leonie.lampe@gmail.com>
Lukas Snoek <lukassnoek@gmail.com> Lukas Snoek <lukassnoek@gmail.com>
Mathias Goncalves <goncalves.mathias@gmail.com> mathiasg <mathiasg@mit.edu>
Michael Dayan <mdayan.research@gmail.com> Michael <mdayan.research@gmail.com>
Michael Dayan <mdayan.research@gmail.com> Michael <mdayan.comp@gmail.com>
Expand All @@ -83,6 +88,7 @@ Michael Waskom <michael.l.waskom@gmail.com> Michael Waskom <mwaskom@mit.edu>
Michael Waskom <michael.l.waskom@gmail.com> Michael Waskom <mwaskom@stanford.edu>
Michael Waskom <michael.l.waskom@gmail.com> mwaskom <mwaskom@mit.edu>
Michael Waskom <michael.l.waskom@gmail.com> mwaskom <mwaskom@stanford.edu>
Michael Waskom <michael.l.waskom@gmail.com> mwaskom <mwaskom@nyu.edu>
Oscar Esteban <code@oscaresteban.es> Oscar Esteban <code@oscaresteban>
Oscar Esteban <code@oscaresteban.es> oesteban <code@oscaresteban.es>
Russell Poldrack <poldrack@gmail.com> Russ Poldrack <poldrack@gmail.com>
Expand All @@ -101,5 +107,6 @@ Steven Giavasis <sgiava77@gmail.com> sgiavasis <sgiavasis@ieee.org>
Tristan Glatard <tristan.glatard@mcgill.ca> Tristan Glatard <tristan.glatard@creatis.insa-lyon.fr>
Victor Saase <victor@saase.net> vsaase <victor@saase.net>
William Triplett <wtriplett@gmail.com> William Triplett <wtriplett@ufl.edu>
Wolfgang Pauli <Wolfgang.m.Pauli@gmail.com> Wolfgang Pauli <Wolfgang.m.Pauli@gmail.com>
Yaroslav Halchenko <debian@onerussian.com> Yaroslav Halchenko <yoh@dartmouth.edu>
pipolose <pipolose@pipoloses-air.watson.ibm.com> pipolose <pipolose@pipoloses-MacBook-Air.local>
22 changes: 14 additions & 8 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,10 @@ python:
- 3.5
- 3.6
env:
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler"
- INSTALL_DEB_DEPENDECIES=false NIPYPE_EXTRAS="doc,tests,fmri,profiler"
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler,duecredit"
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler" CI_SKIP_TEST=1
- INSTALL_DEB_DEPENDECIES=false NIPYPE_EXTRAS="doc,tests,fmri,profiler" CI_SKIP_TEST=1
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler,duecredit" CI_SKIP_TEST=1
- INSTALL_DEB_DEPENDECIES=true NIPYPE_EXTRAS="doc,tests,fmri,profiler" PIP_FLAGS="--pre" CI_SKIP_TEST=1
before_install:
- function apt_inst {
if $INSTALL_DEB_DEPENDECIES; then sudo rm -rf /dev/shm; fi &&
Expand All @@ -33,15 +34,20 @@ before_install:
hash -r &&
conda config --set always_yes yes --set changeps1 no &&
conda update -q conda &&
conda install python=${TRAVIS_PYTHON_VERSION} &&
conda config --add channels conda-forge &&
conda install -y nipype icu &&
rm -r ${CONDA_HOME}/lib/python${TRAVIS_PYTHON_VERSION}/site-packages/nipype*; }
conda install python=${TRAVIS_PYTHON_VERSION} &&
conda install -y icu &&
pip install -r requirements.txt &&
pushd $HOME;
git clone https://github.com/INCF/pybids.git;
cd pybids;
pip install -e .;
popd; }
# Add install of vtk and mayavi to test mesh (disabled): conda install -y vtk mayavi
- travis_retry apt_inst
- travis_retry conda_inst
install:
- travis_retry pip install -e .[$NIPYPE_EXTRAS]
- travis_retry pip install $PIP_FLAGS -e .[$NIPYPE_EXTRAS]
script:
- py.test -v --doctest-modules nipype
deploy:
Expand All @@ -53,4 +59,4 @@ deploy:
tags: true
repo: nipy/nipype
branch: master
distributions: "sdist"
distributions: "sdist bdist_wheel"
Loading