diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 13dbdf1997b4d7115d467b019b31712b08540e26..6267f4aff7cbc582045c6b1deb2d7998ace5ccfe 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,5 +1,5 @@ - repo: https://github.com/pre-commit/pre-commit-hooks - sha: v0.7.1 + sha: v0.9.3 hooks: - id: check-added-large-files - id: check-json @@ -9,11 +9,11 @@ - id: flake8 - id: check-symlinks - repo: https://github.com/adarnimrod/ansible-pre-commit.git - sha: v0.6.0 + sha: v0.7.0 hooks: - id: ansible-syntax-check - repo: https://github.com/willthames/ansible-lint - sha: v3.4.13 + sha: v3.4.15 hooks: - id: ansible-lint files: tests/playbook.yml diff --git a/.travis.yml b/.travis.yml index 294486a7ff22af0c429b27ead68efa72f2bb3c2c..64702735a3d5f51395a878d04b6b67318f623843 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,6 +22,7 @@ cache: - pip - directories: - $HOME/.pre-commit + - $HOME/.vagrant.d/boxes install: - sudo apt-get update diff --git a/docker-test/Dockerfile b/docker-test/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..f24aad935d20ca972b7136b821d7000343a711f1 --- /dev/null +++ b/docker-test/Dockerfile @@ -0,0 +1,3 @@ +FROM ubuntu:trusty +RUN apt-get update; apt-get install -y python-pip python-dev libssl-dev libffi-dev build-essential +RUN pip install --upgrade pip urllib3[secure] ndg-httpsclient pyasn1 pyopenssl diff --git a/docker-test/docker-test.bats b/docker-test/docker-test.bats new file mode 100644 index 0000000000000000000000000000000000000000..a21e35db207f86400e472b2f96b2bb9bfcc75275 --- /dev/null +++ b/docker-test/docker-test.bats @@ -0,0 +1,15 @@ +#!/usr/bin/env bats + +setup () { + docker build -t python27_tls_test ./ +} + +@test 'test sni' { + run docker run --entrypoint /bin/sh python27_tls_test -c "pip install nonexistant-package" + ! ( echo "$output" | grep -qi warning ) +} + +#@test 'test tls 1.2' { +# run docker run --entrypoint /usr/bin/python2 python27_tls_test -c "import urllib2, json; print(json.loads(urllib2.urlopen(urllib2.Request('https://www.howsmyssl.com/a/check')).read())['tls_version'])" +# echo "$output" | grep -qi 'TLS 1\.2' +#} diff --git a/meta/main.yml b/meta/main.yml index eb80f0d5e7f4119b362be77603450a6d6222b6ca..d3a00bc7e7028c045a7b4458d560cb0a262e5000 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -7,11 +7,11 @@ galaxy_info: platforms: - name: OpenBSD versions: - - 5.6 - - 5.7 - - 5.8 - - 5.9 - - 6.0 + - '5.6' + - '5.7' + - '5.8' + - '5.9' + - '6.0' - name: Ubuntu versions: - xenial diff --git a/tasks/main.yml b/tasks/main.yml index 2868fa68f991af25e589dba32cc781f0d9397a6c..7f7e890996d619580e3e2f0ee8d7cd228968f6d3 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,11 +1,17 @@ --- # tasks file for python27 +- name: Load meta vars + include_vars: + file: meta/main.yml + name: meta + - name: Assertions assert: that: - - ansible_os_family in ['OpenBSD', 'Debian'] - - ansible_distribution_release in ['xenial', 'trusty', 'precise', 'stretch', 'jessie', 'wheezy'] or ansible_distribution_version in ['6.0'] + - ansible_distribution in meta.galaxy_info.platforms|map(attribute='name') + - | + (meta.galaxy_info.platforms|selectattr('name', 'equalto', ansible_distribution)|first).versions|intersect([ansible_distribution_release, ansible_distribution_version])|length > 0 - python27_packages is iterable - name: APT install diff --git a/tests/requirements.txt b/tests/requirements.txt index d926e184daf74411839e4da335752ce756f84e23..1361b26d44a90352ec0160b571983c12ea0de190 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -1,7 +1,7 @@ -ansible==2.3.1.0 -testinfra==1.6.3 -molecule==1.25.0 -ansible-lint==3.4.13 +ansible==2.3.2.0 +testinfra==1.7.0 +molecule<2 +ansible-lint==3.4.15 python-vagrant==0.5.15 netaddr==0.7.19 passlib==1.7.1 diff --git a/tests/requirements.yml b/tests/requirements.yml index fccce7574df98d466c55a309273c4060174e8cb0..7e87c80fa4734d9384fe9e11aba2411a05cde486 100644 --- a/tests/requirements.yml +++ b/tests/requirements.yml @@ -5,3 +5,5 @@ name: debian-bootstrap - src: adarnimrod.users name: users +- src: adarnimrod.python27 + name: python27 diff --git a/tox.ini b/tox.ini index f3fbc64ce1991cd74a1ff7ef71c1783f5423456d..0959dbc7f1d9c4994daf5d91b22d2ba5b1c126a1 100644 --- a/tox.ini +++ b/tox.ini @@ -15,17 +15,17 @@ commands = [testenv:pre-commit] deps = - -rtests/requirements.txt + {[testenv]deps} pre-commit -passenv = HOME VBOX* ANSIBLE_* -whitelist_externals = - sh +passenv = {[testenv]passenv} +whitelist_externals = {[testenv]whitelist_externals} commands = sh -c "ansible-galaxy install git+file://$(pwd),$(git rev-parse --abbrev-ref HEAD) -p .molecule/roles" molecule dependency pre-commit run --all-files [testenv:import] -envdir = {toxinidir}/.tox/molecule -deps = -rtests/requirements.txt +envdir = {[testenv]envdir} +deps = {[testenv]deps} +passenv = {[testenv]passenv} commands = ansible-galaxy import -v