Newer
Older
before_script:
# Create SSH configuration directory if necessary (also parents with -p, mode: read/write/exec):
- mkdir -p --mode=700 ~/.ssh/
# Add SSH key for jutil:
- echo "$ID_RSA_JUTIL_PRIVATE" > ~/.ssh/id_rsa_jutil
# Provide read access to owner (octal value code: 400) to jutil key and known_hosts with chmod:
- chmod 400 ~/.ssh/id_rsa_jutil
# Configure SSH to use ~/.ssh/jutil_key for iffgit.fz-juelich.de (-e allows \n):
- echo -e "Host iffgit.fz-juelich.de\n\tIdentityFile ~/.ssh/id_rsa_jutil\n" > ~/.ssh/config
# Add iffgit.fz-juelich.de to known_hosts (not the same key as Jutil!):
- echo iffgit.fz-juelich.de,134.94.161.83 "$ID_RSA_IFFGIT_PUBLIC" > ~/.ssh/known_hosts
# Provide read access to owner (octal value code: 400) to known_hosts with chmod:
- chmod 400 ~/.ssh/known_hosts
# Install necessary apps like git and mesa-utils (needed for GL):
# TODO: Check if this is still needed after removing mayavi!?
- apt-get update
- apt-get install -y curl bzip2 git mesa-utils
test_miniconda:
# Install requirements for pyramid:
- conda info --envs
- conda env create -q # -q: quiet/ no progressbar, because it spams the log!
- source activate pyramid
- conda info --envs
- conda uninstall mayavi vtk -y # TODO: necessary, because mayavi does not play nice with qt5!
- conda install pyqt=5 # TODO: This is needed for tests to run, but breaks mayavi (not used)!
# Install jutil via secure ssh connection:
- pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# Execute tests:
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
test_conda_ubuntu:
stage: test
image: ubuntu:16.04
script:
# Install miniconda:
- curl -O -L https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
- chmod +x Miniconda3-latest-Linux-x86_64.sh
- ./Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda3
- export PATH="/opt/miniconda3/bin:${PATH}"
# Install requirements for pyramid:
- conda info --envs
- conda env create -q # -q: quiet/ no progressbar, because it spams the log!
- source activate pyramid
- conda info --envs
- conda uninstall mayavi vtk -y # TODO: necessary, because mayavi does not play nice with qt5!
- conda install pyqt=5 # TODO: This is needed for tests to run, but breaks mayavi (not used)!
# Install jutil via secure ssh connection:
- pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# Execute tests:
- python setup.py test
test_pip_minimal:
stage: test
image: python:3.5
script:
# TODO: Different jobs with custom develop arguments? extra_requires (hyperspy, plotting)?
# TODO: Use pip install -e .[hyperspy], etc.
# Install requirements:
- pip install -e .['tests'] # TODO: other case with ['all']? After getting rid of mayavi...
# Install jutil via secure ssh connection:
- pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# Execute tests:
- python setup.py test
test_pip_requirements:
stage: test
image: python:3.5
script:
# Install requirements:
- pip install -r requirements.txt # TODO: mayavi/pyfftw commented out by hand to make work!
# Install jutil via secure ssh connection:
- pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# Execute tests:
- python setup.py test
# TODO: What about windows? Better have one test (miniconda?) for windows/max/linux, each!