Skip to content

Commit c293aab

Browse files
feat(CI): Keep only Python 3.{6,7} to CI and bump ZK versions to latests (#574)
* Switching to xenial distrib to make python 3.7 available * Testing against 3.5.5 instead of 3.5.4-beta and deploying new version for python 3.7 and zk 3.5.5 * Testing against zk 3.4.14 instead of 3.4.13 * Change pattern for slf4j-log4j lib * Since ZOOKEEPER-3156 it is now required to be authed to access ACLs * Drop support for ZK 3.3.x and Python 3.{4,5}
1 parent 961b2f3 commit c293aab

File tree

6 files changed

+42
-40
lines changed

6 files changed

+42
-40
lines changed

.travis.yml

Lines changed: 21 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
sudo: false
2+
dist: xenial
23
addons:
34
apt:
45
packages:
@@ -15,51 +16,37 @@ matrix:
1516
- python: '2.7'
1617
include:
1718
- python: '2.7'
18-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py27
19+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py27
1920
- python: '2.7'
20-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py27
21+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py27
2122
- python: '2.7'
22-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py27
23+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py27-gevent
2324
- python: '2.7'
24-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py27-gevent
25+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py27-gevent
2526
- python: '2.7'
26-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py27-gevent
27+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py27-eventlet
2728
- python: '2.7'
28-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py27-gevent
29-
- python: '2.7'
30-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py27-eventlet
31-
- python: '2.7'
32-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py27-eventlet
33-
- python: '2.7'
34-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py27-eventlet
35-
- python: '3.4'
36-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py34
37-
- python: '3.4'
38-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py34
39-
- python: '3.4'
40-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py34
41-
- python: '3.5'
42-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py35
43-
- python: '3.5'
44-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py35
45-
- python: '3.5'
46-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py35
29+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py27-eventlet
4730
- python: '3.6'
48-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=py36
31+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py36
4932
- python: '3.6'
50-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py36 DEPLOY=true
33+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py36-sasl
5134
- python: '3.6'
52-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=py36-sasl
35+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py36
5336
- python: '3.6'
54-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py36
55-
- python: '3.6'
56-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=py36-sasl
57-
- python: pypy
58-
env: ZOOKEEPER_VERSION=3.3.6 TOX_VENV=pypy
37+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py36-sasl
38+
- python: '3.7'
39+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py37
40+
- python: '3.7'
41+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=py37-sasl
42+
- python: '3.7'
43+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py37 DEPLOY=true
44+
- python: '3.7'
45+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=py37-sasl
5946
- python: pypy
60-
env: ZOOKEEPER_VERSION=3.4.13 TOX_VENV=pypy
47+
env: ZOOKEEPER_VERSION=3.4.14 TOX_VENV=pypy
6148
- python: 'pypy'
62-
env: ZOOKEEPER_VERSION=3.5.4-beta TOX_VENV=pypy
49+
env: ZOOKEEPER_VERSION=3.5.5 ZOOKEEPER_PREFIX="apache-" ZOOKEEPER_SUFFIX="-bin" ZOOKEEPER_LIB="lib" TOX_VENV=pypy
6350
notifications:
6451
email: false
6552
install:

ensure-zookeeper-env.sh

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,16 @@ HERE=`pwd`
66
ZOO_BASE_DIR="$HERE/zookeeper"
77
ZOOKEEPER_VERSION=${ZOOKEEPER_VERSION:-3.4.10}
88
ZOOKEEPER_PATH="$ZOO_BASE_DIR/$ZOOKEEPER_VERSION"
9+
ZOOKEEPER_PREFIX=${ZOOKEEPER_PREFIX}
10+
ZOOKEEPER_SUFFIX=${ZOOKEEPER_SUFFIX}
911
ZOO_MIRROR_URL="http://archive.apache.org/dist"
1012

1113

1214
function download_zookeeper(){
1315
mkdir -p $ZOO_BASE_DIR
1416
cd $ZOO_BASE_DIR
15-
curl --silent -C - $ZOO_MIRROR_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/zookeeper-$ZOOKEEPER_VERSION.tar.gz | tar -zx
16-
mv zookeeper-$ZOOKEEPER_VERSION $ZOOKEEPER_VERSION
17+
curl --silent -C - $ZOO_MIRROR_URL/zookeeper/zookeeper-$ZOOKEEPER_VERSION/${ZOOKEEPER_PREFIX}zookeeper-${ZOOKEEPER_VERSION}${ZOOKEEPER_SUFFIX}.tar.gz | tar -zx
18+
mv ${ZOOKEEPER_PREFIX}zookeeper-${ZOOKEEPER_VERSION}${ZOOKEEPER_SUFFIX} $ZOOKEEPER_VERSION
1719
chmod a+x $ZOOKEEPER_PATH/bin/zkServer.sh
1820
}
1921

@@ -24,7 +26,8 @@ else
2426
echo "Already downloaded zookeeper $ZOOKEEPER_VERSION to $ZOOKEEPER_PATH"
2527
fi
2628

27-
export ZOOKEEPER_PATH
29+
# Used as install_path when starting ZK
30+
export ZOOKEEPER_PATH="${ZOOKEEPER_PATH}/${ZOOKEEPER_LIB}"
2831
cd $HERE
2932

3033
# Yield execution to venv command

kazoo/testing/common.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ def classpath(self):
215215
"slf4j-api-*.jar")))
216216
jars.extend(glob(os.path.join(
217217
self.install_path,
218-
"slf4j-log4j-*.jar")))
218+
"slf4j-log4j*.jar")))
219219
else:
220220
# Development build (plain `ant`)
221221
jars = glob((os.path.join(

kazoo/tests/test_client.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -887,10 +887,13 @@ def test_create_delete(self):
887887

888888
def test_get_acls(self):
889889
from kazoo.security import make_digest_acl
890-
acl = make_digest_acl('user', 'pass', all=True)
890+
user = 'user'
891+
passw = 'pass'
892+
acl = make_digest_acl(user, passw, all=True)
891893
client = self.client
892894
try:
893895
client.create('/a', acl=[acl])
896+
client.add_auth('digest', '{}:{}'.format(user, passw))
894897
self.assertTrue(acl in client.get_acls('/a')[0])
895898
finally:
896899
client.delete('/a')
@@ -901,11 +904,14 @@ def test_get_acls_invalid_arguments(self):
901904

902905
def test_set_acls(self):
903906
from kazoo.security import make_digest_acl
904-
acl = make_digest_acl('user', 'pass', all=True)
907+
user = 'user'
908+
passw = 'pass'
909+
acl = make_digest_acl(user, passw, all=True)
905910
client = self.client
906911
client.create('/a')
907912
try:
908913
client.set_acls('/a', [acl])
914+
client.add_auth('digest', '{}:{}'.format(user, passw))
909915
self.assertTrue(acl in client.get_acls('/a')[0])
910916
finally:
911917
client.delete('/a')

setup.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
"Programming Language :: Python :: 3.4",
5959
"Programming Language :: Python :: 3.5",
6060
"Programming Language :: Python :: 3.6",
61+
"Programming Language :: Python :: 3.7",
6162
"Programming Language :: Python :: Implementation :: CPython",
6263
"Programming Language :: Python :: Implementation :: PyPy",
6364
"Topic :: Communications",

tox.ini

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ envlist =
1111
py35-sasl,
1212
py36,
1313
py36-{sasl,docs},
14+
py37,
15+
py37-{sasl,docs},
1416
pypy
1517

1618
[testenv:pep8]
@@ -22,6 +24,9 @@ install_command = pip install {opts} {packages}
2224
setenv =
2325
VIRTUAL_ENV={envdir}
2426
ZOOKEEPER_VERSION={env:ZOOKEEPER_VERSION:}
27+
ZOOKEEPER_PREFIX={env:ZOOKEEPER_PREFIX:}
28+
ZOOKEEPER_SUFFIX={env:ZOOKEEPER_SUFFIX:}
29+
ZOOKEEPER_LIB={env:ZOOKEEPER_LIB:}
2530
deps = -r{toxinidir}/requirements.txt
2631
docs: -r{toxinidir}/requirements_sphinx.txt
2732
gevent: -r{toxinidir}/requirements_gevent.txt

0 commit comments

Comments
 (0)