diff --git a/asm/Kptfile b/asm/Kptfile
index 75fe4513c..afa24576b 100644
--- a/asm/Kptfile
+++ b/asm/Kptfile
@@ -71,12 +71,12 @@ openAPI:
x-k8s-cli:
setter:
name: anthos.servicemesh.hub
- value: gcr.io/gke-release/asm
+ value: gke.gcr.io/asm
io.k8s.cli.setters.anthos.servicemesh.tag:
x-k8s-cli:
setter:
name: anthos.servicemesh.tag
- value: 1.16.4-asm.14
+ value: 1.16.5-asm.2
isSet: true
io.k8s.cli.setters.anthos.servicemesh.managed-controlplane.vpcsc.enabled:
type: string
@@ -113,7 +113,7 @@ openAPI:
x-k8s-cli:
setter:
name: anthos.servicemesh.canonicalServiceHub
- value: gcr.io/gke-release/asm/canonical-service-controller:1.7.3-asm.6
+ value: gke.gcr.io/asm/canonical-service-controller:1.7.3-asm.6
isSet: true
io.k8s.cli.setters.anthos.servicemesh.idp-url:
type: string
diff --git a/asm/canonical-service/controller.yaml b/asm/canonical-service/controller.yaml
index 349d1d356..652bc797b 100644
--- a/asm/canonical-service/controller.yaml
+++ b/asm/canonical-service/controller.yaml
@@ -327,7 +327,7 @@ spec:
- --enable-leader-election
command:
- /manager
- image: gcr.io/gke-release/asm/canonical-service-controller:1.10.3-asm.16 # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.canonicalServiceHub"}
+ image: gke.gcr.io/asm/canonical-service-controller:1.10.3-asm.16 # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.canonicalServiceHub"}
name: manager
resources:
limits:
diff --git a/asm/istio/expansion/vm-eastwest-gateway.yaml b/asm/istio/expansion/vm-eastwest-gateway.yaml
index eb57a8c7e..d6d757e1e 100644
--- a/asm/istio/expansion/vm-eastwest-gateway.yaml
+++ b/asm/istio/expansion/vm-eastwest-gateway.yaml
@@ -19,7 +19,7 @@ metadata:
name: eastwest
spec:
profile: empty
- hub: gcr.io/gke-release/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
+ hub: gke.gcr.io/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
tag: 1.10.2-asm.1 # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.tag"}
components:
ingressGateways:
diff --git a/asm/istio/istio-operator.yaml b/asm/istio/istio-operator.yaml
index 26d19fd98..0da2c2681 100644
--- a/asm/istio/istio-operator.yaml
+++ b/asm/istio/istio-operator.yaml
@@ -17,7 +17,7 @@ apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
profile: empty
- hub: gcr.io/gke-release/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
+ hub: gke.gcr.io/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
tag: 1.10.2-asm.1 # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.tag"}
meshConfig:
trustDomainAliases: # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.trustDomainAliases"}
diff --git a/asm/istio/options/managed-control-plane.yaml b/asm/istio/options/managed-control-plane.yaml
index 5d8f1b62e..a548c348e 100644
--- a/asm/istio/options/managed-control-plane.yaml
+++ b/asm/istio/options/managed-control-plane.yaml
@@ -18,7 +18,7 @@ kind: IstioOperator
spec:
revision: "asm-managed"
profile: asm-gcp
- hub: gcr.io/gke-release/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
+ hub: gke.gcr.io/asm # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.hub"}
tag: 1.10.2-asm.1 # {"$ref":"#/definitions/io.k8s.cli.setters.anthos.servicemesh.tag"}
components:
base:
diff --git a/asmcli/README.md b/asmcli/README.md
index c96b20e03..dad8e52dd 100644
--- a/asmcli/README.md
+++ b/asmcli/README.md
@@ -78,7 +78,7 @@ instead of executing them, or use the `--verbose` flag to display _and_ execute
the commands. Combine the --verbose flag with --help to see extended help.
The script will by default create a temporary directory in order to download
-files and configuration necessary for installing ASM. Specify the --output-dir
+files and configuration necessary for installing ASM. Specify the `--output-dir` (or `--working-dir`)
flag in order to designate an existing folder to use instead. Upon completion,
the directory will contain the configuration used for installationm, as well as
the ASM package which notably contains the istioctl binary for the installed
diff --git a/asmcli/asmcli b/asmcli/asmcli
index 24bc7f5e8..add29b278 100755
--- a/asmcli/asmcli
+++ b/asmcli/asmcli
@@ -40,8 +40,8 @@ _CI_I_AM_A_TEST_ROBOT="${_CI_I_AM_A_TEST_ROBOT:=0}"; readonly _CI_I_AM_A_TEST_RO
### Internal variables ###
MAJOR="${MAJOR:=1}"; readonly MAJOR;
MINOR="${MINOR:=16}"; readonly MINOR;
-POINT="${POINT:=4}"; readonly POINT;
-REV="${REV:=14}"; readonly REV;
+POINT="${POINT:=5}"; readonly POINT;
+REV="${REV:=2}"; readonly REV;
CONFIG_VER="${CONFIG_VER:="1"}"; readonly CONFIG_VER;
K8S_MINOR=0
@@ -164,7 +164,7 @@ build-offline-package() {
build-offline-package_parse_args() {
while [[ $# != 0 ]]; do
case "${1}" in
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -268,7 +268,7 @@ create-mesh_parse_args() {
while [[ $# != 0 ]]; do
case "${1}" in
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -289,6 +289,10 @@ create-mesh_parse_args() {
context_set-option "TRUST_FLEET_IDENTITY" 0
shift 1
;;
+ --offline)
+ context_set-option "OFFLINE" 1
+ shift 1
+ ;;
*)
if [ -f "$1" ]; then
local KCF; KCF="${1}"
@@ -443,16 +447,28 @@ create-mesh_prepare_environment() {
fi
if needs_asm && needs_kpt; then
- download_kpt
+ if is_offline; then
+ warn "Skipping downloading kpt because offline mode was specified."
+ else
+ download_kpt
+ fi
fi
readonly AKPT
if needs_asm; then
if ! necessary_files_exist; then
- download_asm
+ if is_offline; then
+ warn "Skipping downloading mesh tarball because offline mode was specified."
+ else
+ download_asm
+ fi
fi
if should_download_kpt_package; then
- download_kpt_package
+ if is_offline; then
+ warn "Skipping downloading configuration templates because offline mode was specified."
+ else
+ download_kpt_package
+ fi
fi
organize_kpt_files
fi
@@ -1047,6 +1063,10 @@ FLAGS:
downloading them again.
The following several flags are used to display help texts and the version message.
-v|--verbose Print commands before and after execution.
+ --offline Perform an offline configuration using the pre-downloaded
+ package in the output directory. If the directory is not
+ specified or does not contain the required files, the
+ script will exit with error.
-h|--help Show this message and exit.
--version Print the version of this tool and exit.
@@ -1075,6 +1095,7 @@ Use -h|--help with -v|--verbose to show detailed descriptions.
FLAGS:
-D|--output_dir
-v|--verbose
+ --offline
-h|--help
--version
EOF
@@ -2686,6 +2707,7 @@ context_init() {
"SERVICE_ACCOUNT": "${SERVICE_ACCOUNT:-}",
"KEY_FILE": "${KEY_FILE:-}",
"OUTPUT_DIR": "${OUTPUT_DIR:-}",
+ "LOG_FILE_LOCATION": "${LOG_FILE_LOCATION:-}",
"CA_CERT": "${CA_CERT:-}",
"CA_KEY": "${CA_KEY:-}",
"CA_ROOT": "${CA_ROOT:-}",
@@ -2805,6 +2827,7 @@ NETWORK_ID
SERVICE_ACCOUNT
KEY_FILE
OUTPUT_DIR
+LOG_FILE_LOCATION
CA_CERT
CA_KEY
CA_ROOT
@@ -3361,6 +3384,47 @@ get_auth_token() {
local TOKEN; TOKEN="$(retry 2 gcloud --project="${PROJECT_ID}" auth print-access-token)"
echo "${TOKEN}"
}
+info() {
+ local VERBOSE; VERBOSE="$(context_get-option "VERBOSE")"
+ if hash ts 2>/dev/null && [[ "${VERBOSE}" -eq 1 ]]; then
+ echo_log "${SCRIPT_NAME}: ${1}" | TZ=utc ts '%Y-%m-%dT%.T' >&2
+ else
+ echo_log "${SCRIPT_NAME}: ${1}" >&2
+ fi
+}
+
+warn() {
+ info "[WARNING]: ${1}" >&2
+}
+
+warn_pause() {
+ warn "${1}"
+ sleep 2
+}
+
+error() {
+ info "[ERROR]: ${1}" >&2
+}
+
+fatal() {
+ error "${1}"
+ exit 2
+}
+
+fatal_with_usage() {
+ error "${1}"
+ usage_short >&2
+ exit 2
+}
+
+echo_log() {
+ local LOG_FILE_LOCATION; LOG_FILE_LOCATION="$(context_get-option "LOG_FILE_LOCATION")"
+
+ echo "${@}"
+ if [[ -n "${LOG_FILE_LOCATION}" ]]; then
+ echo "${@}" >> "${LOG_FILE_LOCATION}";
+ fi
+}
parse_args() {
# shellcheck disable=SC2064
trap "$(shopt -p nocasematch)" RETURN
@@ -3526,7 +3590,7 @@ parse_args() {
context_set-option "KEY_FILE" "${2}"
shift 2
;;
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -3732,7 +3796,7 @@ x_parse_install_args() {
context_set-option "KEY_FILE" "${2}"
shift 2
;;
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -3882,28 +3946,6 @@ strip_trailing_commas() {
echo "${1}" | sed 's/,*$//g'
}
-warn() {
- info "[WARNING]: ${1}" >&2
-}
-
-warn_pause() {
- warn "${1}"
- sleep 2
-}
-
-error() {
- info "[ERROR]: ${1}" >&2
-}
-
-info() {
- local VERBOSE; VERBOSE="$(context_get-option "VERBOSE")"
- if hash ts 2>/dev/null && [[ "${VERBOSE}" -eq 1 ]]; then
- echo "${SCRIPT_NAME}: ${1}" | TZ=utc ts '%Y-%m-%dT%.T' >&2
- else
- echo "${SCRIPT_NAME}: ${1}" >&2
- fi
-}
-
validation_error() {
error "${1}"
if only_validate; then
@@ -3914,17 +3956,6 @@ validation_error() {
fi
}
-fatal() {
- error "${1}"
- exit 2
-}
-
-fatal_with_usage() {
- error "${1}"
- usage_short >&2
- exit 2
-}
-
prompt_user_for_value() {
read -r -p "Please provide a value for ${1}:" VALUE
if [[ -n "${VALUE}" ]]; then
@@ -4104,12 +4135,15 @@ prepare_environment() {
# Offline mode should not trigger any download
if is_offline; then
if needs_kpt || ! necessary_files_exist || should_download_kpt_package; then
- { read -r -d '' MSG; fatal "${MSG}"; } < /dev/null
context_set-option "OUTPUT_DIR" "${OUTPUT_DIR}"
+ local LOG_FILE_LOCATION; LOG_FILE_LOCATION="${OUTPUT_DIR}/logs.txt"
+ touch "${LOG_FILE_LOCATION}"
+ context_set-option "LOG_FILE_LOCATION" "${LOG_FILE_LOCATION}"
+
if [[ "${KUBECONFIG_SUPPLIED}" -eq 0 ]]; then
KUBECONFIG="$(pwd)/asm_kubeconfig"
context_set-option "KUBECONFIG" "${KUBECONFIG}"
diff --git a/asmcli/asmcli.sh b/asmcli/asmcli.sh
index b5edc408d..2c6796bb0 100755
--- a/asmcli/asmcli.sh
+++ b/asmcli/asmcli.sh
@@ -36,8 +36,8 @@ _CI_I_AM_A_TEST_ROBOT="${_CI_I_AM_A_TEST_ROBOT:=0}"; readonly _CI_I_AM_A_TEST_RO
### Internal variables ###
MAJOR="${MAJOR:=1}"; readonly MAJOR;
MINOR="${MINOR:=16}"; readonly MINOR;
-POINT="${POINT:=4}"; readonly POINT;
-REV="${REV:=14}"; readonly REV;
+POINT="${POINT:=5}"; readonly POINT;
+REV="${REV:=2}"; readonly REV;
CONFIG_VER="${CONFIG_VER:="1"}"; readonly CONFIG_VER;
K8S_MINOR=0
diff --git a/asmcli/commands/build-offline-package.sh b/asmcli/commands/build-offline-package.sh
index 749f69dbb..62c5ea6ef 100644
--- a/asmcli/commands/build-offline-package.sh
+++ b/asmcli/commands/build-offline-package.sh
@@ -25,7 +25,7 @@ build-offline-package() {
build-offline-package_parse_args() {
while [[ $# != 0 ]]; do
case "${1}" in
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
diff --git a/asmcli/commands/create-mesh.sh b/asmcli/commands/create-mesh.sh
index 00fff77df..2f24d4757 100644
--- a/asmcli/commands/create-mesh.sh
+++ b/asmcli/commands/create-mesh.sh
@@ -43,7 +43,7 @@ create-mesh_parse_args() {
while [[ $# != 0 ]]; do
case "${1}" in
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -64,6 +64,10 @@ create-mesh_parse_args() {
context_set-option "TRUST_FLEET_IDENTITY" 0
shift 1
;;
+ --offline)
+ context_set-option "OFFLINE" 1
+ shift 1
+ ;;
*)
if [ -f "$1" ]; then
local KCF; KCF="${1}"
@@ -218,16 +222,28 @@ create-mesh_prepare_environment() {
fi
if needs_asm && needs_kpt; then
- download_kpt
+ if is_offline; then
+ warn "Skipping downloading kpt because offline mode was specified."
+ else
+ download_kpt
+ fi
fi
readonly AKPT
if needs_asm; then
if ! necessary_files_exist; then
- download_asm
+ if is_offline; then
+ warn "Skipping downloading mesh tarball because offline mode was specified."
+ else
+ download_asm
+ fi
fi
if should_download_kpt_package; then
- download_kpt_package
+ if is_offline; then
+ warn "Skipping downloading configuration templates because offline mode was specified."
+ else
+ download_kpt_package
+ fi
fi
organize_kpt_files
fi
diff --git a/asmcli/commands/help.sh b/asmcli/commands/help.sh
index 3477eaf64..48f657daf 100644
--- a/asmcli/commands/help.sh
+++ b/asmcli/commands/help.sh
@@ -328,6 +328,10 @@ FLAGS:
downloading them again.
The following several flags are used to display help texts and the version message.
-v|--verbose Print commands before and after execution.
+ --offline Perform an offline configuration using the pre-downloaded
+ package in the output directory. If the directory is not
+ specified or does not contain the required files, the
+ script will exit with error.
-h|--help Show this message and exit.
--version Print the version of this tool and exit.
@@ -356,6 +360,7 @@ Use -h|--help with -v|--verbose to show detailed descriptions.
FLAGS:
-D|--output_dir
-v|--verbose
+ --offline
-h|--help
--version
EOF
diff --git a/asmcli/lib/context.sh b/asmcli/lib/context.sh
index 2a5755040..72d130a83 100644
--- a/asmcli/lib/context.sh
+++ b/asmcli/lib/context.sh
@@ -33,6 +33,7 @@ context_init() {
"SERVICE_ACCOUNT": "${SERVICE_ACCOUNT:-}",
"KEY_FILE": "${KEY_FILE:-}",
"OUTPUT_DIR": "${OUTPUT_DIR:-}",
+ "LOG_FILE_LOCATION": "${LOG_FILE_LOCATION:-}",
"CA_CERT": "${CA_CERT:-}",
"CA_KEY": "${CA_KEY:-}",
"CA_ROOT": "${CA_ROOT:-}",
@@ -152,6 +153,7 @@ NETWORK_ID
SERVICE_ACCOUNT
KEY_FILE
OUTPUT_DIR
+LOG_FILE_LOCATION
CA_CERT
CA_KEY
CA_ROOT
diff --git a/asmcli/lib/log.sh b/asmcli/lib/log.sh
new file mode 100644
index 000000000..30520b4ee
--- /dev/null
+++ b/asmcli/lib/log.sh
@@ -0,0 +1,41 @@
+info() {
+ local VERBOSE; VERBOSE="$(context_get-option "VERBOSE")"
+ if hash ts 2>/dev/null && [[ "${VERBOSE}" -eq 1 ]]; then
+ echo_log "${SCRIPT_NAME}: ${1}" | TZ=utc ts '%Y-%m-%dT%.T' >&2
+ else
+ echo_log "${SCRIPT_NAME}: ${1}" >&2
+ fi
+}
+
+warn() {
+ info "[WARNING]: ${1}" >&2
+}
+
+warn_pause() {
+ warn "${1}"
+ sleep 2
+}
+
+error() {
+ info "[ERROR]: ${1}" >&2
+}
+
+fatal() {
+ error "${1}"
+ exit 2
+}
+
+fatal_with_usage() {
+ error "${1}"
+ usage_short >&2
+ exit 2
+}
+
+echo_log() {
+ local LOG_FILE_LOCATION; LOG_FILE_LOCATION="$(context_get-option "LOG_FILE_LOCATION")"
+
+ echo "${@}"
+ if [[ -n "${LOG_FILE_LOCATION}" ]]; then
+ echo "${@}" >> "${LOG_FILE_LOCATION}";
+ fi
+}
diff --git a/asmcli/lib/parse.sh b/asmcli/lib/parse.sh
index 226b59bc4..55a279734 100644
--- a/asmcli/lib/parse.sh
+++ b/asmcli/lib/parse.sh
@@ -163,7 +163,7 @@ parse_args() {
context_set-option "KEY_FILE" "${2}"
shift 2
;;
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
@@ -369,7 +369,7 @@ x_parse_install_args() {
context_set-option "KEY_FILE" "${2}"
shift 2
;;
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
context_set-option "OUTPUT_DIR" "${2}"
shift 2
diff --git a/asmcli/lib/util.sh b/asmcli/lib/util.sh
index da5bb6961..8a9a56bf7 100644
--- a/asmcli/lib/util.sh
+++ b/asmcli/lib/util.sh
@@ -91,28 +91,6 @@ strip_trailing_commas() {
echo "${1}" | sed 's/,*$//g'
}
-warn() {
- info "[WARNING]: ${1}" >&2
-}
-
-warn_pause() {
- warn "${1}"
- sleep 2
-}
-
-error() {
- info "[ERROR]: ${1}" >&2
-}
-
-info() {
- local VERBOSE; VERBOSE="$(context_get-option "VERBOSE")"
- if hash ts 2>/dev/null && [[ "${VERBOSE}" -eq 1 ]]; then
- echo "${SCRIPT_NAME}: ${1}" | TZ=utc ts '%Y-%m-%dT%.T' >&2
- else
- echo "${SCRIPT_NAME}: ${1}" >&2
- fi
-}
-
validation_error() {
error "${1}"
if only_validate; then
@@ -123,17 +101,6 @@ validation_error() {
fi
}
-fatal() {
- error "${1}"
- exit 2
-}
-
-fatal_with_usage() {
- error "${1}"
- usage_short >&2
- exit 2
-}
-
prompt_user_for_value() {
read -r -p "Please provide a value for ${1}:" VALUE
if [[ -n "${VALUE}" ]]; then
@@ -313,12 +280,15 @@ prepare_environment() {
# Offline mode should not trigger any download
if is_offline; then
if needs_kpt || ! necessary_files_exist || should_download_kpt_package; then
- { read -r -d '' MSG; fatal "${MSG}"; } < /dev/null
context_set-option "OUTPUT_DIR" "${OUTPUT_DIR}"
+ local LOG_FILE_LOCATION; LOG_FILE_LOCATION="${OUTPUT_DIR}/logs.txt"
+ touch "${LOG_FILE_LOCATION}"
+ context_set-option "LOG_FILE_LOCATION" "${LOG_FILE_LOCATION}"
+
if [[ "${KUBECONFIG_SUPPLIED}" -eq 0 ]]; then
KUBECONFIG="$(pwd)/asm_kubeconfig"
context_set-option "KUBECONFIG" "${KUBECONFIG}"
diff --git a/asmcli/tests/common.sh b/asmcli/tests/common.sh
index 3fbae4258..1f6cfeaa3 100644
--- a/asmcli/tests/common.sh
+++ b/asmcli/tests/common.sh
@@ -808,10 +808,10 @@ run_build_offline_package() {
local OUTPUT_DIR; OUTPUT_DIR="${1}"
echo "Build offline package..."
echo "../asmcli build-offline-package -v \
- --output-dir ${OUTPUT_DIR}"
+ --working-dir ${OUTPUT_DIR}"
# shellcheck disable=SC2086
../asmcli build-offline-package -v \
- --output-dir "${OUTPUT_DIR}" 2>&1
+ --working-dir "${OUTPUT_DIR}" 2>&1
# Check downloaded packages
[ -s "${OUTPUT_DIR}" ]
diff --git a/asmcli/tests/lib/util.bats b/asmcli/tests/lib/util.bats
index c0a67f921..9100b0772 100644
--- a/asmcli/tests/lib/util.bats
+++ b/asmcli/tests/lib/util.bats
@@ -130,3 +130,17 @@ EOF
exit 1
fi
}
+
+@test "UTIL: LOG_FILE_LOCATION is required to write log file" {
+ run echo_log "Hello"
+
+ local LOG_FILE_LOCATION; LOG_FILE_LOCATION="$(pwd)/logs.txt"
+ run context_set-option "LOG_FILE_LOCATION" "${LOG_FILE_LOCATION}"
+ touch "${LOG_FILE_LOCATION}"
+
+ run echo_log "World"
+ cat "${LOG_FILE_LOCATION}"
+ assert_output "World"
+
+ rm "${LOG_FILE_LOCATION}"
+}
diff --git a/scripts/migration/ca-migration/migrate_ca b/scripts/migration/ca-migration/migrate_ca
index bfe4e360a..35057d329 100755
--- a/scripts/migration/ca-migration/migrate_ca
+++ b/scripts/migration/ca-migration/migrate_ca
@@ -394,7 +394,7 @@ parse_args() {
argMap["FORCE"]="true"
shift 1
;;
- -D | --output_dir | --output-dir)
+ -D | --output_dir | --output-dir | --working_dir | --working-dir)
arg_required "${@}"
OUTPUT_DIR="$(apath -f "${2}")"
if [[ ! -a "${OUTPUT_DIR}" ]]; then
diff --git a/scripts/migration/migrate-addon b/scripts/migration/migrate-addon
index 43c89fc7e..1cb031e19 100755
--- a/scripts/migration/migrate-addon
+++ b/scripts/migration/migrate-addon
@@ -295,7 +295,7 @@ configure_mesh_ca_16() {
# The operator probably won't actually update Istiod faster than we will manually below, but this ensures it
# will not be reverted back
kube patch -n istio-system istiooperators.install.istio.io istio-1-6-11-gke-0 --type=merge -p='{"spec":{
- "components":{"pilot":{"hub":"gcr.io/gke-release/istio","tag":"1.6.14-gke.7"}}}
+ "components":{"pilot":{"hub":"gke.gcr.io/istio","tag":"1.6.14-gke.7"}}}
}'
# Next we insert the mesh ca root cert so that it is trusted
@@ -313,7 +313,7 @@ EOF
# Patch the new image, in case operator isn't fast enough, and insert an annotation to make sure we are change something
kube patch deploy istiod-istio-1611 -n istio-system -p='{"spec":{"template":{"spec":{"containers":[{
"name":"discovery",
- "image":"gcr.io/gke-release/istio/pilot:1.6.14-gke.7"
+ "image":"gke.gcr.io/istio/pilot:1.6.14-gke.7"
}]}}},
"metadata":{"annotations":{"istio-addon-migrate-start":"true"}}}'
echo "Restarting 1.6 istiod"
@@ -403,7 +403,7 @@ EOF
kube get deploy istio-pilot -n istio-system -o yaml > configure_mesh_ca_istio_pilot_deploy.yaml
kube patch deploy istio-pilot -n istio-system -p='{"spec":{"template":{"spec":{"containers":[{
"name":"discovery",
- "image":"gcr.io/gke-release/istio/pilot:1.4.10-gke.21",
+ "image":"gke.gcr.io/istio/pilot:1.4.10-gke.21",
"env":[{"name":"PILOT_SKIP_VALIDATE_TRUST_DOMAIN","value":"true"}]
}]}}}}'