123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- # On a virtualenv is used for testing. The effective virtual env
- # is available under ~/VENV.
- #
- # All workers support remote login. Login details are shown at the top of each
- # CI run log.
- #
- # - Linux workers (via SSH):
- #
- # - A permitted SSH key must be defined in an APPVEYOR_SSH_KEY environment
- # variable (via the appveyor project settings)
- #
- # - SSH login info is given in the form of: 'appveyor@67.225.164.xx -p 22xxx'
- #
- # - Login with:
- #
- # ssh -o StrictHostKeyChecking=no <LOGIN>
- #
- # - to prevent the CI run from exiting, `touch` a file named `BLOCK` in the
- # user HOME directory (current directory directly after login). The session
- # will run until the file is removed (or 60 min have passed)
- # do not make repository clone cheap: interfers with versioneer
- shallow_clone: false
- environment:
- DTS: datalad_next
- APPVEYOR_BUILD_WORKER_IMAGE: Ubuntu2004
- INSTALL_SYSPKGS: graphicsmagick-imagemagick-compat moreutils jq uidmap
- # go with whatever is most recent to catch anything that might break
- # with them
- INSTALL_GITANNEX: git-annex -m snapshot
- skip_commits:
- files:
- - changelog.d/
- # it is OK to specify paths that may not exist for a particular test run
- cache:
- # pip cache
- - /home/appveyor/.cache/pip -> .appveyor.yml
- # turn of support for MS project build support (not needed)
- build: off
- install:
- - tools/appveyor/enable-ssh-login
- - tools/setup-git-identity
- - tools/bootstrap-handbook-user
- # Missing system software
- - tools/appveyor/install-syspkgs $INSTALL_SYSPKGS
- # pull latest singularity
- - tools/appveyor/install-singularity.sh
- # in case of a snapshot installation, use the following approach to adjust
- # If a particular Python version is requested, use env setup (using the
- # appveyor provided environments/installation). Note, these are broken
- # on the ubuntu images
- # https://help.appveyor.com/discussions/problems/28217-appveyor-ubunu-image-with-python3-lzma-module
- # Otherwise create a virtualenv using the default Python 3, to enable uniform
- # use of python/pip executables below
- - "[ \"x$PY\" != x ] && . ${HOME}/venv${PY}/bin/activate || virtualenv -p 3 ${HOME}/dlvenv && . ${HOME}/dlvenv/bin/activate; ln -s \"$VIRTUAL_ENV\" \"${HOME}/VENV\""
- - chronic tools/appveyor/install-git-annex ${INSTALL_GITANNEX}
- # enable the git-annex provisioned by the installer
- - "[ -f ${HOME}/dlinstaller_env.sh ] && . ${HOME}/dlinstaller_env.sh || true"
- build_script:
- - chronic python -m pip install -r requirements.txt
- - chronic python -m pip install -r requirements-devel.txt
- - chronic python -m pip install .
- # pull all submodules
- - chronic datalad get . -r -n
- before_test:
- # simple call to see if datalad and git-annex are installed properly
- - datalad wtf
- test_script:
- # Wipe out runrecords to trigger rebuild
- - rm -rf docs/basics/_examples
- - rm -rf docs/beyond_basics/_examples
- - make build
- on_success:
- - tools/appveyor/provision-runrecord-diff runrecord_diff.txt
- artifacts:
- - path: runrecord_diff.txt
- name: runrecord updates from rebuilding code snippets
- type: File
- on_finish:
- # conditionally block the exit of a CI run for direct debugging
- - while [ -f ~/BLOCK ]; do sleep 5; done
|