Merge pull request #41325 from wojtek-t/fix_etcd_migrate

Automatic merge from submit-queue (batch tested with PRs 41299, 41325, 41386, 41329, 41418)

Migrate etcd data using correct etcd version in case of previous crash

Fix #41324
Fix #41323

@mml
This commit is contained in:
Kubernetes Submit Queue
2017-02-14 11:42:35 -08:00
committed by GitHub

View File

@@ -52,6 +52,8 @@ if [ -z "${DATA_DIRECTORY:-}" ]; then
exit 1
fi
echo "$(date +'%Y-%m-%d %H:%M:%S') Detecting if migration is needed"
if [ "${TARGET_STORAGE}" != "etcd2" -a "${TARGET_STORAGE}" != "etcd3" ]; then
echo "Not supported version of storage: ${TARGET_STORAGE}"
exit 1
@@ -187,7 +189,7 @@ for step in ${SUPPORTED_VERSIONS}; do
CURRENT_VERSION=${step}
echo "${CURRENT_VERSION}/${CURRENT_STORAGE}" > "${DATA_DIRECTORY}/${VERSION_FILE}"
fi
if [ "$(echo ${CURRENT_VERSION} | cut -c1-2)" = "3." -a "${CURRENT_STORAGE}" = "etcd2" -a "${TARGET_STORAGE}" = "etcd3" ]; then
if [ "$(echo ${CURRENT_VERSION} | cut -c1-2)" = "3." -a "${CURRENT_VERSION}" = "${step}" -a "${CURRENT_STORAGE}" = "etcd2" -a "${TARGET_STORAGE}" = "etcd3" ]; then
# If it is the first 3.x release in the list and we are migrating
# also from 'etcd2' to 'etcd3', do the migration now.
echo "Performing etcd2 -> etcd3 migration"
@@ -241,3 +243,5 @@ if [ "${CURRENT_STORAGE}" = "etcd3" -a "${TARGET_STORAGE}" = "etcd2" ]; then
CURRENT_VERSION="2.3.7"
echo "${CURRENT_VERSION}/${CURRENT_STORAGE}" > "${DATA_DIRECTORY}/${VERSION_FILE}"
fi
echo "$(date +'%Y-%m-%d %H:%M:%S') Migration finished"