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

Release notes

В рамках релизов за 1 квартал 2024 года были выпущены следующие релизы:

  • Минорный релиз 4.17.2 (рекомендуем обновиться до данной версии).
  • Мажорный релиз 4.17.1.

Минорный релиз 4.17.2

Исправления

  • Исправлена ошибка отображения отступов в блоке "Мои группы/Подписки".
  • Исправлена ошибка отображения списка постов группы, при поиске по тегу в посте, после того как тег был удален из поста.
  • Исправлена ошибка отсутствия кнопки крестика для сброса введённого значения в поле поиска в "Группы и сообщества".
  • Исправлена ошибка отсутствия уведомления назначенному ответственному за идею, о том, что идея одобрена.
  • Исправлена ошибка отсутствия уведомления рассматривающему о новой новой идее.
  • Исправлена ошибка отсутствия отображения заглушка обложки при создании новости.
  • Исправлена ошибка отображения пустой страницы с белым экраном, при попытке открыть изображение в "Группы и сообщества".
  • Исправлена ошибка отображения кнопок "Закрыть идею" и "Вернуть на реализацию" для рассматривающего идеи, после того как он одобрил эту идею.
  • Исправлена ошибка отображения текста статуса в карточке идеи.
  • Исправлена ошибка отображения поля фильтра "Автор" на вкладке "Мои идеи".
  • Исправлена ошибка отсутствия кнопки отображения всех файлов в блоке, если к идее прикреплено 4 и более файла.
  • Исправлена ошибка отсутсвия сортировки страниц внутри секции (по алфавиту от 0-9, символы, А-Я, A-Z).
  • Исправлена ошибка невозможности оставить реакцию к комментарию проекта и идеи.
  • Исправлена ошибка отсутвия отображения меню администрирование оргструктуры, если пользователю предоставлены права на управление администраторами оргструктуры и/или доступ к редактированию оргструктуры.
  • Исправлена ошибка добавления администратора, другим администратором сервиса идей с полным доступом.
  • Исправлена ошибка остутсвия отображения сервиса "Идеи" в списоке разделов меню по-умолчанию.
  • Исправлена ошибка, возникающая при попытке сменить руководителя проекта.
  • Исправлена ошибка при загрузке от двух файлов в "Корпоративное хранилище", если руководитель - пользователь без прав суперюзера.
  • Исправлена ошибка наложения изображений друг на друга в списке всех изображений альбома в "Группы и сообщества".
  • Исправлена ошибка отсутвия уведомления у автора комментария под карточкой благодарности о реакции на его комментарий.
  • Исправлена ошибка отображения модального окна во время создания идеи.
  • Исправлена ошибка отсутствия действия "Закрепить" у супер-админа\админа\суперюзера в "Группы и сообщества".
  • Исправлена ошибка отсутствия отображения меню администрирования идей, если пользователю предоставлены права на управление администраторами идей или только на "Доступ к просмотру и редактированию списка категорий идей".
  • Исправлена ошибка отсутствия отображения списка Групп страниц у суперюзера или администратора.
  • Исправлена ошибка отсутствия доступа к администрированию Группы страниц и Страниц, если обычного пользователя сделать суперюзером.

Необходимо использовать образы.

Мажорный релиз 4.17.1

Новые возможности

  • Реализован новый сервис "Идеи". Сервис предоставляет пользователям возможность предлагать идеи по улучшению компании, а администраторам - модерировать идеи и воплощать их в жизнь.

    • реализовано создание и редактирование идеи и черновика идеи;
    • реализовано удаление идеи и черновика идеи;
    • реализовано рассмотрение идеи;
    • реализовано назначение рассматривающих идей;
    • реализована подписка или отписка от идеи;
    • реализовано получение уведомлений;
    • реализовано управление администраторами идей;
    • реализована настройка категорий идей;
    • реализован просмотр карточки идеи;
    • реализовано создание, редактирование и удаление комментария к идее;
    • реализовано просмотр списка моих идей, черновиков, идей в работе, на рассмотрение;
    • реализовано закрытие идеи по итогам реализации.

    Важно! Необходимо добавить в боковое меню ссылку на сервис "Идеи". Инструкция по добавлению ссылок в боковое меню, адрес - {url_вашего_стенда}/ideas

  • Доработан сервис "Сообщества, группы и блоги":

    • реализован виджет "Поиск материалов" (постов и файлов) внутри группы по названию и тегу;
    • реализован виджет "Последние материалы", отображающий последние файлы, документы, посты внутри группы. Возможность сортировки и фильтрации в виджете по типу материала (файл/пост/документ);
    • реализован виджет "Новые участники", отображающий 10 пользователей, которые последними стали участниками группы;
    • реализован виджет "Последняя активность", отображающий последние действия (удаление, изменение, создание) по материалам группы;
    • реализован всплывающее окно, содержащее полное название группы при наведении курсора на наименование;
    • реализован сохранение форматирования в закрепленных постах группы;
    • реализована возможность выбора модератора группы только из участников данной группы;
    • реализован просмотр полномасштабной картинки (как в галерее), которую прикрепили в пост;
    • реализована возможность настройки виджетов внутри группы.
    • реализован общий список тегов в группе, возможность сортировать и осуществлять поиск по этому списку;
    • реализован виджет "Популярные теги" группы с возможностью терехода в общий список тегов группы;
    • реализован виджет "Отслеживать тег";
    • реализована возможность создания ссылки на группу с отфильтрованными по тегу материалами группы;
    • реализованы уведомления о загрузке файлов в файловое хранилище группы для создателя группы;
    • реализована возможность администратора системы (superuser) работать с файлами в файловом хранилище любой группы, вне зависимости от того, является он ее создателем, участником или нет.
  • Реализовано отображение профиля заблокированного пользователя.
  • Реализован поиск по должности в организационной структуре.
  • Реализовано предварительное превью (alpha-версия) публичного API. В рамках публичного API на данном этапе будут предоставляться следующие возможности:

    • В сервисе профили (profile):
      • получить информацию из профиля пользователя;
      • получить список профилей из сервиса поиска;
      • получить список профилей по id;
      • получить список должностей;
      • получить должность;
      • создать/изменить/удалить должность.
    • В сервисе организационная структура (groups):
      • получить список организаций;
      • получить организацию;
      • создать/изменить/удалить организацию;
      • получить список подразделений;
      • получить подразделение;
      • создать/изменить/удалить подразделение;
      • получить список сотрудников.
    • В сервисе справочники (dictionary):
      • получить список справочников;
      • получить все записи справочника;
      • получить запись справочника;
      • создать/изменить/удалить запись справочника.
    • В сервисе уведомления (notifications):
      • создать уведомление для пользователя.

    Важно! В ближайших квартальных релизах (Q2-Q3) Публичное API будет расширено/скорректировано (API сервиса уведомлений, требования к клиентской аутентификации, ...). Целевая стабильная версия поставки публичного API может иметь значительные отличия от alpha-версии.

Исправления

  • В сервисе "Профиль сотрудника":

    • исправлена ошибка отображения заглушки профиля заблокированного пользователя;
    • исправлена ошибка при открытии страницы профиля пользователя в новой вкладке;
    • исправлена ошибка при сохранении профиля пользователя с незаполненными необязательными полями;
    • исправлена ошибка отображения раздела "Руководитель" в профиле пользователя, не привязанного в оргструктуре;
    • исправлена ошибка при переходе в профиль пользователя, не привязанного в оргструктуре;
    • исправлена ошибка при смене аватарки пользователя;
    • исправлена ошибка ограничения на количество наименований в поле "Хобби".
  • В сервисе "Главная страница и виджеты":

    • исправлена ошибка отображения превью виджета в карточках виджетов;
    • исправлена ошибка не сохранения ограничений на доступность раздела только администратору системы (superuser);
    • исправлена ошибка отсутствия тултипов (подсказок) в длинных названиях пунктов в боковом меню;
    • исправлена ошибка не сохранения настроек виджетов, заданных по умолчанию для всех пользователей;
    • исправлена ошибка не возможности отображения текста заметки в виджете "Заметки".
  • В сервисе "Визуализация организационной структуры":

    • исправлена ошибка некорректного подсчета сотрудников подразделений;
    • исправлена ошибка отображения должности сотрудника и руководителя;
    • исправлено отображение заблокированного руководителя в карточке организации и подразделения;
    • исправлено отображение информация об организации, подразделении и должности в карточке сотрудника.
  • В сервисе "Новостная лента":

    • исправлена возможность выбора обложки новости по умолчанию;
    • исправлена ошибка при попытке опубликовать новость с обложкой по умолчанию;
    • исправлена ошибка отображения времени по умолчанию при планировании новостей;
    • исправлена ошибка не возможности проставления реакции в закрепленной новости.
  • В сервисе "Мероприятия":

    • исправлена ошибка отображения старого аватара пользователя в списке участников;
    • исправлена ошибка отсутствия обновления списка пользователей при переходе на следующую страницу списка;
    • исправлена ошибка отображения флага "Импортировать мероприятие в персональный календарь";
    • исправлена ошибка перезагрузки формы при добавлении спикера с помощью ввода имени в форме создания слота;
    • исправлена ошибка не возможности удаления участников мероприятия администратором мероприятий;
    • исправлена ошибка копирования даты публикации при копировании мероприятия;
    • исправлена ошибка не возможности редактировать и удалять мероприятия других пользователей администратором мероприятий;
    • исправлена ошибка отображения аватара внешнего спикера в карточке мероприятия;
    • исправлена ошибка валидации url онлайн-трансляции и описания мероприятия при добавлении в персональный календарь;
    • исправлена ошибка не возможности копирования мероприятия c обложкой и спикерами других пользователей администратором мероприятий.
  • В сервисе "Сообщества, группы и блоги":

    • исправлена ошибка отображения кнопок "Поделиться" и "Оценить", счетчика количества комментариев в карточке предложенного поста;
    • исправлено отображение уведомления при ошибке редактирования поста не подписчиком группы;
    • исправлена ошибка при отмене заявки на вступление в закрытую группу;
    • исправлено отображение пользователя в списке участников группы;
    • исправлена ошибка перехода в предложенный пост из уведомления;
    • исправлена ошибка отображения кнопки "Файловое хранилище", если она отключена в настройках группы;
    • исправлена ошибка редактирования группы с числовым названием;
    • исправлена ошибка обновления списка доступных действий с постом группы без перезагрузки страницы;
    • исправлена ошибка отображения супер-администратором\администратором группы перейти на страницу группы нажать на "Участники" перейти во вкладку "Заявки" Ожидаемый результат: Отображается список заявок от пользователей на вступление в группу Отображается внутренняя ошибка
    • исправлена ошибка невозможности удаления группы, если есть заявка на вступление в группу;
    • исправлена ошибка сортировки во вкладке "Мои посты" не по дате публикации;
    • исправлена ошибка отсутствия выделения раздела, к которому привязана страница, при просмотре страницы;
    • исправлена ошибка невозможности просмотра закрепленных постов подписчиками группы;
    • исправлено отображение изображения в карточке закрепленного поста;
    • исправлена ошибка изменения прав у администратора/модератора группы при смене типа группы на "Закрытая"/"Скрытая"
    • исправлена ошибка невозможности совершать действия с постами супер-администратором группы;
    • исправлено отображение закрепленных постов в группе.
  • В сервисе "Файловое хранилище":

    • исправлена ошибка редактирования папки пользователя администратором системы (superuser);
    • исправлено отображение переключателя "Таблица/Плитка";
    • исправлена ошибка при переходе в профиль пользователя из карточки файла;
    • исправлено отображение превью изображений;
    • исправлена возможность загрузки JPG и Tiff файлов, при установленном ограничении на тип загружаемых файлов;
    • исправлена проверка прав пользователя на удаление файла при перемещении файла в другую папку;
    • исправлено отображение кнопки скачивания папки в списке файлов;
    • исправлена ошибка при скачивании определенных типов файлов.
  • В сервисе "Персонализированный контент":

    • исправлена ошибка отсутствия отображения картинки в посте;
    • исправлена ошибка склонения фамилия в событии о добавлении и подтверждении навыков;
    • исправлена ошибка отображения события о награждении пользователя;
    • исправлено применение пола пользователя при составлении текста события (получил/получила);
    • исправлена ошибка отсутствия события о добавлении новой компетенции;
    • исправлено отображение поля для комментария в событии подтверждения навыка или компетенции;
    • исправлено отсутствие отображения кнопки счетчика комментариев и "поделиться";
    • исправлена ошибка активности кнопки "Проголосовать" в мини-опросе, после того как пользователь проголосовал;
    • исправлена ошибка отсутствия ссылки на профиль пользователя на аватаре в записи о навыках или компетенциях;
    • исправлена ошибка отображения старых аватаров пользователя в событиях при просмотре ленты другого пользователя;
    • исправлен переход в профиль из поста с подтверждением навыков.
  • В сервисе "Базы знаний":

    • исправлена ошибка отображения в избранном удаленных страниц группы страниц;
    • исправлена ошибка невозможности отображения в избранном индивидуальных страниц;
    • исправлена ошибка отображения указателя развернутого/свернутого списка в разделе с выключенным отображением страниц, привязанных к данному разделу;
    • исправлена ошибка выгрузки отчета "Рейтинг страниц";
    • исправлена ошибка невозможности пользователя удалить или отредактировать свой комментарий.
  • В сервисе "Геймификация":

    • исправлена ошибка невозможности выдать награду пользователю через профиль;
    • исправлена ошибка некорректного начисления баллов при присвоении награды вручную;
    • исправлена ошибка отображения аватара активного пользователя в событии присвоения благодарности;
    • исправлена ошибка некорректного подсчета действий пользователя при присвоении награды по количеству комментариев и постов в блоге;
    • исправлена ошибка отсутствия карточки события добавления Благодарности в персональной ленте пользователя;
    • исправлена ошибка отображения реакции для наград и благодарностей в ленте.
  • В сервисе "Планирование времени (Календарь)":

    • исправлена ошибка отсутствия переговорной, ссылки на видеозвонок и формата встречи в карточке встречи;
    • исправлена ошибка невозможности добавления обязательных участников при создании новой встречи;
    • исправлена ошибка отображения кнопок "Пойду", "Не пойду", "Возможно пойду";
    • исправлена ошибка отсутствия кнопки "Скопировать" у ссылки на онлайн-встречу;
    • исправлена ошибка отображения карточки встречи.
  • В сервисе "Бронирование переговорных":

    • исправлена ошибка отображения занятых переговорных при редактировании встречи;
    • исправлена ошибка отображения время бронирования переговорных;
    • исправлена ошибка отображения карточки переговорной комнаты;
    • исправлена ошибка отображения только крайнего занятого слота времени переговорной комнаты;
    • исправлена ошибка отображения занятых переговорных при поиске свободных на определенное время;
    • исправлена ошибка отображения занятости переговорной, если есть хотя бы один забронированный слот на этот день.
  • В сервисе "Проектное взаимодействие":

    • исправлена ошибка добавления этапов проекта при редактировании проекта;
    • исправлена ошибка отображения предупреждения о конфликте между окончанием проекта и этапа;
    • исправлено отображение формата дат в сообщении-подсказке о конфликте дат "Сроки задачи не соответствуют срокам этапа (дд.мм.гггг-дд.мм.гггг)";
    • исправлена ошибка перехода в задачу из уведомления;
    • исправлена ошибка создания задачи.
  • В сервисе "Поиск":

    • исправлена ошибка поиска по "Имя Фамилия"/"Фамилия Имя", а также с разными вариациями верхнего и нижнего регистра;
    • исправлена ошибка поиска с фильтром Новости;
    • исправлена ошибка поиска по тэгам с пробелами;
    • исправлена ошибка поиска по тэгам.
  • В сервисе "Уведомления":

    • исправлена ошибка отсутствия уведомлений:
      • о приглашении на встречу;
      • об упоминании пользователя в описании новости;
      • о заявке на вступление в закрытую группу;
      • о комментировании записи из ленты;
      • об отклонении приглашения создателю скрытого мероприятия;
      • приглашенному пользователю на мероприятие;
      • о присвоении награды за выполнение условия автоматического правила;
      • о комментарии к карточке награды;
    • исправлена ошибка наполнения контентом уведомлений об ответе на комментарий к благодарности, изменениях комментариев к записи в ленте, напоминание о предстоящей встрече;
    • исправлена ошибка отображения аватара заблокированного пользователя, не произошла замена на плейсхолдер;
    • исправлена ошибка отображения ФИО при смене фамилии в старых уведомлениях;
    • исправлена ошибка отображения крайнего принятого решения по встрече во всех уведомлениях-приглашениях.
  • В сервисе "Аналитика":

    • исправлена ошибка экспорта в Excel отчетов "Лучший автор постов" или "Топ 5 популярных постов".
    • исправлена ошибка отображения блоков отчетов в разделе аналитики.
  • В разделе "Администрирование портала" и "Управление контентом":

    • исправлена ошибка при переходе по прямому url в "Управление контентом" -> "Новости", а также при переходе в "Администрирование" -> "Группы страниц".
    • исправлена ошибка отображения кнопки выгрузки администраторов в сервисах Организационная структура, Мероприятия, Группы страниц, Страницы.
    • исправлена ошибка отображения ФИО и аватара пользователей в списке администраторов сервисов.
    • исправлена ошибка отображения администратору конкретной группы страниц администраторов всех остальных групп страниц.
    • исправлена ошибка отображения уже выданных разрешений при редактировании администратора мероприятий.
    • исправлена ошибка отображения ФИО сотрудников в "Панель администратора" > "Управление контентом" > "Организационная структура" > "Сотрудники"

Изменения в продукте

Новые сервисы

  • TAGS
  • REACTIONS
  • IDEAS

Удаленные сервисы

  • BLOGS

Команды для сервисов

Выполнять в указанной последовательности!

  1. TAGS
    - python -m async_profile_sync.management.load_profile_user_data
    - python -m commands.sync_tags
  2. TIMELINES
    - python -m async_profile_sync.management.load_profile_user_data
  3. ASYNC-BLOGS
    - python -m management.load_profile_user_data
    - python -m management.sync_tags
  4. IDEAS
    - python manage.py load_profile_user_data
    - python manage.py sync_tags
  5. REACTIONS
    - python -m async_profile_sync.management.load_profile_user_data - python -m commands.migrate_reactions_types_once - python -m commands.migrate_reactions_from_service ASYNC_BLOGS_API_URL NEWS_API_URL CMS_API_URL FILESTORAGE_API_URL COMMENTS_API_URL
  6. FILESTORAGE
    - python manage.py sync_tags
  7. NEWS
    - python -m async_profile_sync.management.load_profile_user_data
    - python -m commands.sync_tags
  8. CMS
    - python -m commands.sync_tags

Команды для создания администраторов

Команда вызывается с двумя параметрами: логин и пароль.

  1. COMMENTS
    - python create_admin_panel_user.py
  2. NEWS
    - python create_admin_panel_user.py
  3. ROLES
    - python create_admin_panel_user.py
  4. CMS
    - python create_admin_panel_user.py
  5. SETTINGS
    - python create_admin_panel_user.py
  6. ASYNC-BLOGS
    - python create_admin_panel_user.py
  7. TIMELINES
    - python src/commands/create_admin_panel_user.py
  8. REACTIONS
    - python src/commands/create_admin_panel_user.py
  9. TAGS
    - python src/commands/create_admin_panel_user.py

Изменение переменных во всех сервисах

Удалена переменная среды:

Переменная Пример Необходимость Описание
JWT_PUB_KEY Обязательно Публичный ключ для расшифровки токена

Добавлены переменные среды:

Переменная Пример Необходимость Описание
KEYCLOAK_ENDPOINT http://keycloak/auth Обязательно URL keycloak для получения публичного ключа
KEYCLOAK_REALM ph Обязательно Keycloak realm для получения ключа

Изменения в сервисах

Инфраструктура

Для корректной работы продукта в Ingress Kubernetes для Keycloak необходимо добавить аннотацию nginx.ingress.kubernetes.io/proxy-buffer-size: "8k"

Сервисы на основе Django

Для корректного отображения панели администратора в сервисах на основе Django добавлен контейнер с веб-сервером NGINX.
В значения для Helm добавляются перечисленные ниже секции. В команду для запуска основного контейнера, перед запуском основного процесса (gunicorn) требуется добавить команду копирования файлов в общий для контейнеров каталог /static.

Обратите внимание, что путь указанный в configMaps.nginx-templates.data.static.conf.template должен соответствовать значению переменной окружения API_BASE_URL сервиса.

Список сервисов: DICTIONARIES, FILESTORAGE, NOTIFICATIONS, PAGES, PROFILE, CALENDAR, GAMIFICATION, GROUPS, INTEGRATOR, INFORMERS, MEETINGS, POLLS, REPORTS, TASKS, TERMSOFUSE.

Изменения values:

configMaps:
  nginx-templates:
    data:
      static.conf.template: |
        server {
          listen 8001;
          location /api/filestorage/static/ {
              autoindex on;
              alias /static/;
          }
        }
deployments:
  backend:
    containers:
      nginx-static:
        image: nginx
        imageTag: "1.23"
        name: static
        ports:
          - containerPort: 8001
            name: static
        resources:
          requests:
            cpu: 50m
            memory: 50Mi
        volumeMounts:
          - mountPath: /static
            name: static-files
          - mountPath: /etc/nginx/templates
            name: nginx-templates
     backend:
       command:
         - sh
         - -c
       args:
         - 'cp -r /app/static/* /static/ && gunicorn --pid /tmp/dictionaries.pid application.wsgi:application --reload --reload-extra-file /tmp/touch.reload '
       volumeMounts:
         - name: static-files
           mountPath: /static
     volumes:
       - name: static-files
         type: emptyDir
       - name: nginx-templates
         type: configMap
 services:
  static:
    extraSelectorLabels:
      app.kubernetes.io/component: backend
    ports:
      - name: static
        port: 80
        protocol: TCP
        targetPort: 8001
    type: ClusterIP
Изменена переменная REDIS_LOCATION

Было до релиза 3.60.4 (включительно):

Переменная Пример Необходимость Описание
REDIS_LOCATION Пример из сервиса DICTIONARIES: redis://dictionaries-redis Адрес Redis для работы Celery

Переменная содержится в следующих сервисах: DICTIONARIES, BLOGS, CALENDAR, CMS, COMMENTS, EVENTS, GAMIFICATIONS, GROUPS, NEWS, TASKS.

Стало с релиза 4.17.1:

Переменная Пример Необходимость Описание
REDIS_LOCATION redis://redis Обязательно Арес Redis

Переменная содержится в следующих сервисах: DICTIONARIES, DISCOVERY, FILESTORAGE, PROFILE, CALENDAR, EVENTS, GAMIFICATION, GROUPS, IDEAS, REPORTS, TASKS.

FRONTEND

Добавлены переменные среды:

Переменная Пример Необходимость Описание
NGINX_LG_COMP false Включение в конфигурацию обратную совместимость ссылок лонгридов

Добавлена команда запуска контейнера: CMD: [/app/start.sh]

ASYNC-BLOGS

Важно!

При обновлении с версии раньше 3.60.1 - необходимо выполнить миграции удаленного сервиса BLOGS, только потом применять миграции новых асинхронных блогов.

При обновлении с версии 3.60.1 и новее, а также при новой установке или обновлении на последующие релизы данные миграции не нужны.

jobs:
   db-migrations-blogs:
     annotations: '"helm.sh/hook": pre-upgrade'
     activeDeadlineSeconds: 600
     backoffLimit: 3
     ttlSecondsAfterFinished: 120
     containers:
       # Миграции БД
       dbmg-blogs:
         image: docker.people-hub.ru/ph/blogs:release-peoplehub-v3-60-1
         name: '{{ include "helpers.app.name" . }}-db-migrations-blogs'
         # Команда для применения миграций
         command: [sh, -c]
         args: [python manage.py migrate --noinput]
TIMELINES

Запуск сервиса через скрипт /app/scripts/start.sh

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
SERVER_PORT 8000 Порт контейнера
UVICORN_WORKERS 4 Количество рабочих процессов uvicorn

Добавлено задание (job) для создания суперадминистратора Django в сервисе TIMELINES:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python create_admin_panel_user.py $DJANGO_SUPERUSER_USERNAME $DJANGO_SUPERUSER_PASSWORD]
PAGES

Добавлена автоматизация при установке и обновлении сервиса:

init-install:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    # Миграции БД
    init-install:
      name: '{{ include "helpers.app.name" . }}-init-install'
      command: [sh, -c]
      args: [python manage.py create_default_data]
init-upgrade:
  annotations: '"helm.sh/hook": post-upgrade'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    # Миграции БД
    init-upgrade:
      name: '{{ include "helpers.app.name" . }}-init-upgrade'
      command: [sh, -c]
      args: [python manage.py change_default_data]

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе PAGES:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
DISCOVERY

Добавлена автоматизация при установке сервиса:

jobs:
  init-install:
    annotations: '"helm.sh/hook": post-install'
    activeDeadlineSeconds: 600
    backoffLimit: 3
    ttlSecondsAfterFinished: 120
    containers:
      init-install:
        name: '{{ include "helpers.app.name" . }}-init-install'
        command: [sh, -c]
        args: [curl --location --request POST http://discovery-backend/api/discovery/internal/init_dictionaries/]

Добавлены переменные среды:

Переменная Пример Необходимость Описание
REDIS_LOCATION redis://redis Обязательно Арес Redis
API_BASE_URL /api/discovery Обязательно Префикс API сервиса. Приведение переменной к единому виду с другими сервисами

Удалены переменные окружения:

Переменная Пример Необходимость Описание
BASE_API_URL /api/discovery Обязательно Префикс API сервиса Discovery
CELERY_BROKER_URL Обязательно Адрес Celery
CELERY_RESULT_BACKEND Обязательно Адрес, куда складывать результаты задач Celery
GAMIFICATIONS

Добавлена автоматизация при установке сервиса:

jobs:    
  init-install:
    annotations: '"helm.sh/hook": post-install'
    activeDeadlineSeconds: 600
    backoffLimit: 3
    ttlSecondsAfterFinished: 120
    containers:
      init-install:
        name: '{{ include "helpers.app.name" . }}-init-install'
        command: ["sh", "-c"]
        args:
        - |
          python manage.py sync_thanks
          python manage.py sync_badges

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе GAMIFICATIONS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
SETTINGS

Добавлены переменные окружения:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе SETTINGS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python create_admin_panel_user.py $DJANGO_SUPERUSER_USERNAME $DJANGO_SUPERUSER_PASSWORD]
MEETINGS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
PROFILE_SYNC_QUERY_URL profile/internal/v2/list/

Добавлено задание (job) для создания суперадминистратора Django в сервисе MEETINGS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
FILESTORAGE

Удалены переменные среды:

Переменная Пример Необходимость Описание
CELERY_BROKER_URL Обязательно Адрес Celery
CELERY_RESULT_BACKEND Обязательно Адрес, куда складывать результаты задач Celery

Добавлены переменные среды:

Переменная Пример Необходимость Описание
REDIS_LOCATION redis://redis Обязательно Арес Redis
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе FILESTORAGE:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
CALENDAR

Удалены переменные среды:

Переменная Пример Необходимость Описание
CELERY_BROKER_URL Обязательно Адрес Celery
CELERY_RESULT_BACKEND Обязательно Адрес, куда складывать результаты задач Celery

Добавлены переменные среды:

Переменная Пример Необходимость Описание
REDIS_LOCATION redis://redis Обязательно Арес Redis
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе CALENDAR:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
EVENTS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе EVENTS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
GROUPS

Удалены переменные окружения:

Переменная Пример Необходимость Описание
CELERY_BROKER_URL Обязательно Адрес Celery
CELERY_RESULT_BACKEND Обязательно Адрес, куда складывать результаты задач Celery

Добавлены переменные окружения:

Переменная Пример Необходимость Описание
REDIS_LOCATION redis://redis Обязательно Арес Redis
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
ENABLE_PUBLIC_API_ALPHA 1 Включение/Выключение PublicAPI. ВНИМАНИЕ! Использование Alpha-версии PublicAPI запрещено на продуктивных стендах! Используется только для прототипирования на локальных/тестовых стендах

Добавлено задание (job) для создания суперадминистратора Django в сервисе GROUPS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
REPORTS

Удалены переменные среды:

Переменная Пример Необходимость Описание
REDIS_DB 8
REDIS_HOST reports-redis Арес Redis для сервиса
REDIS_PORT "6379" Порт Redis для сервиса
TERMSOFUSE

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе TERMSOFUSE:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
DICTIONARIES

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
ENABLE_PUBLIC_API_ALPHA 1 Включение/Выключение PublicAPI. ВНИМАНИЕ! Использование Alpha-версии PublicAPI запрещено на продуктивных стендах! Используется только для прототипирования на локальных/тестовых стендах

Добавлено задание (job) для создания суперадминистратора Django в сервисе DICTIONARIES:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
NOTIFICATIONS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
ENABLE_PUBLIC_API_ALPHA 1 Включение/Выключение PublicAPI. ВНИМАНИЕ! Использование Alpha-версии PublicAPI запрещено на продуктивных стендах! Используется только для прототипирования на локальных/тестовых стендах

Добавлено задание (job) для создания суперадминистратора Django в сервисе NOTIFICATIONS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
PROFILE

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
ENABLE_PUBLIC_API_ALPHA 1 Включение/Выключение PublicAPI. ВНИМАНИЕ! Использование Alpha-версии PublicAPI запрещено на продуктивных стендах! Используется только для прототипирования на локальных/тестовых стендах

Добавлено задание (job) для создания суперадминистратора Django в сервисе PROFILE:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
POLLS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе POLLS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
TASKS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_EMAIL ph-admin@people-hub.ru Обязательно Почта для для администратора Django
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе TASKS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python manage.py createsuperuser --noinput || true]
ROLES

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе ROLES:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python create_admin_panel_user.py $DJANGO_SUPERUSER_USERNAME $DJANGO_SUPERUSER_PASSWORD || true ]
CMS

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django

Добавлено задание (job) для создания суперадминистратора Django в сервисе CMS:

add-admin:
  annotations: '"helm.sh/hook": post-install'
  activeDeadlineSeconds: 600
  backoffLimit: 3
  ttlSecondsAfterFinished: 120
  containers:
    add-admin:
      name: '{{ include "helpers.app.name" . }}-add-admin'
      command: [sh, -c]
      args: [python create_admin_panel_user.py $DJANGO_SUPERUSER_USERNAME $DJANGO_SUPERUSER_PASSWORD || true ]
TAGS

Запуск сервиса через скрипт /app/scripts/start.sh

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
SERVER_PORT 8000 Обязательно Порт контейнера
UVICORN_WORKERS 4 Обязательно Количество рабочих процессов uvicorn
REACTIONS

Запуск сервиса через скрипт /app/scripts/start.sh

Добавлены переменные среды:

Переменная Пример Необходимость Описание
DJANGO_SUPERUSER_USERNAME ph-admin Обязательно Логин для администратора Django
DJANGO_SUPERUSER_PASSWORD ***** Обязательно Пароль для администратора Django
SERVER_PORT 8000 Обязательно Порт контейнера
UVICORN_WORKERS 4 Обязательно Количество рабочих процессов uvicorn