Рекомендации к обновлению Проекты VK WorkSpace
ВНИМАНИЕ
Перед обновлением ознакомьтесь с руководством по обновлению версий.
-
Создайте копию
values.yamlиз предыдущего релиза{{ shell_product_name }}, например:# Для онлайн установки helm show values {{ shell_product_name }}/{{ shell_product_name }}-infra --version VERSION_OLD > {{ shell_product_name }}-infra-old.yaml helm show values {{ shell_product_name }}/{{ shell_product_name }} --version VERSION_OLD > {{ shell_product_name }}-old.yaml # Для оффлайн установки скопируйте `values.yaml` из архивов с helm чартами; cp values.yaml values-infra-old.yaml cp values.yaml values-old.yaml -
Создайте копию
values.yamlиз нового релиза{{ shell_product_name }}, например:# Для онлайн установки helm show values {{ shell_product_name }}/{{ shell_product_name }}-infra --version VERSION > {{ shell_product_name }}-infra.yaml helm show values {{ shell_product_name }}/{{ shell_product_name }} --version VERSION > {{ shell_product_name }}.yaml # Для оффлайн установки скопируйте `values.yaml` из архивов с helm чартами; cp values.yaml values-infra.yaml cp values.yaml values.yaml -
Создайте файл-отчёт об отличиях в файлах
values.yamlстарой и новой версии с помощью командыdiff:diff {{ shell_product_name }}-infra-old.yaml {{ shell_product_name }}-infra.yaml > infra-diff.yaml cat infra-diff.yaml < repository: "oldrepository" > repository: "newrepository" diff {{ shell_product_name }}-old.yaml {{ shell_product_name }}.yaml > diff.yaml cat diff.yaml < repository: "oldrepository" > repository: "newrepository" -
Сравните файлы
values_{{ shell_product_name }}_infra.yamlиvalues_{{ shell_product_name }}.yamlcinfra-diff.yamlиdiff.yamlи перенесите все изменения пользовательских переменных в ваши файлы. -
Теперь можно обновлять инфраструктурные сервисы и приложение:
# Для онлайн установки
helm upgrade --install -n {{ shell_product_name }} -f values_{{ shell_product_name }}_infra.yaml --version VERSION --wait --create-namespace {{ shell_product_name }} {{ shell_product_name }}/{{ shell_product_name }}-infra
helm upgrade --install -n {{ shell_product_name }} -f values_{{ shell_product_name }}.yaml --version VERSION --wait --create-namespace {{ shell_product_name }} {{ shell_product_name }}/{{ shell_product_name }}
# Для оффлайн установки
helm upgrade --install -n {{ shell_product_name }} -f values_{{ shell_product_name }}_infra.yaml --wait --create-namespace {{ shell_product_name }}-infra {{ shell_product_name }}-infra/
helm upgrade --install -n {{ shell_product_name }} -f values_{{ shell_product_name }}.yaml --wait --create-namespace {{ shell_product_name }} {{ shell_product_name }}/