Skip to content

Commit

Permalink
Upgrade v2 script - metrics server
Browse files Browse the repository at this point in the history
  • Loading branch information
pmalek authored and pmalek-sumo committed Jan 4, 2021
1 parent 423f2ea commit ab09128
Show file tree
Hide file tree
Showing 4 changed files with 55 additions and 0 deletions.
36 changes: 36 additions & 0 deletions deploy/helm/sumologic/upgrade-2.0.0.sh
Original file line number Diff line number Diff line change
Expand Up @@ -547,6 +547,41 @@ function migrate_sumologic_setup_fields() {
yq d -i "${TEMP_FILE}" "sumologic.setup.fields"
}

function migrate_metrics_server() {
local metrics_server
readonly metrics_server="$(yq r "${TEMP_FILE}" metrics-server)"

# Nothing to migrate, return
if [[ -z "${metrics_server}" ]] ; then
return
fi

info "Migrating metrics-server"

local param
local v
for v in $(yq r - "args[*]" <<< "${metrics_server}" )
do
# Strip '--' prefix
v="${v/#--/}"

# Split on '='
IFS='=' read -ra param <<< "${v}"

# 2 entries: this key has a value so use it
if [[ ${#param[@]} -eq 2 ]]; then
yq w -i "${TEMP_FILE}" "metrics-server.extraArgs.${param[0]}" "${param[1]}"
# 1 entry: this key has no value hence it's just a boolean flag
elif [[ ${#param[@]} -eq 1 ]]; then
yq w -i "${TEMP_FILE}" "metrics-server.extraArgs.${param[0]}" true
else
warning "Problem migrating metrics-server args: ${param[*]}"
fi
done

yq d -i "${TEMP_FILE}" "metrics-server.args"
}

function delete_migrated_unused_keys() {
IFS=$'\n' read -r -d ' ' -a MAPPINGS_KEYS_TO_DELETE <<< "${KEYS_TO_DELETE}"
readonly MAPPINGS_KEYS_TO_DELETE
Expand Down Expand Up @@ -692,6 +727,7 @@ kube_prometheus_stack_update_remote_write_regexes

migrate_sumologic_sources
migrate_sumologic_setup_fields
migrate_metrics_server

check_user_image
check_fluentd_persistence
Expand Down
9 changes: 9 additions & 0 deletions tests/upgrade_v2_script/static/metrics_server.input.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Configure metrics-server
## ref: https://github.com/helm/charts/blob/master/stable/metrics-server/values.yaml
metrics-server:
## Set the enabled flag to true for enabling metrics-server.
## This is required before enabling fluentd autoscaling unless you have an existing metrics-server in the cluster.
enabled: false
args:
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
5 changes: 5 additions & 0 deletions tests/upgrade_v2_script/static/metrics_server.log
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@

[INFO] Migrating metrics-server

Thank you for upgrading to v2.0.0 of the Sumo Logic Kubernetes Collection Helm chart.
A new yaml file has been generated for you. Please check the current directory for new_values.yaml.
5 changes: 5 additions & 0 deletions tests/upgrade_v2_script/static/metrics_server.output.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
metrics-server:
enabled: false
extraArgs:
kubelet-insecure-tls: true
kubelet-preferred-address-types: InternalIP,ExternalIP,Hostname

0 comments on commit ab09128

Please sign in to comment.