image: $CONTAINER_TEST_IMAGE variables: CONTAINER_TEST_IMAGE: gitlab-registry.mpcdf.mpg.de/ift/nifty:$CI_BUILD_REF_NAME OMP_NUM_THREADS: 1 stages: - build_docker - test - release - demo_runs build_docker_from_scratch: only: - schedules image: docker:stable stage: build_docker script: - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab-registry.mpcdf.mpg.de - docker build -t $CONTAINER_TEST_IMAGE --no-cache . - docker push $CONTAINER_TEST_IMAGE build_docker_from_cache: except: - schedules image: docker:stable stage: build_docker script: - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN gitlab-registry.mpcdf.mpg.de - docker build -t $CONTAINER_TEST_IMAGE . - docker push $CONTAINER_TEST_IMAGE test_python2_with_coverage: stage: test script: - python setup.py install --user -f - mpiexec -n 2 --bind-to none nosetests -q 2> /dev/null - nosetests -q --with-coverage --cover-package=nifty5 --cover-erase - > coverage report --omit "*plotting*,*distributed_do*" - > coverage report --omit "*plotting*,*distributed_do*" | grep TOTAL | awk '{ print "TOTAL: "$4; }' test_python3: stage: test script: - python3 setup.py install --user -f - mpiexec -n 2 --bind-to none nosetests3 -q 2> /dev/null - nosetests3 -q pages: stage: release script: - python setup.py install --user -f - sh docs/generate.sh - mv docs/build/ public/ artifacts: paths: - public only: - NIFTy_4 before_script: - export MPLBACKEND="agg" run_critical_filtering: stage: demo_runs script: - ls - python setup.py install --user -f - python3 setup.py install --user -f - python demos/critical_filtering.py - python3 demos/critical_filtering.py artifacts: paths: - '*.png' run_nonlinear_critical_filter: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/nonlinear_critical_filter.py - python3 demos/nonlinear_critical_filter.py artifacts: paths: - '*.png' run_nonlinear_wiener_filter: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/nonlinear_wiener_filter.py - python3 demos/nonlinear_wiener_filter.py only: - run_demos artifacts: paths: - '*.png' # FIXME: disable for now. Fixing it is part of issue #244. #run_poisson_demo: # stage: demo_runs # script: # - python setup.py install --user -f # - python3 setup.py install --user -f # - python demos/poisson_demo.py # - python3 demos/poisson_demo.py # artifacts: # paths: # - '*.png' run_probing: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/probing.py - python3 demos/probing.py artifacts: paths: - '*.png' run_sampling: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/sampling.py - python3 demos/sampling.py artifacts: paths: - '*.png' run_tomography: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/tomography.py - python3 demos/tomography.py artifacts: paths: - '*.png' run_wiener_filter_data_space_noiseless: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/wiener_filter_data_space_noiseless.py - python3 demos/wiener_filter_data_space_noiseless.py artifacts: paths: - '*.png' run_wiener_filter_easy.py: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/wiener_filter_easy.py - python3 demos/wiener_filter_easy.py artifacts: paths: - '*.png' run_wiener_filter_via_curvature.py: stage: demo_runs script: - pip install --user numericalunits - pip3 install --user numericalunits - python setup.py install --user -f - python3 setup.py install --user -f - python demos/wiener_filter_via_curvature.py - python3 demos/wiener_filter_via_curvature.py artifacts: paths: - '*.png' run_wiener_filter_via_hamiltonian.py: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - python demos/wiener_filter_via_hamiltonian.py - python3 demos/wiener_filter_via_hamiltonian.py artifacts: paths: - '*.png' run_ipynb: stage: demo_runs script: - python setup.py install --user -f - python3 setup.py install --user -f - jupyter nbconvert --execute --ExecutePreprocessor.timeout=None demos/Wiener_Filter.ipynb artifacts: paths: - '*.png'