2.2. 更新系统的 pre-hook pod
要添加升级所需的 post-migration 操作,您必须从系统中更新 pre-hook pod 命令。
获取当前的 MASTER_ACCESS_TOKEN 值:
MASTER_ACCESS_TOKEN=$(oc get secret system-seed -o json | jq -r .data.MASTER_ACCESS_TOKEN | base64 -d)
$ MASTER_ACCESS_TOKEN=$(oc get secret system-seed -o json | jq -r .data.MASTER_ACCESS_TOKEN | base64 -d)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证 MASTER_ACCESS_TOKEN 未为空,并且具有现有的值:
echo ${MASTER_ACCESS_TOKEN}$ echo ${MASTER_ACCESS_TOKEN}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
system-appDeploymentConfig 的 pre-hook pod 命令更新至此发行版本所需的新命令:oc patch dc/system-app -p "{\"spec\":{\"strategy\":{\"rollingParams\":{\"pre\":{\"execNewPod\":{\"command\":[\"bash\",\"-c\",\"bundle exec rake boot openshift:deploy MASTER_ACCESS_TOKEN=\\\"${MASTER_ACCESS_TOKEN}\\\" && bundle exec rake services:create_backend_apis services:update_metric_owners proxy:update_proxy_rule_owners\"]}}}}}}"$ oc patch dc/system-app -p "{\"spec\":{\"strategy\":{\"rollingParams\":{\"pre\":{\"execNewPod\":{\"command\":[\"bash\",\"-c\",\"bundle exec rake boot openshift:deploy MASTER_ACCESS_TOKEN=\\\"${MASTER_ACCESS_TOKEN}\\\" && bundle exec rake services:create_backend_apis services:update_metric_owners proxy:update_proxy_rule_owners\"]}}}}}}"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证 pre-hook pod 命令是否已更改为新值:
oc get dc system-app -o json | jq .spec.strategy.rollingParams.pre.execNewPod.command
$ oc get dc system-app -o json | jq .spec.strategy.rollingParams.pre.execNewPod.commandCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以上命令的结果应该是:
[ "bash", "-c", "bundle exec rake boot openshift:deploy MASTER_ACCESS_TOKEN=\"<your-master-access-token>\" && bundle exec rake services:create_backend_apis services:update_metric_owners proxy:update_proxy_rule_owners" ]
[ "bash", "-c", "bundle exec rake boot openshift:deploy MASTER_ACCESS_TOKEN=\"<your-master-access-token>\" && bundle exec rake services:create_backend_apis services:update_metric_owners proxy:update_proxy_rule_owners" ]Copy to Clipboard Copied! Toggle word wrap Toggle overflow