Browse Source

Merge pull request #205 from michaelpporter/master

Updates playbook to 2.5-2.7
Jared 6 years ago
parent
commit
12bb35f4ed

+ 5 - 5
docs/dynamic_checks.md

@@ -85,7 +85,7 @@ web.cmacr.ae
 test.cmacr.ae
 test.cmacr.ae
 ```
 ```
 Under these subdirectories, you can see [checks](https://docs.sensu.io/sensu-core/latest/reference/checks/) that relate to the directory they're placed in.
 Under these subdirectories, you can see [checks](https://docs.sensu.io/sensu-core/latest/reference/checks/) that relate to the directory they're placed in.
-For example, our `webservers` subdirectory includes a `check_nginx.sh` script, whilst the `rabbitmq_servers` subdirectory has one that most likely checks for RabbitMQ problems (it does... trust me).  
+For example, our `webservers` subdirectory includes a `check_nginx.sh` script, whilst the `rabbitmq_servers` subdirectory has one that most likely checks for RabbitMQ problems (it does... trust me).
 
 
 So how do these checks actually get deployed to their associated nodes?
 So how do these checks actually get deployed to their associated nodes?
 With this pair of plays, in the `tasks/plugins.yml` playbook:
 With this pair of plays, in the `tasks/plugins.yml` playbook:
@@ -103,8 +103,8 @@ With this pair of plays, in the `tasks/plugins.yml` playbook:
       owner: "{{ sensu_user_name }}"
       owner: "{{ sensu_user_name }}"
       group: "{{ sensu_group_name }}"
       group: "{{ sensu_group_name }}"
     when: "'{{ item }}' in sensu_available_checks.stdout_lines"
     when: "'{{ item }}' in sensu_available_checks.stdout_lines"
-    with_flattened:
-      - group_names
+    loop:
+      - group_names|flatten
     notify: restart sensu-client service
     notify: restart sensu-client service
 ```
 ```
 This will [register](https://docs.ansible.com/ansible/latest/user_guide/playbooks_conditionals.html#register-variables) a list of available checks, then deploy them to their intended groups based on node membership, as set within the Ansible inventory.
 This will [register](https://docs.ansible.com/ansible/latest/user_guide/playbooks_conditionals.html#register-variables) a list of available checks, then deploy them to their intended groups based on node membership, as set within the Ansible inventory.
@@ -129,8 +129,8 @@ These are deployed with the following pair of plays, also in the `tasks/plugins.
     owner: "{{ sensu_user_name }}"
     owner: "{{ sensu_user_name }}"
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
   when: "sensu_available_client_definitions is defined and item in sensu_available_client_definitions.stdout_lines"
   when: "sensu_available_client_definitions is defined and item in sensu_available_client_definitions.stdout_lines"
-  with_flattened:
-    - "{{ group_names }}"
+  loop:
+    - "{{ group_names|flatten }}"
   notify: restart sensu-client service
   notify: restart sensu-client service
 ```
 ```
 
 

+ 2 - 2
docs/dynamic_data.md

@@ -59,7 +59,7 @@ Next up is this little play (from the `tasks/ssl.yml` playbook):
       owner: "{{ sensu_user_name }}"
       owner: "{{ sensu_user_name }}"
       group: "{{ sensu_group_name }}"
       group: "{{ sensu_group_name }}"
       dest: "{{ sensu_config_path }}/ssl"
       dest: "{{ sensu_config_path }}/ssl"
-    with_items:
+    loop:
       - "{{ sensu_ssl_client_cert }}"
       - "{{ sensu_ssl_client_cert }}"
       - "{{ sensu_ssl_client_key }}"
       - "{{ sensu_ssl_client_key }}"
     notify: restart sensu-client service
     notify: restart sensu-client service
@@ -73,7 +73,7 @@ The same method is used for node communication with RabbitMQ:
     copy:
     copy:
 	  src: "{{ item }}"
 	  src: "{{ item }}"
 	  dest: "{{ rabbitmq_config_path }}/ssl"
 	  dest: "{{ rabbitmq_config_path }}/ssl"
-    with_items:
+    loop:
       - "{{ sensu_ssl_server_cacert }}"
       - "{{ sensu_ssl_server_cacert }}"
       - "{{ sensu_ssl_server_cert }}"
       - "{{ sensu_ssl_server_cert }}"
       - "{{ sensu_ssl_server_key }}"
       - "{{ sensu_ssl_server_key }}"

+ 7 - 7
molecule/shared/create.yml

@@ -12,7 +12,7 @@
         email: "{{ item.registry.credentials.email | default(omit) }}"
         email: "{{ item.registry.credentials.email | default(omit) }}"
         registry: "{{ item.registry.url }}"
         registry: "{{ item.registry.url }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
-      with_items: "{{ molecule_yml.platforms }}"
+      loop: "{{ molecule_yml.platforms }}"
       when:
       when:
         - item.registry is defined
         - item.registry is defined
         - item.registry.credentials is defined
         - item.registry.credentials is defined
@@ -22,14 +22,14 @@
       template:
       template:
         src: "{{ molecule_scenario_directory }}/Dockerfile.j2"
         src: "{{ molecule_scenario_directory }}/Dockerfile.j2"
         dest: "{{ molecule_ephemeral_directory }}/Dockerfile_{{ item.image | regex_replace('[^a-zA-Z0-9_]', '_') }}"
         dest: "{{ molecule_ephemeral_directory }}/Dockerfile_{{ item.image | regex_replace('[^a-zA-Z0-9_]', '_') }}"
-      with_items: "{{ molecule_yml.platforms }}"
+      loop: "{{ molecule_yml.platforms }}"
       register: platforms
       register: platforms
 
 
     - name: Discover local Docker images
     - name: Discover local Docker images
       docker_image_facts:
       docker_image_facts:
         name: "molecule_local/{{ item.item.name }}"
         name: "molecule_local/{{ item.item.name }}"
         docker_host: "{{ item.item.docker_host | default('unix://var/run/docker.sock') }}"
         docker_host: "{{ item.item.docker_host | default('unix://var/run/docker.sock') }}"
-      with_items: "{{ platforms.results }}"
+      loop: "{{ platforms.results }}"
       register: docker_images
       register: docker_images
 
 
     - name: Build an Ansible compatible image
     - name: Build an Ansible compatible image
@@ -39,7 +39,7 @@
         docker_host: "{{ item.item.docker_host | default('unix://var/run/docker.sock') }}"
         docker_host: "{{ item.item.docker_host | default('unix://var/run/docker.sock') }}"
         dockerfile: "{{ item.item.dockerfile | default(item.invocation.module_args.dest) }}"
         dockerfile: "{{ item.item.dockerfile | default(item.invocation.module_args.dest) }}"
         force: "{{ item.item.force | default(true) }}"
         force: "{{ item.item.force | default(true) }}"
-      with_items: "{{ platforms.results }}"
+      loop: "{{ platforms.results }}"
       when: platforms.changed or docker_images.results | map(attribute='images') | select('equalto', []) | list | count >= 0
       when: platforms.changed or docker_images.results | map(attribute='images') | select('equalto', []) | list | count >= 0
 
 
     - name: Create docker network(s)
     - name: Create docker network(s)
@@ -47,7 +47,7 @@
         name: "{{ item }}"
         name: "{{ item }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
         state: present
         state: present
-      with_items: "{{ molecule_yml.platforms | molecule_get_docker_networks }}"
+      loop: "{{ molecule_yml.platforms | molecule_get_docker_networks }}"
 
 
     - name: Create molecule instance(s)
     - name: Create molecule instance(s)
       docker_container:
       docker_container:
@@ -68,7 +68,7 @@
         networks: "{{ item.networks | default(omit) }}"
         networks: "{{ item.networks | default(omit) }}"
         dns_servers: "{{ item.dns_servers | default(omit) }}"
         dns_servers: "{{ item.dns_servers | default(omit) }}"
       register: server
       register: server
-      with_items: "{{ molecule_yml.platforms }}"
+      loop: "{{ molecule_yml.platforms }}"
       async: 7200
       async: 7200
       poll: 0
       poll: 0
 
 
@@ -78,4 +78,4 @@
       register: docker_jobs
       register: docker_jobs
       until: docker_jobs.finished
       until: docker_jobs.finished
       retries: 300
       retries: 300
-      with_items: "{{ server.results }}"
+      loop: "{{ server.results }}"

+ 3 - 3
molecule/shared/destroy.yml

@@ -12,7 +12,7 @@
         state: absent
         state: absent
         force_kill: "{{ item.force_kill | default(true) }}"
         force_kill: "{{ item.force_kill | default(true) }}"
       register: server
       register: server
-      with_items: "{{ molecule_yml.platforms }}"
+      loop: "{{ molecule_yml.platforms }}"
       async: 7200
       async: 7200
       poll: 0
       poll: 0
 
 
@@ -22,11 +22,11 @@
       register: docker_jobs
       register: docker_jobs
       until: docker_jobs.finished
       until: docker_jobs.finished
       retries: 300
       retries: 300
-      with_items: "{{ server.results }}"
+      loop: "{{ server.results }}"
 
 
     - name: Delete docker network(s)
     - name: Delete docker network(s)
       docker_network:
       docker_network:
         name: "{{ item }}"
         name: "{{ item }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
         docker_host: "{{ item.docker_host | default('unix://var/run/docker.sock') }}"
         state: absent
         state: absent
-      with_items: "{{ molecule_yml.platforms | molecule_get_docker_networks }}"
+      loop: "{{ molecule_yml.platforms | molecule_get_docker_networks }}"

+ 1 - 1
molecule/shared/playbook.yml

@@ -6,7 +6,7 @@
       add_host:
       add_host:
         name: "{{ item }}"
         name: "{{ item }}"
         groups: sensu_masters
         groups: sensu_masters
-      with_items: "{{ ansible_play_hosts }}"
+      loop: "{{ ansible_play_hosts }}"
       changed_when: false
       changed_when: false
 
 
     - name: Ensure container hostnames are correct
     - name: Ensure container hostnames are correct

+ 4 - 4
molecule/shared/verify.yml

@@ -30,7 +30,7 @@
       package:
       package:
         name: "{{ item }}"
         name: "{{ item }}"
         state: present
         state: present
-      with_items: "{{ inspec_package_deps }}"
+      loop: "{{ inspec_package_deps }}"
 
 
     - name: Download Inspec
     - name: Download Inspec
       get_url:
       get_url:
@@ -77,16 +77,16 @@
     - name: Execute Inspec tests
     - name: Execute Inspec tests
       command: "{{ inspec_bin }} exec {{ item }} --no-color --reporter progress"
       command: "{{ inspec_bin }} exec {{ item }} --no-color --reporter progress"
       register: test_results
       register: test_results
-      with_items: "{{ test_files.stdout_lines }}"
+      loop: "{{ test_files.stdout_lines }}"
       ignore_errors: true
       ignore_errors: true
 
 
     - name: Display details about the Inspec results
     - name: Display details about the Inspec results
       debug:
       debug:
         msg: "{{ item.stdout_lines }}"
         msg: "{{ item.stdout_lines }}"
-      with_items: "{{ test_results.results }}"
+      loop: "{{ test_results.results }}"
 
 
     - name: Fail when tests fail
     - name: Fail when tests fail
       fail:
       fail:
         msg: "Inspec failed to validate"
         msg: "Inspec failed to validate"
       when: item.rc != 0
       when: item.rc != 0
-      with_items: "{{ test_results.results }}"
+      loop: "{{ test_results.results }}"

+ 1 - 1
tasks/Amazon/rabbit.yml

@@ -42,7 +42,7 @@
   args:
   args:
     warn: false
     warn: false
   when: sensu_rabbitmq_import_key.changed
   when: sensu_rabbitmq_import_key.changed
-  with_items:
+  loop:
     - rabbitmq
     - rabbitmq
     - rabbitmq-erlang
     - rabbitmq-erlang
 
 

+ 1 - 1
tasks/CentOS/rabbit.yml

@@ -42,7 +42,7 @@
   args:
   args:
     warn: false
     warn: false
   when: sensu_rabbitmq_import_key.changed
   when: sensu_rabbitmq_import_key.changed
-  with_items:
+  loop:
     - rabbitmq
     - rabbitmq
     - rabbitmq-erlang
     - rabbitmq-erlang
 
 

+ 1 - 1
tasks/Fedora/rabbit.yml

@@ -42,7 +42,7 @@
   args:
   args:
     warn: false
     warn: false
   when: sensu_rabbitmq_import_key.changed
   when: sensu_rabbitmq_import_key.changed
-  with_items:
+  loop:
     - rabbitmq
     - rabbitmq
     - rabbitmq-erlang
     - rabbitmq-erlang
 
 

+ 3 - 3
tasks/FreeBSD/dashboard.yml

@@ -12,7 +12,7 @@
   pkgng:
   pkgng:
     name: "{{ item }}"
     name: "{{ item }}"
     state: present
     state: present
-  with_items:
+  loop:
     - go
     - go
     - git
     - git
     - npm
     - npm
@@ -34,7 +34,7 @@
     owner: "{{ sensu_user_name }}"
     owner: "{{ sensu_user_name }}"
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - etc
     - etc
     - go
     - go
 
 
@@ -46,7 +46,7 @@
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     state: directory
     state: directory
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - bin
     - bin
     - pkg
     - pkg
     - src
     - src

+ 1 - 1
tasks/FreeBSD/main.yml

@@ -42,7 +42,7 @@
   pkgng:
   pkgng:
     name: "{{ item }}"
     name: "{{ item }}"
     state: present
     state: present
-  with_items:
+  loop:
     - bash
     - bash
     - ca_root_nss
     - ca_root_nss
 
 

+ 3 - 3
tasks/OpenBSD/dashboard.yml

@@ -12,7 +12,7 @@
   openbsd_pkg:
   openbsd_pkg:
     name: "{{ item }}"
     name: "{{ item }}"
     state: present
     state: present
-  with_items:
+  loop:
     - go
     - go
     - git
     - git
     - npm
     - npm
@@ -34,7 +34,7 @@
     owner: "{{ sensu_user_name }}"
     owner: "{{ sensu_user_name }}"
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - etc
     - etc
     - go
     - go
 
 
@@ -46,7 +46,7 @@
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     state: directory
     state: directory
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - bin
     - bin
     - pkg
     - pkg
     - src
     - src

+ 1 - 1
tasks/OpenBSD/main.yml

@@ -26,7 +26,7 @@
   openbsd_pkg:
   openbsd_pkg:
     name: "{{ item }}"
     name: "{{ item }}"
     state: present
     state: present
-  with_items:
+  loop:
     - bash
     - bash
     - ruby%2.3
     - ruby%2.3
 
 

+ 2 - 2
tasks/SmartOS/dashboard.yml

@@ -28,7 +28,7 @@
     owner: "{{ sensu_user_name }}"
     owner: "{{ sensu_user_name }}"
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - etc
     - etc
     - go
     - go
 
 
@@ -40,7 +40,7 @@
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     state: directory
     state: directory
     recurse: true
     recurse: true
-  with_items:
+  loop:
     - bin
     - bin
     - pkg
     - pkg
     - src
     - src

+ 14 - 9
tasks/plugins.yml

@@ -13,9 +13,12 @@
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
 
 
 - name: Ensure local directories exist
 - name: Ensure local directories exist
-  local_action: file state=directory dest="{{ static_data_store }}/sensu/{{ item }}"
+  file:
+    state: directory
+    dest: "{{ static_data_store }}/sensu/{{ item }}"
+  delegate_to: localhost
   become: no
   become: no
-  with_items:
+  loop:
     - checks
     - checks
     - filters
     - filters
     - handlers
     - handlers
@@ -25,12 +28,13 @@
 
 
 - name: Ensure any remote plugins defined are present
 - name: Ensure any remote plugins defined are present
   shell: umask 0022; sensu-install -p {{ item }}
   shell: umask 0022; sensu-install -p {{ item }}
-  with_items: "{{ sensu_remote_plugins }}"
+  loop: "{{ sensu_remote_plugins }}"
   changed_when: false
   changed_when: false
   when: sensu_remote_plugins | length > 0
   when: sensu_remote_plugins | length > 0
 
 
 - name: Register available checks
 - name: Register available checks
-  local_action: command ls {{ static_data_store }}/sensu/checks
+  command: "ls {{ static_data_store }}/sensu/checks"
+  delegate_to: localhost
   register: sensu_available_checks
   register: sensu_available_checks
   changed_when: false
   changed_when: false
   become: false
   become: false
@@ -46,8 +50,8 @@
     - sensu_available_checks is defined
     - sensu_available_checks is defined
     - sensu_available_checks is not skipped
     - sensu_available_checks is not skipped
     - item in sensu_available_checks.stdout_lines
     - item in sensu_available_checks.stdout_lines
-  with_flattened:
-    - "{{ group_names }}"
+  loop:
+    - "{{ group_names|flatten }}"
   notify: restart sensu-client service
   notify: restart sensu-client service
 
 
 - name: Deploy handler plugins
 - name: Deploy handler plugins
@@ -92,7 +96,8 @@
     - restart sensu-enterprise service
     - restart sensu-enterprise service
 
 
 - name: Register available client definitions
 - name: Register available client definitions
-  local_action: command ls {{ static_data_store }}/sensu/client_definitions
+  command: "ls {{ static_data_store }}/sensu/client_definitions"
+  delegate_to: localhost
   register: sensu_available_client_definitions
   register: sensu_available_client_definitions
   changed_when: false
   changed_when: false
   become: false
   become: false
@@ -107,6 +112,6 @@
     - sensu_available_client_definitions is defined
     - sensu_available_client_definitions is defined
     - sensu_available_checks is not skipped
     - sensu_available_checks is not skipped
     - item in sensu_available_client_definitions.stdout_lines
     - item in sensu_available_client_definitions.stdout_lines
-  with_flattened:
-    - "{{ group_names }}"
+  loop:
+    - "{{ group_names|flatten }}"
   notify: restart sensu-client service
   notify: restart sensu-client service

+ 1 - 1
tasks/rabbit.yml

@@ -21,7 +21,7 @@
     src: "{{ item.src }}"
     src: "{{ item.src }}"
     dest: "{{ rabbitmq_config_path }}/ssl/{{ item.dest }}"
     dest: "{{ rabbitmq_config_path }}/ssl/{{ item.dest }}"
     remote_src: "{{ sensu_ssl_deploy_remote_src }}"
     remote_src: "{{ sensu_ssl_deploy_remote_src }}"
-  with_items:
+  loop:
     - { src: "{{ sensu_ssl_server_cacert }}", dest: cacert.pem }
     - { src: "{{ sensu_ssl_server_cacert }}", dest: cacert.pem }
     - { src: "{{ sensu_ssl_server_cert }}", dest: cert.pem }
     - { src: "{{ sensu_ssl_server_cert }}", dest: cert.pem }
     - { src: "{{ sensu_ssl_server_key }}", dest: key.pem }
     - { src: "{{ sensu_ssl_server_key }}", dest: key.pem }

+ 1 - 1
tasks/ssl.yml

@@ -24,7 +24,7 @@
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
     dest: "{{ sensu_config_path }}/ssl/{{ item.dest }}"
     dest: "{{ sensu_config_path }}/ssl/{{ item.dest }}"
     mode: " {{ item.perm }}"
     mode: " {{ item.perm }}"
-  with_items:
+  loop:
     - {src: "{{ sensu_ssl_client_cert }}", dest: cert.pem, perm: "0640" }
     - {src: "{{ sensu_ssl_client_cert }}", dest: cert.pem, perm: "0640" }
     - {src: "{{ sensu_ssl_client_key }}", dest: key.pem, perm: "0640" }
     - {src: "{{ sensu_ssl_client_key }}", dest: key.pem, perm: "0640" }
   notify: restart sensu-client service
   notify: restart sensu-client service

+ 2 - 2
tasks/ssl_generate.yml

@@ -18,7 +18,7 @@
     owner: "{{ sensu_user_name }}"
     owner: "{{ sensu_user_name }}"
     group: "{{ sensu_group_name }}"
     group: "{{ sensu_group_name }}"
   when: sensu_master
   when: sensu_master
-  with_items:
+  loop:
     - ssl_generation
     - ssl_generation
     - ssl_generation/sensu_ssl_tool
     - ssl_generation/sensu_ssl_tool
     - ssl_generation/sensu_ssl_tool/client
     - ssl_generation/sensu_ssl_tool/client
@@ -121,7 +121,7 @@
     src: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/{{ item }}"
     src: "{{ sensu_config_path }}/ssl_generation/sensu_ssl_tool/{{ item }}"
     dest: "{{ dynamic_data_store }}"
     dest: "{{ dynamic_data_store }}"
   when: sensu_master
   when: sensu_master
-  with_items:
+  loop:
     - sensu_ca/cacert.pem
     - sensu_ca/cacert.pem
     - server/cert.pem
     - server/cert.pem
     - server/key.pem
     - server/key.pem