From ac88bc2dfb9bc2fb802cc6b1e3e2c0589d8d8e9f Mon Sep 17 00:00:00 2001
From: Mark Goddard <mark@stackhpc.com>
Date: Thu, 13 Feb 2020 14:36:28 +0000
Subject: [PATCH] CI: Redirect stderr to ansible logs

Currently Kayobe stderr is logged to the Zuul playbook output. This
change redirects stderr to the ansible log files.

Change-Id: Ia2f25a2e41859159275d418b57ab59bb97f58d6a
---
 playbooks/kayobe-overcloud-base/pre.yml         |  2 +-
 playbooks/kayobe-overcloud-base/run.yml         |  8 ++++----
 playbooks/kayobe-overcloud-upgrade-base/run.yml | 16 ++++++++--------
 playbooks/kayobe-seed-base/pre.yml              |  2 +-
 playbooks/kayobe-seed-base/run.yml              |  2 +-
 playbooks/kayobe-seed-upgrade-base/run.yml      |  6 +++---
 6 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/playbooks/kayobe-overcloud-base/pre.yml b/playbooks/kayobe-overcloud-base/pre.yml
index f6d09b8a1..d7d767602 100644
--- a/playbooks/kayobe-overcloud-base/pre.yml
+++ b/playbooks/kayobe-overcloud-base/pre.yml
@@ -22,7 +22,7 @@
 
     - name: Ensure kayobe is installed
       shell:
-        cmd: dev/install.sh > {{ logs_dir }}/ansible/install
+        cmd: dev/install.sh &> {{ logs_dir }}/ansible/install
         chdir: "{{ kayobe_src_dir }}"
 
     - name: Configure the firewall
diff --git a/playbooks/kayobe-overcloud-base/run.yml b/playbooks/kayobe-overcloud-base/run.yml
index 95d38f172..8e3e18db5 100644
--- a/playbooks/kayobe-overcloud-base/run.yml
+++ b/playbooks/kayobe-overcloud-base/run.yml
@@ -5,23 +5,23 @@
   tasks:
     - name: Ensure overcloud is deployed
       shell:
-        cmd: "{{ kayobe_src_dir }}/dev/overcloud-deploy.sh > {{ logs_dir }}/ansible/overcloud-deploy"
+        cmd: "{{ kayobe_src_dir }}/dev/overcloud-deploy.sh &> {{ logs_dir }}/ansible/overcloud-deploy"
 
     - name: Ensure test Tenks cluster is deployed
       shell:
         # Pass absolute source directory, since otherwise the `chdir` will
         # cause this to fail.
-        cmd: dev/tenks-deploy-compute.sh '{{ tenks_src_dir }}' > {{ logs_dir }}/ansible/tenks-deploy
+        cmd: dev/tenks-deploy-compute.sh '{{ tenks_src_dir }}' &> {{ logs_dir }}/ansible/tenks-deploy
         chdir: "{{ kayobe_src_dir }}"
 
     - name: Perform testing of the virtualized machines
       # We must do this before tenks-deploy as that will stop the nova_libvirt
       # container
       shell:
-        cmd: dev/overcloud-test-vm.sh > {{ logs_dir }}/ansible/overcloud-test-vm
+        cmd: dev/overcloud-test-vm.sh &> {{ logs_dir }}/ansible/overcloud-test-vm
         chdir: "{{ kayobe_src_dir }}"
 
     - name: Perform testing of the baremetal machines
       shell:
-        cmd: dev/overcloud-test-baremetal.sh > {{ logs_dir }}/ansible/overcloud-test-baremetal
+        cmd: dev/overcloud-test-baremetal.sh &> {{ logs_dir }}/ansible/overcloud-test-baremetal
         chdir: "{{ kayobe_src_dir }}"
diff --git a/playbooks/kayobe-overcloud-upgrade-base/run.yml b/playbooks/kayobe-overcloud-upgrade-base/run.yml
index 2c651fbda..7ba627245 100644
--- a/playbooks/kayobe-overcloud-upgrade-base/run.yml
+++ b/playbooks/kayobe-overcloud-upgrade-base/run.yml
@@ -8,7 +8,7 @@
     - block:
         - name: Ensure kayobe is installed
           shell:
-            cmd: dev/install.sh > {{ logs_dir }}/ansible/install-pre-upgrade
+            cmd: dev/install.sh &> {{ logs_dir }}/ansible/install-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
 
         - name: Configure the firewall
@@ -21,7 +21,7 @@
 
         - name: Ensure overcloud is deployed
           shell:
-            cmd: dev/overcloud-deploy.sh > {{ logs_dir }}/ansible/overcloud-deploy-pre-upgrade
+            cmd: dev/overcloud-deploy.sh &> {{ logs_dir }}/ansible/overcloud-deploy-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
 
         - name: Ensure test Tenks cluster is deployed
@@ -29,7 +29,7 @@
             # Pass absolute source directory, since otherwise the `chdir` will
             # cause this to fail. Don't use previous_kayobe_source_dir as
             # tenks-deploy-compute.sh does not exist there.
-            cmd: dev/tenks-deploy-compute.sh '{{ tenks_src_dir }}' > {{ logs_dir }}/ansible/tenks-deploy
+            cmd: dev/tenks-deploy-compute.sh '{{ tenks_src_dir }}' &> {{ logs_dir }}/ansible/tenks-deploy
             chdir: "{{ kayobe_src_dir }}"
 
       environment:
@@ -64,30 +64,30 @@
     - block:
         - name: Perform testing of the VMs in the overcloud prior to upgrade
           shell:
-            cmd: dev/overcloud-test-vm.sh > {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade
+            cmd: dev/overcloud-test-vm.sh &> {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
 
         - name: Perform testing of the baremetal machines in the overcloud prior to upgrade
           shell:
-            cmd: dev/overcloud-test-baremetal.sh > {{ logs_dir }}/ansible/overcloud-test-bm-pre-upgrade
+            cmd: dev/overcloud-test-baremetal.sh &> {{ logs_dir }}/ansible/overcloud-test-bm-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
 
         # Upgrade Kayobe, and use it to perform an upgrade of the control plane.
 
         - name: Ensure overcloud is upgraded
           shell:
-            cmd: "{{ kayobe_src_dir }}/dev/overcloud-upgrade.sh > {{ logs_dir }}/ansible/overcloud-upgrade"
+            cmd: "{{ kayobe_src_dir }}/dev/overcloud-upgrade.sh &> {{ logs_dir }}/ansible/overcloud-upgrade"
 
         # Perform a smoke test against the upgraded current release.
 
         - name: Perform testing of VMs in the upgraded overcloud
           shell:
-            cmd: dev/overcloud-test-vm.sh > {{ logs_dir }}/ansible/overcloud-test-vm-post-upgrade
+            cmd: dev/overcloud-test-vm.sh &> {{ logs_dir }}/ansible/overcloud-test-vm-post-upgrade
             chdir: "{{ kayobe_src_dir }}"
 
         - name: Perform testing of the baremetal machines in the upgraded overcloud
           shell:
-            cmd: dev/overcloud-test-baremetal.sh > {{ logs_dir }}/ansible/overcloud-test-bm-post-upgrade
+            cmd: dev/overcloud-test-baremetal.sh &> {{ logs_dir }}/ansible/overcloud-test-bm-post-upgrade
             chdir: "{{ kayobe_src_dir }}"
 
       environment:
diff --git a/playbooks/kayobe-seed-base/pre.yml b/playbooks/kayobe-seed-base/pre.yml
index 291fa90a3..2b38d9832 100644
--- a/playbooks/kayobe-seed-base/pre.yml
+++ b/playbooks/kayobe-seed-base/pre.yml
@@ -32,5 +32,5 @@
 
     - name: Ensure kayobe is installed
       shell:
-        cmd: dev/install.sh > {{ logs_dir }}/ansible/install
+        cmd: dev/install.sh &> {{ logs_dir }}/ansible/install
         chdir: "{{ kayobe_src_dir }}"
diff --git a/playbooks/kayobe-seed-base/run.yml b/playbooks/kayobe-seed-base/run.yml
index 49ad6e986..edd22215d 100644
--- a/playbooks/kayobe-seed-base/run.yml
+++ b/playbooks/kayobe-seed-base/run.yml
@@ -7,4 +7,4 @@
   tasks:
     - name: Ensure seed is deployed
       shell:
-        cmd: "{{ kayobe_src_dir }}/dev/seed-deploy.sh > {{ logs_dir }}/ansible/seed-deploy"
+        cmd: "{{ kayobe_src_dir }}/dev/seed-deploy.sh &> {{ logs_dir }}/ansible/seed-deploy"
diff --git a/playbooks/kayobe-seed-upgrade-base/run.yml b/playbooks/kayobe-seed-upgrade-base/run.yml
index be308188d..a2ce9f905 100644
--- a/playbooks/kayobe-seed-upgrade-base/run.yml
+++ b/playbooks/kayobe-seed-upgrade-base/run.yml
@@ -8,12 +8,12 @@
     - block:
         - name: Ensure kayobe is installed
           shell:
-            cmd: dev/install.sh > {{ logs_dir }}/ansible/install-pre-upgrade
+            cmd: dev/install.sh &> {{ logs_dir }}/ansible/install-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
 
         - name: Ensure seed is deployed
           shell:
-            cmd: dev/seed-deploy.sh > {{ logs_dir }}/ansible/seed-deploy-pre-upgrade
+            cmd: dev/seed-deploy.sh &> {{ logs_dir }}/ansible/seed-deploy-pre-upgrade
             chdir: "{{ previous_kayobe_src_dir }}"
       environment:
         KAYOBE_CONFIG_SOURCE_PATH: "{{ previous_kayobe_config_src_dir }}"
@@ -50,7 +50,7 @@
 
         - name: Ensure seed is upgraded
           shell:
-            cmd: "{{ kayobe_src_dir }}/dev/seed-upgrade.sh > {{ logs_dir }}/ansible/seed-upgrade"
+            cmd: "{{ kayobe_src_dir }}/dev/seed-upgrade.sh &> {{ logs_dir }}/ansible/seed-upgrade"
 
         # TODO(mgoddard): Perform a smoke test against the upgraded current release.
       environment: