diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..70ee29cf5 --- /dev/null +++ b/Makefile @@ -0,0 +1,5 @@ +mitogen: + ansible-playbook -c local mitogen.yaml -vv +clean: + rm -rf dist/ + rm *.retry diff --git a/ansible.cfg b/ansible.cfg index 6912e4d08..bed2c4ae7 100644 --- a/ansible.cfg +++ b/ansible.cfg @@ -3,6 +3,8 @@ pipelining=True ssh_args = -o ControlMaster=auto -o ControlPersist=30m -o ConnectionAttempts=100 -o UserKnownHostsFile=/dev/null #control_path = ~/.ssh/ansible-%%r@%%h:%%p [defaults] +strategy_plugins = plugins/mitogen/ansible_mitogen/plugins/strategy + host_key_checking=False gathering = smart fact_caching = jsonfile diff --git a/mitogen.yaml b/mitogen.yaml new file mode 100644 index 000000000..5cae114ff --- /dev/null +++ b/mitogen.yaml @@ -0,0 +1,30 @@ +- hosts: localhost + strategy: linear + vars: + mitogen_version: master + mitogen_url: https://github.com/dw/mitogen/archive/{{mitogen_version}}.zip + tasks: + - name: Create mitogen plugin dir + file: + path: "{{item}}" + state: directory + become: false + loop: + - "{{playbook_dir}}/plugins/mitogen" + - "{{playbook_dir}}/dist" + + - name: download mitogen release + get_url: + url: "{{mitogen_url}}" + dest: "{{playbook_dir}}/dist/mitogen_{{mitogen_version}}.zip" + validate_certs: true + + - name: extract zip + unarchive: + src: "{{playbook_dir}}/dist/mitogen_{{mitogen_version}}.zip" + dest: "{{playbook_dir}}/dist/" + + - name: copy plugin + synchronize: + src: "{{playbook_dir}}/dist/mitogen-{{mitogen_version}}/" + dest: "{{playbook_dir}}/plugins/mitogen"