From d8b5525fd2a544c264a86edcd0d3493709f262af Mon Sep 17 00:00:00 2001 From: Lingxian Kong Date: Tue, 2 Jun 2020 23:16:01 +1200 Subject: [PATCH] Fix CI Change-Id: I01c11ccb247a018ae85d7f369f80c38f7e9b7b7c --- integration/scripts/conf/test_begin.conf | 2 +- .../99-reliable-apt-key-importing.bash | 4 ++-- .../99-reliable-apt-key-importing.bash | 4 ++-- .../ubuntu-guest/install.d/15-trove-dep | 21 ++++++++++++------- .../post-install.d/90-apt-get-update | 9 -------- .../pre-install.d/04-baseline-tools | 2 +- .../pre-install.d/10-percona-apt-key | 6 +++--- integration/scripts/trovestack | 4 ++++ trove/instance/views.py | 2 +- trove/limits/views.py | 4 ++-- trove/tests/api/limits.py | 4 ++-- 11 files changed, 32 insertions(+), 30 deletions(-) delete mode 100755 integration/scripts/files/elements/ubuntu-guest/post-install.d/90-apt-get-update diff --git a/integration/scripts/conf/test_begin.conf b/integration/scripts/conf/test_begin.conf index fa0a1e1f5c..25d191ac66 100644 --- a/integration/scripts/conf/test_begin.conf +++ b/integration/scripts/conf/test_begin.conf @@ -84,4 +84,4 @@ "instance_fault_1_eph_flavor_name": "test.eph.fault_1-1", "instance_fault_2_flavor_name": "test.fault_2-7", "instance_fault_2_eph_flavor_name": "test.eph.fault_2-7", - "instance_log_on_failure": false, + "instance_log_on_failure": true, diff --git a/integration/scripts/files/elements/guest-agent/environment.d/99-reliable-apt-key-importing.bash b/integration/scripts/files/elements/guest-agent/environment.d/99-reliable-apt-key-importing.bash index 2661fc05cc..9622b29257 100644 --- a/integration/scripts/files/elements/guest-agent/environment.d/99-reliable-apt-key-importing.bash +++ b/integration/scripts/files/elements/guest-agent/environment.d/99-reliable-apt-key-importing.bash @@ -22,8 +22,8 @@ function get_key_robust() { fi echo "Importing the key, try: $tries" - apt-key adv --keyserver hkp://pool.sks-keyservers.net \ - --recv-keys ${KEY} && break + # Behind a firewall should use the port 80 instead of the default port 11371 + apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys ${KEY} && break tries=$((tries+1)) done diff --git a/integration/scripts/files/elements/ubuntu-guest/environment.d/99-reliable-apt-key-importing.bash b/integration/scripts/files/elements/ubuntu-guest/environment.d/99-reliable-apt-key-importing.bash index 2661fc05cc..9622b29257 100644 --- a/integration/scripts/files/elements/ubuntu-guest/environment.d/99-reliable-apt-key-importing.bash +++ b/integration/scripts/files/elements/ubuntu-guest/environment.d/99-reliable-apt-key-importing.bash @@ -22,8 +22,8 @@ function get_key_robust() { fi echo "Importing the key, try: $tries" - apt-key adv --keyserver hkp://pool.sks-keyservers.net \ - --recv-keys ${KEY} && break + # Behind a firewall should use the port 80 instead of the default port 11371 + apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys ${KEY} && break tries=$((tries+1)) done diff --git a/integration/scripts/files/elements/ubuntu-guest/install.d/15-trove-dep b/integration/scripts/files/elements/ubuntu-guest/install.d/15-trove-dep index 7a0430e1c1..25b4845928 100755 --- a/integration/scripts/files/elements/ubuntu-guest/install.d/15-trove-dep +++ b/integration/scripts/files/elements/ubuntu-guest/install.d/15-trove-dep @@ -9,10 +9,17 @@ set -o xtrace export DEBIAN_FRONTEND=noninteractive apt-get --allow-unauthenticated -y install \ libxml2-dev libxslt1-dev libffi-dev libssl-dev libyaml-dev \ - python3 python3-dev python3-pip python3-sqlalchemy python3-setuptools + python3-pip python3-sqlalchemy python3-setuptools -# pick up the requirements file left for us by -# extra-data.d/15-reddwarf-dep +# Install python 3.7, some python lib (e.g. oslo.concurrency>4.0.0) requries +# Python 3.7 +add-apt-repository --yes ppa:deadsnakes/ppa +apt update +apt install -y python3.7 python3.7-dev + +update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 10 +python3.5 -m pip install pip==9.0.3 +python3.5 -m pip install -U wheel setuptools TMP_HOOKS_DIR="/tmp/in_target.d" @@ -21,10 +28,10 @@ if [ -f ${TMP_HOOKS_DIR}/upper-constraints.txt ]; then UPPER_CONSTRAINTS=" -c ${TMP_HOOKS_DIR}/upper-constraints.txt" fi -pip3 install pip==9.0.3 -pip3 install wheel -pip3 install --upgrade -r ${TMP_HOOKS_DIR}/requirements.txt ${UPPER_CONSTRAINTS} +python3.7 -m pip install pip==9.0.3 +python3.7 -m pip install -U wheel setuptools +python3.7 -m pip install --upgrade -r ${TMP_HOOKS_DIR}/requirements.txt ${UPPER_CONSTRAINTS} echo "diagnostic pip freeze output follows" -pip3 freeze +python3.7 -m pip freeze echo "diagnostic pip freeze output above" diff --git a/integration/scripts/files/elements/ubuntu-guest/post-install.d/90-apt-get-update b/integration/scripts/files/elements/ubuntu-guest/post-install.d/90-apt-get-update deleted file mode 100755 index 6cc087a7db..0000000000 --- a/integration/scripts/files/elements/ubuntu-guest/post-install.d/90-apt-get-update +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -# CONTEXT: GUEST after packages installed -# PURPOSE: do apt-get update to save each instance having to do all the work - -set -e -set -o xtrace - -apt-get update diff --git a/integration/scripts/files/elements/ubuntu-guest/pre-install.d/04-baseline-tools b/integration/scripts/files/elements/ubuntu-guest/pre-install.d/04-baseline-tools index 8360ddfc3b..7b9221cf99 100755 --- a/integration/scripts/files/elements/ubuntu-guest/pre-install.d/04-baseline-tools +++ b/integration/scripts/files/elements/ubuntu-guest/pre-install.d/04-baseline-tools @@ -4,4 +4,4 @@ set -e set -o xtrace -apt-get --allow-unauthenticated install -y language-pack-en python-software-properties \ No newline at end of file +apt-get --allow-unauthenticated install -y language-pack-en python-software-properties software-properties-common \ No newline at end of file diff --git a/integration/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key b/integration/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key index cb2e851b6f..732b9e691d 100755 --- a/integration/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key +++ b/integration/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key @@ -11,9 +11,9 @@ RELEASE=${DIB_RELEASE:-"xenial"} # Add Percona GPG key mkdir -p /home/${GUEST_USERNAME}/.gnupg - -get_key_robust 1C4CBDCDCD2EFD2A -get_key_robust 9334A25F8507EFA5 +for server in "pool.sks-keyservers.net" "keys.gnupg.net" "keyserver.ubuntu.com"; do + apt-key adv --keyserver $server --recv-keys 8507EFA5 && break +done # Add Percona repo # Creates the percona sources list diff --git a/integration/scripts/trovestack b/integration/scripts/trovestack index 654ef6f85e..39fbf24380 100755 --- a/integration/scripts/trovestack +++ b/integration/scripts/trovestack @@ -815,6 +815,10 @@ function cmd_test_init() { cat $KEY_DIR/authorized_keys >> $USERHOME/.ssh/authorized_keys chmod 600 $USERHOME/.ssh/authorized_keys fi + + exclaim "Re-installing python-troveclient from git" + pip3 uninstall -y python-troveclient + pip3 install -U git+https://opendev.org/openstack/python-troveclient@stable/train#egg=python-troveclient } function cmd_build_image() { diff --git a/trove/instance/views.py b/trove/instance/views.py index c0dab012ab..9e254fdc85 100644 --- a/trove/instance/views.py +++ b/trove/instance/views.py @@ -214,7 +214,7 @@ class GuestLogsView(object): self.guest_logs = guest_logs def data(self): - return [GuestLogView(l).data() for l in self.guest_logs] + return [GuestLogView(guestlog).data() for guestlog in self.guest_logs] def convert_instance_count_to_list(instance_count): diff --git a/trove/limits/views.py b/trove/limits/views.py index f381d1cae7..9d145368ef 100644 --- a/trove/limits/views.py +++ b/trove/limits/views.py @@ -53,6 +53,6 @@ class LimitViews(object): abs_view["max_" + resource_name] = abs_limit data.append(abs_view) - for l in self.rate_limits: - data.append(LimitView(l).data()["limit"]) + for limit in self.rate_limits: + data.append(LimitView(limit).data()["limit"]) return {"limits": data} diff --git a/trove/tests/api/limits.py b/trove/tests/api/limits.py index f4e9bb7dc9..2279bdb330 100644 --- a/trove/tests/api/limits.py +++ b/trove/tests/api/limits.py @@ -91,8 +91,8 @@ class Limits(object): def _get_limits_as_dict(self, limits): d = {} - for l in limits: - d[l.verb] = l + for limit in limits: + d[l.verb] = limit return d @test