Skip to content

Commit dd2ade7

Browse files
authored
Merge pull request #2 from russkel/fix-ci
Fix CI build
2 parents 5348387 + 279ffe0 commit dd2ade7

3 files changed

Lines changed: 61 additions & 52 deletions

File tree

.travis.yml

Lines changed: 40 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,19 @@ matrix:
55
- os: linux
66
env: PYTHON=2.7
77
- os: linux
8-
env: PYTHON=3.5
8+
env: PYTHON=3.6
99
- os: linux
1010
env: CONDA=2.7
1111
- os: linux
12-
env: CONDA=3.6
12+
env: CONDA=3.7
1313
- os: osx
1414
env: PYTHON=2.7
1515
- os: osx
16-
env: PYTHON=3.6
16+
env: BREW=3.7
1717
- os: osx
1818
env: CONDA=2.7
1919
- os: osx
20-
env: CONDA=3.6
20+
env: CONDA=3.7
2121

2222
dist: trusty
2323

@@ -29,32 +29,43 @@ addons:
2929
- kubuntu-backports
3030
packages:
3131
- g++-4.8
32-
- python3.5
33-
- python3.5-dev
32+
- python3.6
33+
- python3.6-dev
3434
- cmake
3535

3636
before_install:
3737
- if [ "`uname`" != "Darwin" ] ; then export MOOS_CXX_FLAGS="-fPIC -Wno-long-long"; fi
3838
- if [ "`uname`" != "Darwin" ] ; then export CXX="g++-4.8"; fi
39-
- cd ..
40-
- git clone -b wOnlineCI --depth=1 https://github.com/msis/core-moos
41-
- cd core-moos
42-
- mkdir build
43-
- cd build
44-
- cmake -DENABLE_EXPORT=ON -DUSE_ASYNC_COMMS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=$MOOS_CXX_FLAGS ..
45-
- cmake --build . --config Release --config -j4
46-
- sudo cmake --build . --config Release --target install
47-
- cd $TRAVIS_BUILD_DIR
39+
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX=g++-4.8 CC=gcc-4.8; fi
40+
- |
41+
cd ..
42+
git clone --depth=1 https://github.com/themoos/core-moos
43+
cd core-moos
44+
mkdir build
45+
cd build
46+
cmake -DENABLE_EXPORT=ON -DUSE_ASYNC_COMMS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=$MOOS_CXX_FLAGS ..
47+
cmake --build . --config Release --config -j4
48+
sudo cmake --build . --config Release --target install
49+
cd $TRAVIS_BUILD_DIR
4850
- |
49-
if [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX=g++-4.8 CC=gcc-4.8; fi
5051
if [ -n "$PYTHON" ]; then
51-
if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "${PYTHON:0:1}" = "3" ]; then
52-
brew update; brew install python3;
53-
fi
54-
pip install --user --upgrade pip virtualenv
55-
virtualenv -p python$PYTHON venv
56-
source venv/bin/activate
57-
elif [ -n "$CONDA" ]; then
52+
export CI_PY=python$PYTHON
53+
54+
# this is required because ubuntu's python/pip is very broken
55+
curl --silent --show-error --retry 5 https://bootstrap.pypa.io/get-pip.py | sudo $CI_PY
56+
57+
$CI_PY -m pip install --user --upgrade virtualenv
58+
$CI_PY -m virtualenv -p python$PYTHON venv
59+
fi
60+
- |
61+
if [ -n "$BREW" ]; then
62+
brew update; brew install python; brew upgrade python
63+
64+
$(brew --prefix python)/bin/python$BREW -m pip install --user --upgrade virtualenv
65+
$(brew --prefix python)/bin/python$BREW -m virtualenv venv
66+
fi
67+
- |
68+
if [ -n "$CONDA" ]; then
5869
if [ "$TRAVIS_OS_NAME" = "linux" ]; then OS=Linux-x86_64; else OS=MacOSX-x86_64; fi
5970
wget -O miniconda.sh https://repo.continuum.io/miniconda/Miniconda${CONDA:0:1}-latest-$OS.sh
6071
bash miniconda.sh -b -p $HOME/miniconda
@@ -63,19 +74,22 @@ before_install:
6374
conda config --add channels conda-forge
6475
conda update -q conda
6576
conda install -q conda-build
66-
conda create -q -n test-environment python=$CONDA
67-
source activate test-environment
77+
conda create -q -n ci-build python=$CONDA
6878
fi
6979
7080
install:
7181
- |
72-
if [ -n "$PYTHON" ]; then
82+
if [ -n "$PYTHON" ] || [ -n "$BREW" ]; then
83+
source venv/bin/activate
84+
python --version && which python
7385
python setup.py sdist
7486
pip install --verbose dist/*.tar.gz
7587
elif [ -n "$CONDA" ]; then
88+
conda activate ci-build
7689
conda build conda.recipe
7790
conda install --use-local pymoos
7891
fi
7992
8093
script:
94+
- python --version && which python
8195
- python tests/test.py

conda.recipe/meta.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,12 @@ build:
1111
- CXX
1212

1313
source:
14-
git_url: ../
14+
path: ../
1515

1616
requirements:
1717
build:
1818
- python
1919
- setuptools
20-
- pybind11
2120
- cmake
2221

2322
run:

tests/test.py

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ def on_connect():
242242
def test_32_on_mail_callback(self):
243243
logger.debug(' on ')
244244
c = pymoos.comms()
245-
received_mail = False
245+
self.received_mail = False
246246

247247
def on_connect():
248248
logger.debug(' on ')
@@ -251,12 +251,11 @@ def on_connect():
251251

252252
def on_new_mail():
253253
logger.debug(' on ')
254-
nonlocal received_mail
255254
for msg in c.fetch():
256255
logger.debug(' one new mail ')
257256
self.assertTrue(msg.is_name('TEST_CALLBACK_ONMAIL_VAR'))
258257
self.assertEqual(msg.double(), 1)
259-
received_mail = True
258+
self.received_mail = True
260259
logger.debug(' mail processed ')
261260
return True
262261

@@ -268,22 +267,22 @@ def on_new_mail():
268267
time.sleep(1)
269268

270269
self.assertTrue(c.is_registered_for('TEST_CALLBACK_ONMAIL_VAR'))
271-
self.assertFalse(received_mail)
270+
self.assertFalse(self.received_mail)
272271
self.assertTrue(c.notify('TEST_CALLBACK_ONMAIL_VAR', 1, -1))
273272

274273
time.sleep(1)
275274

276-
self.assertTrue(received_mail)
275+
self.assertTrue(self.received_mail)
277276

278277
c.close(True)
279278

280279
def test_33_on_mail_active_queues(self):
281280
logger.debug(' on ')
282281
c = pymoos.comms()
283-
received_mail = False
284-
received_mail_q_v1 = False
285-
received_mail_q_v2 = False
286-
received_mail_q2_v = False
282+
self.received_mail = False
283+
self.received_mail_q_v1 = False
284+
self.received_mail_q_v2 = False
285+
self.received_mail_q2_v = False
287286

288287
def on_connect():
289288
logger.debug(' on ')
@@ -295,32 +294,29 @@ def on_connect():
295294

296295
def on_new_mail_aq():
297296
logger.debug(' on ')
298-
nonlocal received_mail
299297
for msg in c.fetch():
300298
logger.debug(' one new mail = ' + msg.key())
301299
# self.assertTrue(msg.is_name('TEST_ONMAIL_ACTIVE_Q'))
302300
# self.assertEqual(msg.double(), 1)
303-
received_mail = True
301+
self.received_mail = True
304302
logger.debug(' mail processed')
305303
return True
306304

307305
def queue1(msg):
308306
logger.debug(' on ')
309-
nonlocal received_mail_q_v1, received_mail_q_v2
310307
if msg.is_name('TEST_ONQUEUE_VAR1'):
311308
self.assertEqual(msg.double(), 2)
312-
received_mail_q_v1 = True
309+
self.received_mail_q_v1 = True
313310
elif msg.is_name('TEST_ONQUEUE_VAR2'):
314311
self.assertEqual(msg.double(), 3)
315-
received_mail_q_v2 = True
312+
self.received_mail_q_v2 = True
316313
return True
317314

318315
def queue2(msg):
319316
logger.debug(' on ')
320-
nonlocal received_mail_q2_v
321317
if msg.is_name('TEST_ONQUEUE2_VAR'):
322318
self.assertEqual(msg.double(), 4)
323-
received_mail_q2_v = True
319+
self.received_mail_q2_v = True
324320
return True
325321

326322

@@ -341,21 +337,21 @@ def queue2(msg):
341337
self.assertTrue(c.is_registered_for('TEST_ONQUEUE_VAR1'))
342338
self.assertTrue(c.is_registered_for('TEST_ONQUEUE_VAR2'))
343339
self.assertTrue(c.is_registered_for('TEST_ONQUEUE2_VAR'))
344-
self.assertFalse(received_mail)
345-
self.assertFalse(received_mail_q_v1)
346-
self.assertFalse(received_mail_q_v2)
347-
self.assertFalse(received_mail_q2_v)
340+
self.assertFalse(self.received_mail)
341+
self.assertFalse(self.received_mail_q_v1)
342+
self.assertFalse(self.received_mail_q_v2)
343+
self.assertFalse(self.received_mail_q2_v)
348344
self.assertTrue(c.notify('TEST_ONMAIL_ACTIVE_Q', 1))
349345
self.assertTrue(c.notify('TEST_ONQUEUE_VAR1', 2))
350346
self.assertTrue(c.notify('TEST_ONQUEUE_VAR2', 3))
351347
self.assertTrue(c.notify('TEST_ONQUEUE2_VAR', 4))
352348

353349
time.sleep(1)
354350

355-
self.assertTrue(received_mail)
356-
self.assertTrue(received_mail_q_v1)
357-
self.assertTrue(received_mail_q_v2)
358-
self.assertTrue(received_mail_q2_v)
351+
self.assertTrue(self.received_mail)
352+
self.assertTrue(self.received_mail_q_v1)
353+
self.assertTrue(self.received_mail_q_v2)
354+
self.assertTrue(self.received_mail_q2_v)
359355

360356
c.close(True)
361357

0 commit comments

Comments
 (0)