更新时出现 helm 错误:UPGRADE FAILED: The order in patch list
helm error when updating: UPGRADE FAILED: The order in patch list
我对 helm 部署有疑问。这是在我向部署添加新环境变量后发生的。
当我执行时:helm upgrade [RELEASE] [CHART]
我收到以下错误:
Error: The order in patch list:
[
map[name:APP_ENV value:prod]
map[name:MAILER_URL value:...]
map[name:APP_VERSION value:v0-0-3]
map[name:APP_COMMIT_SHA value:...]
]
doesn't match $setElementOrder list:
[
map[name:APP_ENV]
map[name:COMPOSER_HOME]
map[name:PHP_XDEBUG_ENABLED]
map[name:DATABASE_DRIVER]
map[name:DATABASE_HOST]
map[name:DATABASE_NAME]
map[name:DATABASE_USER]
map[name:SECRET]
map[name:INDEX_HOSTS]
map[name:MAILER_FROM_ADDRESS]
map[name:MAILER_FROM_NAME]
map[name:UPLOAD_DIR]
map[name:ARCHIVE_DIR]
map[name:CATALOG_STORAGE_DIR]
map[name:ASSET_STORAGE_DIR]
map[name:TMP_STORAGE_DIR]
map[name:UPLOAD_TMP_DIR]
map[name:APP_VERSION]
map[name:APP_COMMIT_SHA]
map[name:APP_CRON]
map[name:DATABASE_PASSWORD]
map[name:MAILER_URL]
...
]
但是,如果我使用标志 --dry-run
执行相同的命令,我不会收到任何错误 (helm upgrade [RELEASE] [CHART] --dry-run
)
我不知道这个问题的原因或如何解决
我发现这个问题的原因是我重复了一些 envVars。在我的部署中,我有:
...
spec:
template:
spec:
container:
env:
- name: ENV_VAR_NAME
value: "test"
- name: ENV_VAR_NAME
value: "test"
...
删除重复变量后:
...
spec:
template:
spec:
container:
env:
- name: ENV_VAR_NAME
value: "test"
...
helm upgrade [RELEASE] [CHART]
工作正常
我有同样的错误,但没有重复的环境变量。我通过执行以下操作强制更新:
helm upgrade [RELEASE] [CHART] --force
我有同样的错误,但没有重复的变量。按字母顺序重新排序环境变量对我有用:-(
我对 helm 部署有疑问。这是在我向部署添加新环境变量后发生的。
当我执行时:helm upgrade [RELEASE] [CHART]
我收到以下错误:
Error: The order in patch list:
[
map[name:APP_ENV value:prod]
map[name:MAILER_URL value:...]
map[name:APP_VERSION value:v0-0-3]
map[name:APP_COMMIT_SHA value:...]
]
doesn't match $setElementOrder list:
[
map[name:APP_ENV]
map[name:COMPOSER_HOME]
map[name:PHP_XDEBUG_ENABLED]
map[name:DATABASE_DRIVER]
map[name:DATABASE_HOST]
map[name:DATABASE_NAME]
map[name:DATABASE_USER]
map[name:SECRET]
map[name:INDEX_HOSTS]
map[name:MAILER_FROM_ADDRESS]
map[name:MAILER_FROM_NAME]
map[name:UPLOAD_DIR]
map[name:ARCHIVE_DIR]
map[name:CATALOG_STORAGE_DIR]
map[name:ASSET_STORAGE_DIR]
map[name:TMP_STORAGE_DIR]
map[name:UPLOAD_TMP_DIR]
map[name:APP_VERSION]
map[name:APP_COMMIT_SHA]
map[name:APP_CRON]
map[name:DATABASE_PASSWORD]
map[name:MAILER_URL]
...
]
但是,如果我使用标志 --dry-run
执行相同的命令,我不会收到任何错误 (helm upgrade [RELEASE] [CHART] --dry-run
)
我不知道这个问题的原因或如何解决
我发现这个问题的原因是我重复了一些 envVars。在我的部署中,我有:
...
spec:
template:
spec:
container:
env:
- name: ENV_VAR_NAME
value: "test"
- name: ENV_VAR_NAME
value: "test"
...
删除重复变量后:
...
spec:
template:
spec:
container:
env:
- name: ENV_VAR_NAME
value: "test"
...
helm upgrade [RELEASE] [CHART]
工作正常
我有同样的错误,但没有重复的环境变量。我通过执行以下操作强制更新:
helm upgrade [RELEASE] [CHART] --force
我有同样的错误,但没有重复的变量。按字母顺序重新排序环境变量对我有用:-(