Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
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
#image: "continuumio/miniconda3"
#
#before_script:
# # Check and print Python version
# - python --version
# # 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
#
#stages:
# - test
#
#test_pip_minimal:
# stage: test
# script:
# # TODO: Different jobs with custom develop arguments? extra_requires (hyperspy, plotting)?
# # TODO: Use pip install -e .[hyperspy], etc.
# # Install requirements:
## # - pip install -r requirements.txt # TODO: DOES NOT WORK (because mayavi and stuff...)
# - pip install -e .['tests']
# # Install jutil via secure ssh connection:
# - pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# # Execute tests:
# - python setup.py test
# # Create coverage report:
# - coverage html
# artifacts:
# paths:
# - htmlcov/
#
#test_pip_full:
# stage: test
# script:
# # Install requirements:
# - pip install -e .['all']
# # 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
# script:
# - pip install numpy # Needed for mayavi...
# # Install requirements:
# - pip install -r requirements.txt # TODO: DOES NOT WORK (because mayavi and stuff...)
# # 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_conda:
# stage: test
# script:
# # Install requirements:
# - conda info --envs
# - conda env create -q # -q: quiet/ no progressbar, because it spams the log!
# - source activate pyramid
# - conda info --envs
# # Install jutil via secure ssh connection:
# - pip install git+ssh://gitlab@iffgit.fz-juelich.de/unger/jutil.git
# # Execute tests:
# - python setup.py test
#
stages:
- test
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
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
test_conda_ubuntu:
stage: test
image: ubuntu:16.04
script:
# Install necessary apps like git and mesa-utils (needed for GL):
- apt-get update
- apt-get install -y curl bzip2 git mesa-utils
# 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_miniconda:
stage: test
# Install necessary apps like git and mesa-utils (needed for GL):
- apt-get update
- apt-get install -y curl bzip2 git mesa-utils
# 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