Skip to content

Commit f2442f2

Browse files
committed
CI: Drop test_masks from CircleCI
1 parent cb6ef43 commit f2442f2

File tree

1 file changed

+0
-169
lines changed

1 file changed

+0
-169
lines changed

.circleci/config.yml

Lines changed: 0 additions & 169 deletions
Original file line numberDiff line numberDiff line change
@@ -170,46 +170,6 @@ jobs:
170170
- fslicense
171171
- src/
172172

173-
- run:
174-
name: Check if regression data must be downloaded
175-
command: |
176-
cd /tmp/src/niworkflows
177-
set +e
178-
test_masks="$( git log --format=oneline -n 1 $CIRCLE_SHA1 | grep -i -E '\[test[ _]?masks?\]' )$( echo $CIRCLE_BRANCH | grep -i -E '^masks?/' )"
179-
set -e
180-
if [[ "x${CIRCLE_TAG}" = "x" && "${CIRCLE_BRANCH}" != "master" && "x${test_masks}" = "x" ]]; then
181-
echo "Not a tag or master branch, not a ``masks?/`` branch, no ``[test_masks]`` label in commit message"
182-
echo "Skipping download of test data for mask regressions."
183-
circleci step halt
184-
fi
185-
186-
- restore_cache:
187-
keys:
188-
- mask-regressions-v2-{{ .Branch }}-{{ .Revision }}-
189-
- mask-regressions-v2-{{ .Branch }}-
190-
- mask-regressions-v2-master-
191-
- mask-regressions-v2-
192-
- run:
193-
name: Setup TemplateFlow
194-
command: |
195-
python -c "from templateflow import api as tfapi; \
196-
tfapi.get('MNI152NLin2009cAsym', resolution=1, label='brain', suffix='probseg'); \
197-
tfapi.get('MNI152NLin2009cAsym', resolution=2, desc='fMRIPrep', suffix='boldref'); \
198-
tfapi.get('MNI152NLin2009cAsym', resolution=2, desc='brain', suffix='mask'); "
199-
- run:
200-
name: Install epi-references
201-
command: |
202-
if [[ ! -d epi-references ]]; then
203-
datalad install -r https://github.com/nipreps-data/epi-references.git
204-
fi
205-
datalad update -r --merge -d epi-references/
206-
datalad get -J 2 -r -d epi-references/ epi-references/*
207-
- save_cache:
208-
key: mask-regressions-v2-{{ .Branch }}-{{ .Revision }}-{{ epoch }}
209-
paths:
210-
- /tmp/templateflow
211-
- /tmp/data/epi-references
212-
213173
test_pytest:
214174
machine:
215175
image: ubuntu-2004:202104-01
@@ -313,127 +273,6 @@ jobs:
313273
- store_test_results:
314274
path: /tmp/tests/summaries/
315275

316-
test_masks:
317-
machine:
318-
image: ubuntu-2004:202104-01
319-
working_directory: /tmp/masks
320-
steps:
321-
- attach_workspace:
322-
at: /tmp
323-
324-
- run:
325-
name: Determine whether regression tests (masks) must be executed
326-
command: |
327-
cd /tmp/src/niworkflows
328-
set +e
329-
test_masks="$( git log --format=oneline -n 1 $CIRCLE_SHA1 | grep -i -E '\[test[ _]?masks?\]' )$( echo $CIRCLE_BRANCH | grep -i -E '^masks?/' )"
330-
set -e
331-
if [[ "x${CIRCLE_TAG}" = "x" && "${CIRCLE_BRANCH}" != "master" && "x${test_masks}" = "x" ]]; then
332-
echo "Not a tag or master branch, not a ``masks?/`` branch, no ``[test_masks]`` label in commit message"
333-
echo "Skipping download of test data for mask regressions."
334-
circleci step halt
335-
fi
336-
337-
- restore_cache:
338-
keys:
339-
- mask-regressions-v2-{{ .Branch }}-{{ .Revision }}-
340-
- mask-regressions-v2-{{ .Branch }}-
341-
342-
- restore_cache:
343-
keys:
344-
- build-v1-{{ .Branch }}-{{ .Revision }}
345-
- build-v1--{{ .Revision }}
346-
- build-v1-{{ .Branch }}-
347-
- build-v1-master-
348-
- build-v1-
349-
- run:
350-
name: Docker authentication
351-
command: |
352-
if [[ -n $DOCKER_PAT ]]; then
353-
echo "$DOCKER_PAT" | docker login -u $DOCKER_USER --password-stdin
354-
fi
355-
- run:
356-
name: Set up Docker registry
357-
command: |
358-
if [[ -f /tmp/images/registry.tar.gz ]]; then
359-
echo "Loading saved registry image"
360-
docker load < /tmp/images/registry.tar.gz
361-
else
362-
echo "Pulling registry image from DockerHub"
363-
docker pull registry:2
364-
mkdir -p /tmp/images
365-
docker save registry:2 | gzip > /tmp/images/registry.tar.gz
366-
fi
367-
docker run -d -p 5000:5000 --restart=always --name=registry \
368-
-v /tmp/docker:/var/lib/registry registry:2
369-
- run:
370-
name: Pull images to registry
371-
command: |
372-
docker pull localhost:5000/niworkflows
373-
docker tag localhost:5000/niworkflows niworkflows:latest
374-
- restore_cache:
375-
keys:
376-
- masks-workdir-v6-{{ .Branch }}-{{epoch}}
377-
- masks-workdir-v6-{{ .Branch }}-
378-
- masks-workdir-v6-master-
379-
- masks-workdir-v6-
380-
- run:
381-
name: Run regression tests on EPI masks
382-
no_output_timeout: 2h
383-
command: |
384-
mkdir -p /tmp/masks/{reports,workdir} && \
385-
docker run -ti -u $(id -u) -w /src/niworkflows \
386-
-v /tmp/templateflow:/templateflow \
387-
-v /tmp/data/epi-references:/data -v /tmp/masks/reports:/tmp/masks/reports \
388-
-e COVERAGE_FILE=/tmp/masks/reports/.coverage \
389-
-e TEMPLATEFLOW_HOME=/templateflow -e TEMPLATEFLOW_AUTOUPDATE=off \
390-
-e FMRIPREP_REGRESSION_SOURCE=/data \
391-
-e FMRIPREP_REGRESSION_REPORTS=/tmp/masks/reports \
392-
-e CACHED_WORK_DIRECTORY=/tmp/work -v /tmp/masks/workdir:/tmp/work \
393-
-v /tmp/fslicense/license.txt:/opt/freesurfer/license.txt:ro \
394-
niworkflows:latest \
395-
coverage run -p --rcfile=setup.cfg \
396-
-m pytest --junit-xml=/tmp/masks/reports/regression.xml \
397-
niworkflows/func/tests/
398-
- run:
399-
name: Clear reports folder & delete plot generator cache
400-
command: |
401-
pushd reports/
402-
tar cvfz fmriprep_bold_mask.tar.gz fmriprep_bold_mask/*/*.nii.gz
403-
rm -rf /tmp/masks/reports/fmriprep_bold_mask/
404-
popd
405-
find workdir/ -name "mask_diff_plot" -exec rm -rf {} +
406-
- store_artifacts:
407-
path: /tmp/masks/reports
408-
- store_test_results:
409-
path: /tmp/masks/reports
410-
- save_cache:
411-
key: masks-workdir-v6-{{ .Branch }}-{{ epoch }}
412-
paths:
413-
- /tmp/masks/workdir
414-
415-
- run:
416-
name: Coverage preparation
417-
command: |
418-
docker run -ti -u $(id -u) -w /tmp/masks/reports \
419-
-e COVERAGE_FILE=/tmp/masks/reports/.coverage \
420-
-v /tmp/masks/reports:/tmp/masks/reports \
421-
niworkflows:latest coverage combine
422-
docker run -ti -u $(id -u) -w /tmp/masks/reports \
423-
-e COVERAGE_FILE=/tmp/masks/reports/.coverage \
424-
-v /tmp/masks/reports:/tmp/masks/reports \
425-
niworkflows:latest coverage xml -o coverage.xml
426-
- run:
427-
name: Get codecov
428-
command: python -m pip install codecov
429-
- run:
430-
name: Submit masks test coverage
431-
working_directory: /tmp/src/niworkflows
432-
command: |
433-
cp /tmp/masks/reports/coverage.xml .
434-
sed -i "s+/src/niworkflows+/tmp/src/niworkflows+g" coverage.xml
435-
python -m codecov --file coverage.xml --flags masks -e CIRCLE_JOB
436-
437276
test_package:
438277
docker:
439278
- image: circleci/python:3.8.5
@@ -593,14 +432,6 @@ workflows:
593432
tags:
594433
only: /.*/
595434

596-
- test_masks:
597-
requires:
598-
- build
599-
- get_data
600-
filters:
601-
tags:
602-
ignore: /.*/
603-
604435
- deploy_pypi:
605436
requires:
606437
- test_pytest

0 commit comments

Comments
 (0)