summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmrith Kumar <amrith@tesora.com>2016-05-06 11:00:36 -0400
committerAmrith Kumar <amrith@tesora.com>2016-05-06 11:01:32 -0400
commite363325c022d2901aede471fe0f66ae60e876f28 (patch)
treee042754fcde76f2567fb5a015cf9d692070bb998
parentccc33811cf6e06fa9878c60bc5e77b1ac534f115 (diff)
downloadtrove-integration-e363325c022d2901aede471fe0f66ae60e876f28.tar.gz
Trove image build fails getting percona key
This fails often in the gate and I ran into it migrating trove-integration into trove-image-builder. The most common cause for this is that keys.gnupg.net fails. While there are multiple servers proxied for this service, sometimes they fail. In general people have found keyserver.ubuntu.com to be more reliable. Change-Id: I97dcb9120c75129d8a0aaed9ddd39b9e5fa7e608 Closes-Bug: #1579094
-rwxr-xr-xscripts/files/elements/ubuntu-mariadb/pre-install.d/10-percona-apt-key15
-rwxr-xr-xscripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key15
-rwxr-xr-xscripts/files/elements/ubuntu-percona/pre-install.d/10-percona-apt-key15
-rwxr-xr-xscripts/files/elements/ubuntu-pxc/pre-install.d/10-percona-apt-key15
4 files changed, 60 insertions, 0 deletions
diff --git a/scripts/files/elements/ubuntu-mariadb/pre-install.d/10-percona-apt-key b/scripts/files/elements/ubuntu-mariadb/pre-install.d/10-percona-apt-key
index fe773d7..ec1d89d 100755
--- a/scripts/files/elements/ubuntu-mariadb/pre-install.d/10-percona-apt-key
+++ b/scripts/files/elements/ubuntu-mariadb/pre-install.d/10-percona-apt-key
@@ -12,8 +12,23 @@ set -o xtrace
# Add Percona GPG key
mkdir -p /home/${GUEST_USERNAME}/.gnupg
+# sometimes the primary key server is unavailable and we should try an
+# alternate. see
+# https://bugs.launchpad.net/percona-server/+bug/907789. Disable
+# shell errexit so we can interrogate the exit code and take action
+# based on the exit code. We will reenable it later.
+set +e
apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
+if [ "$?" -ne "0" ];
+then
+ echo "Trying alternate keyserver hkp://keyserver.ubuntu.com"
+ set -e
+ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys 1C4CBDCDCD2EFD2A
+fi
+
+set -e
+
# Add Percona repo
# Creates the Percona sources list
cat <<EOL > /etc/apt/sources.list.d/percona.list
diff --git a/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key b/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key
index 159e6a7..2a03ad5 100755
--- a/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key
+++ b/scripts/files/elements/ubuntu-mysql/pre-install.d/10-percona-apt-key
@@ -12,8 +12,23 @@ set -o xtrace
# Add Percona GPG key
mkdir -p /home/${GUEST_USERNAME}/.gnupg
+# sometimes the primary key server is unavailable and we should try an
+# alternate. see
+# https://bugs.launchpad.net/percona-server/+bug/907789. Disable
+# shell errexit so we can interrogate the exit code and take action
+# based on the exit code. We will reenable it later.
+set +e
apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
+if [ "$?" -ne "0" ];
+then
+ echo "Trying alternate keyserver hkp://keyserver.ubuntu.com"
+ set -e
+ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys 1C4CBDCDCD2EFD2A
+fi
+
+set -e
+
# Add Percona repo
# Creates the percona sources list
cat <<EOL > /etc/apt/sources.list.d/percona.list
diff --git a/scripts/files/elements/ubuntu-percona/pre-install.d/10-percona-apt-key b/scripts/files/elements/ubuntu-percona/pre-install.d/10-percona-apt-key
index 7db291c..c2b686c 100755
--- a/scripts/files/elements/ubuntu-percona/pre-install.d/10-percona-apt-key
+++ b/scripts/files/elements/ubuntu-percona/pre-install.d/10-percona-apt-key
@@ -14,8 +14,23 @@ if [ ! -e /home/${GUEST_USERNAME}/.gnupg ]; then
mkdir -p /home/${GUEST_USERNAME}/.gnupg
fi
+# sometimes the primary key server is unavailable and we should try an
+# alternate. see
+# https://bugs.launchpad.net/percona-server/+bug/907789. Disable
+# shell errexit so we can interrogate the exit code and take action
+# based on the exit code. We will reenable it later.
+set +e
apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
+if [ "$?" -ne "0" ];
+then
+ echo "Trying alternate keyserver hkp://keyserver.ubuntu.com"
+ set -e
+ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys 1C4CBDCDCD2EFD2A
+fi
+
+set -e
+
# add Percona repo
# creates the percona sources list
cat <<EOL > /etc/apt/sources.list.d/percona.list
diff --git a/scripts/files/elements/ubuntu-pxc/pre-install.d/10-percona-apt-key b/scripts/files/elements/ubuntu-pxc/pre-install.d/10-percona-apt-key
index 7db291c..c2b686c 100755
--- a/scripts/files/elements/ubuntu-pxc/pre-install.d/10-percona-apt-key
+++ b/scripts/files/elements/ubuntu-pxc/pre-install.d/10-percona-apt-key
@@ -14,8 +14,23 @@ if [ ! -e /home/${GUEST_USERNAME}/.gnupg ]; then
mkdir -p /home/${GUEST_USERNAME}/.gnupg
fi
+# sometimes the primary key server is unavailable and we should try an
+# alternate. see
+# https://bugs.launchpad.net/percona-server/+bug/907789. Disable
+# shell errexit so we can interrogate the exit code and take action
+# based on the exit code. We will reenable it later.
+set +e
apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A
+if [ "$?" -ne "0" ];
+then
+ echo "Trying alternate keyserver hkp://keyserver.ubuntu.com"
+ set -e
+ apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv-keys 1C4CBDCDCD2EFD2A
+fi
+
+set -e
+
# add Percona repo
# creates the percona sources list
cat <<EOL > /etc/apt/sources.list.d/percona.list