diff --git a/docs/about.rst b/docs/about.rst index 81976f0d1aeebe8cae7cb6718b02a9b9ce66409c..00d9af33a077f6243c7e834d35c0bc9cea042762 100644 --- a/docs/about.rst +++ b/docs/about.rst @@ -16,18 +16,7 @@ Roles are mainly written for use with *Debian 8 Jessie*, although some support compatibility in :ref:`rolereference`. At the moment, the roles have been written for and tested against **Ansible -1.9.x**. - -Roles should work for the most part with **Ansible 2.0.x** and **Ansible -2.1.x**, but due to bugs in those releases they should not be used for -production purposes. Roles are kept forward-compatible as much as possible until -a couple of breaking bugs get fixed in **Ansible 2.x** series. The main blockers -are: - -* Inability to use dynamic name handlers (handlers that include variables in - their name). -* Referencing non-existing handlers does not produce error. -* Referencing non-existing tags does not produce error. +2.3.x**. The role also utilises the ``dig`` lookup plugin which requires ``dnspython`` package to be installed. Make sure you have the package available on controller diff --git a/docs/index.rst b/docs/index.rst index ecb29df2fd0921babfd014a47db5912d29af5f3b..773358ba296cb853b8fc008b28bfc4aef2b6bec8 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -16,18 +16,7 @@ Roles are mainly written for use with *Debian 8 Jessie*, although some support compatibility in :ref:`rolereference`. At the moment, the roles have been written for and tested against **Ansible -1.9.x**. - -Roles should work for the most part with **Ansible 2.0.x** and **Ansible -2.1.x**, but due to bugs in those releases they should not be used for -production purposes. Roles are kept forward-compatible as much as possible until -a couple of breaking bugs get fixed in **Ansible 2.x** series. The main blockers -are: - -* Inability to use dynamic name handlers (handlers that include variables in - their name). -* Referencing non-existing handlers does not produce error. -* Referencing non-existing tags does not produce error. +2.3.x**. The role also utilises the ``dig`` lookup plugin which requires ``dnspython`` package to be installed. Make sure you have the package available on controller diff --git a/docs/usage.rst b/docs/usage.rst index 6d8e323943659fe5bc66051b8b27361935ab8922..0fdb27c49d26007926d490ca13f9880fb7ec0502 100644 --- a/docs/usage.rst +++ b/docs/usage.rst @@ -129,7 +129,7 @@ packages, and to prepare the environment a bit on the Ansible server: mkdir ~/mysite/ mkvirtualenv -a ~/mysite/ mysite pip install -U pip setuptools - pip install 'ansible~=1.9.0' dnspython + pip install 'ansible~=2.3.0' dnspython .. warning:: The ``dnspython`` package is important since it is used internally via diff --git a/requirements.in b/requirements.in index 6415d419b346ea7aaae80d289e4d76f9e3951047..a51f44b6211bd71fe4c14d924b79f1f98d736f94 100644 --- a/requirements.in +++ b/requirements.in @@ -1,6 +1,6 @@ -ansible~=1.9.0 +ansible~=2.3.0 dnspython -molecule~=1.18.0 +molecule~=1.25.0 paramiko pip-tools python-vagrant \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 92b425b53996a265f770259def0d18baa272ccd8..ac3c8dafe0f667fb5df344c62fbde1a8bd28d28c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,49 +4,49 @@ # # pip-compile --output-file requirements.txt requirements.in # -ansible-lint==3.4.8 # via molecule -ansible==1.9.6 +ansible-lint==3.4.12 # via molecule +ansible==2.3.2.0 anyconfig==0.7.0 # via molecule arrow==0.10.0 # via jinja2-time asn1crypto==0.22.0 # via cryptography binaryornot==0.4.4 # via cookiecutter cffi==1.10.0 # via cryptography chardet==3.0.4 # via binaryornot -click==6.7 # via cookiecutter, pip-tools +click==6.7 # via cookiecutter, molecule, pip-tools colorama==0.3.7 # via molecule configparser==3.5.0 # via flake8 -cookiecutter==1.4.0 # via molecule +cookiecutter==1.5.1 # via molecule cryptography==2.0.3 # via paramiko dnspython==1.15.0 enum34==1.1.6 # via cryptography, flake8 first==2.0.1 # via pip-tools -flake8==3.0.4 # via molecule +flake8==3.3.0 # via molecule future==0.16.0 # via cookiecutter idna==2.6 # via cryptography ipaddress==1.0.18 # via cryptography jinja2-time==0.2.0 # via cookiecutter -jinja2==2.8 # via ansible, cookiecutter, jinja2-time, molecule +jinja2==2.9.6 # via ansible, cookiecutter, jinja2-time, molecule markupsafe==1.0 # via jinja2 -mccabe==0.5.3 # via flake8 -molecule==1.18.1 -paramiko==2.0.2 -pbr==1.10.0 # via molecule +mccabe==0.6.1 # via flake8 +molecule==1.25.0 +paramiko==2.1.2 +pbr==2.1.0 # via molecule pexpect==4.2.1 # via molecule pip-tools==1.9.0 poyo==0.4.1 # via cookiecutter ptyprocess==0.5.2 # via pexpect py==1.4.34 # via pytest pyasn1==0.3.2 # via paramiko -pycodestyle==2.0.0 # via flake8 +pycodestyle==2.3.1 # via flake8 pycparser==2.18 # via cffi pycrypto==2.6.1 # via ansible -pyflakes==1.2.3 # via flake8 +pyflakes==1.5.0 # via flake8 pytest==3.2.1 # via testinfra python-dateutil==2.6.1 # via arrow python-vagrant==0.5.15 pyyaml==3.12 # via ansible, ansible-lint, molecule -sh==1.11 # via molecule +sh==1.12.13 # via molecule six==1.10.0 # via ansible-lint, cryptography, pip-tools, python-dateutil, testinfra -tabulate==0.7.5 # via molecule -testinfra==1.4.5 # via molecule +tabulate==0.7.7 # via molecule +testinfra==1.5.5 # via molecule whichcraft==0.4.1 # via cookiecutter diff --git a/testsite/ansible.cfg b/testsite/ansible.cfg index 9e062508d96eba6f1ee679be93b4d2bc9bb30d7f..11e3971d6a0078e16ec6cb943b9695a6f2013219 100644 --- a/testsite/ansible.cfg +++ b/testsite/ansible.cfg @@ -2,4 +2,7 @@ roles_path=../roles force_handlers = True -retry_files_save_path = ./retry \ No newline at end of file +retry_files_save_path = ./retry + +[ssh_connection] +pipelining = True \ No newline at end of file diff --git a/testsite/playbooks/tls.yml b/testsite/playbooks/tls.yml index 32673af11ef3ca58dc1e44a00f4e2b5df241f25c..27b866cc040e11b4eb5560c7bc6bbc6e851fb3db 100644 --- a/testsite/playbooks/tls.yml +++ b/testsite/playbooks/tls.yml @@ -30,7 +30,7 @@ tasks: - name: Create GnuTLS certificate templates for all hosts template: src="../tls/gnutls_server_certificate.cfg.j2" dest="../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.cfg" - with_items: host_tls_info + with_items: "{{ host_tls_info }}" - name: Create the CA key command: certtool --sec-param high --generate-privkey --outfile ../tls/ca.key args: @@ -41,7 +41,7 @@ creates: ../tls/ca.pem - name: Create private keys for all hosts command: certtool --sec-param normal --generate-privkey --outfile "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.key" - with_items: host_tls_info + with_items: "{{ host_tls_info }}" args: creates: "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.key" - name: Issue certificates for all hosts @@ -50,6 +50,6 @@ --template "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.cfg" --load-privkey "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.key" --outfile "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.pem" - with_items: host_tls_info + with_items: "{{ host_tls_info }}" args: - creates: "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.pem" \ No newline at end of file + creates: "../tls/{{ item.hostname }}.{{ testsite_domain }}_{{ item.service }}.pem"