From 8b3f0d085712154d580e4a464ca7e88e612f2fb2 Mon Sep 17 00:00:00 2001
From: SamYaple <sam@yaple.net>
Date: Sun, 13 Mar 2016 22:47:35 +0000
Subject: [PATCH] Use ubuntu Mitaka repo

The rabbitmq-server package is upgraded to 3.5.7 in cloud-archive
so we update centos to match

The xen-utils package now needs an explict version, xen-utils-4.6 is
what is provided by cloud-archive mitaka

Libvirt 1.3 is in the ubuntu cloud-archive. This has a new daemon for
logging that needs further implementation in newton. For now, it has
been disabled within the qemu.conf

Co-Authored-By: Jeffrey Zhang <jeffrey.zhang@99cloud.net>
TrivialFix
Change-Id: I84217824817c484b6800a64cbd7767b127a3098e
---
 .../rabbitmq/templates/rabbitmq-env.conf.j2   |  6 ++----
 docker/base/sources.list                      |  2 +-
 docker/nova/nova-libvirt/Dockerfile.j2        |  5 +++--
 docker/rabbitmq/Dockerfile.j2                 | 19 +++++++++----------
 tools/setup_gate.sh                           |  2 +-
 5 files changed, 16 insertions(+), 18 deletions(-)

diff --git a/ansible/roles/rabbitmq/templates/rabbitmq-env.conf.j2 b/ansible/roles/rabbitmq/templates/rabbitmq-env.conf.j2
index 837b9a0ca4..d533b7b91b 100644
--- a/ansible/roles/rabbitmq/templates/rabbitmq-env.conf.j2
+++ b/ansible/roles/rabbitmq/templates/rabbitmq-env.conf.j2
@@ -2,13 +2,11 @@ RABBITMQ_NODENAME=rabbit
 RABBITMQ_BOOT_MODULE=rabbit_clusterer
 
 RABBITMQ_LOG_BASE=/var/log/kolla/rabbitmq
+RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS="-pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.7/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez/rabbitmq_clusterer-3.5.x-189b3a81/ebin"
 
-{% if not kolla_base_distro in ['ubuntu', 'debian'] %}
-RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS="-pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.5/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez/rabbitmq_clusterer-3.5.x-189b3a81/ebin"
+{% if kolla_base_distro not in ['ubuntu', 'debian'] %}
 # See bug https://bugs.launchpad.net/ubuntu/+source/erlang/+bug/1374109
 export ERL_EPMD_ADDRESS={{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }}
-{% else %}
-RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS="-pa /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.4/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez/rabbitmq_clusterer-3.5.x-189b3a81/ebin"
 {% endif %}
 
 export ERL_EPMD_PORT={{ rabbitmq_epmd_port }}
diff --git a/docker/base/sources.list b/docker/base/sources.list
index 3a66844906..9e19fe4904 100644
--- a/docker/base/sources.list
+++ b/docker/base/sources.list
@@ -8,7 +8,7 @@ deb http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe
 
 # We need to add the Liberty repo for the updated packages they provide. The main
 # ones are qemu, libvirt, and openvswitch.
-deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/liberty main
+deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/mitaka main
 
 # MariaDB 10.0 repo
 deb http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main
diff --git a/docker/nova/nova-libvirt/Dockerfile.j2 b/docker/nova/nova-libvirt/Dockerfile.j2
index fb1f396af2..028d4635a0 100644
--- a/docker/nova/nova-libvirt/Dockerfile.j2
+++ b/docker/nova/nova-libvirt/Dockerfile.j2
@@ -23,10 +23,11 @@ RUN apt-get install -y --no-install-recommends \
         qemu \
         qemu-block-extra \
         ebtables \
-        xen-utils \
+        xen-utils-4.6 \
     && apt-get clean \
     && mkdir -p /etc/ceph \
-    && rm /etc/libvirt/qemu/networks/default.xml /etc/libvirt/qemu/networks/autostart/default.xml
+    && rm /etc/libvirt/qemu/networks/default.xml /etc/libvirt/qemu/networks/autostart/default.xml \
+    && sed -i 's|.*stdio_handler.*|stdio_handler = "file"|' /etc/libvirt/qemu.conf
 
 {% endif %}
 
diff --git a/docker/rabbitmq/Dockerfile.j2 b/docker/rabbitmq/Dockerfile.j2
index 75f5d488b1..b9c967b9a8 100644
--- a/docker/rabbitmq/Dockerfile.j2
+++ b/docker/rabbitmq/Dockerfile.j2
@@ -5,24 +5,23 @@ MAINTAINER {{ maintainer }}
 
 RUN yum -y install \
         hostname \
-        https://github.com/rabbitmq/rabbitmq-server/releases/download/rabbitmq_v3_5_5/rabbitmq-server-3.5.5-3.noarch.rpm \
-    && yum clean all \
-    && rm -rf /var/lib/rabbitmq/* \
-    && curl -o /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.5/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez http://www.rabbitmq.com/community-plugins/v3.5.x/rabbitmq_clusterer-3.5.x-189b3a81.ez
+        https://github.com/rabbitmq/rabbitmq-server/releases/download/rabbitmq_v3_5_7/rabbitmq-server-3.5.7-1.noarch.rpm \
+    && yum clean all
 
 {% elif base_distro in ['ubuntu', 'debian'] %}
 
-RUN apt-get install -y --no-install-recommends rabbitmq-server \
-    && apt-get clean \
-    && rm -rf /var/lib/rabbitmq/* \
-    && curl -o /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.4/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez http://www.rabbitmq.com/community-plugins/v3.5.x/rabbitmq_clusterer-3.5.x-189b3a81.ez
+RUN apt-get install -y --no-install-recommends \
+        rabbitmq-server \
+    && apt-get clean
 
 {% endif %}
 
 # NOTE(sdake): the /bin/true unblocks the rabbitmq-plugins tool. Not sure how
 #              or why.  My suspicion is it sends a signal to the parent
 #              process.
-RUN /usr/lib/rabbitmq/bin/rabbitmq-plugins enable --offline \
+RUN rm -rf /var/lib/rabbitmq/* \
+    && curl -o /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.7/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez http://www.rabbitmq.com/community-plugins/v3.5.x/rabbitmq_clusterer-3.5.x-189b3a81.ez \
+    && /usr/lib/rabbitmq/bin/rabbitmq-plugins enable --offline \
        rabbitmq_management \
        rabbitmq_clusterer \
     && /bin/true
@@ -36,4 +35,4 @@ RUN chmod 755 /usr/local/bin/kolla_extend_start \
 
 {{ include_footer }}
 
-USER rabbitmq
\ No newline at end of file
+USER rabbitmq
diff --git a/tools/setup_gate.sh b/tools/setup_gate.sh
index 4d1173994d..4f0cee61d2 100755
--- a/tools/setup_gate.sh
+++ b/tools/setup_gate.sh
@@ -27,7 +27,7 @@ function setup_config {
         sudo cp /etc/apt/sources.list /etc/kolla/sources.list
         # Append non-infra provided repos to list
         cat << EOF | sudo tee -a /etc/kolla/sources.list
-deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/liberty main
+deb http://ubuntu-cloud.archive.canonical.com/ubuntu trusty-updates/mitaka main
 deb http://nyc2.mirrors.digitalocean.com/mariadb/repo/10.0/ubuntu trusty main
 deb http://repo.percona.com/apt trusty main
 deb http://download.ceph.com/debian-hammer/ trusty main