Перейти к содержанию

Рекомендации к обновлению Проекты VK WorkSpace

ВНИМАНИЕ

Перед обновлением ознакомьтесь с руководством по обновлению версий.

  1. Создайте копию 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
    
  2. Создайте копию 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
    
  3. Создайте файл-отчёт об отличиях в файлах 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"
    
  4. Сравните файлы values_{{ shell_product_name }}_infra.yaml и values_{{ shell_product_name }}.yaml c infra-diff.yaml и diff.yaml и перенесите все изменения пользовательских переменных в ваши файлы.

  5. Теперь можно обновлять инфраструктурные сервисы и приложение:

# Для онлайн установки
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 }}/