Примітки до релізу 1.9.4

Пропонуємо ознайомитися з останніми примітками до релізу нашого програмного продукту. У цьому розділі ми надаємо інформацію про нові функції, оновлення компонентів, виправлення помилок, оптимізацію продуктивності та покращення безпеки.

Розробка

Категоризація доступних послуг у Кабінетах користувачів

Можливість використання конфігурації репозиторію регламенту для налаштування групування послуг в Кабінеті посадової особи.
Створення нових груп доступних послуг для відображення в кабінетах користувачів через інтерфейс Адмін порталу.
Додавання не згрупованих бізнес-процесів до наявних та нових груп для відображення у Кабінетах користувачів через інтерфейс адміністративного порталу.
Сортування груп, бізнес-процесів в групах та поза групами для відображення в кабінетах користувачів через інтерфейс адміністративного порталу у версії-кандидат.
Зміна назви та видалення груп доступних послуг через інтерфейс Адмін порталу.
Збереження змін на вкладці "Відображення в кабінетах" у поточній версії-кандидат через інтерфейс Адмін порталу.
Виключення бізнес-процесів з груп через інтерфейс Адмін порталу.
Перегляд доступних груп, послуг в них та поза групами у версії-кандидат та Мастер версії через інтерфейс адмін-порталу.
Відображення груп доступних послуг за категоріями для користувачів Кабінету посадової особи/отримувача послуг.
Відображення збережених змін на вкладці "Відображення в кабінетах" в розділі "Огляд версії" інтерфейсу адмін-порталу.
Видалення process definition із груп при виклику ендпоінта видалення бізнес-процесу.
Міграція груп для наявних реєстрів.
Оптимізовано рендеринг сторінки "Відображення в кабінетах".

Внесення змін до файлу описів структур таблиць моделі даних реєстру через вебредактор коду

Підтвердження змін у файлі описів структур таблиць моделі даних реєстру через вебредактор коду у версії-Кандидаті.
Перегляд файлу описів структур таблиць моделі даних реєстру через вебредактор коду для версії-кандидата та Майстер-версії.
Відображення статусу оновлення структур таблиць моделі даних, здійснених через вебредактор коду.
Редагування файлу опису структур таблиць моделі даних реєстру для Версії Кандидата, використовуючи автопідказки, автодоповнення та аналіз коду згідно з liquibase та DDM xsd.
Відображення сторінок помилок при перегляді переліку таблиць при відсутності файлу опису моделі даних та неуспішному запиті файлу у майстер-версії.

Можливість пагінації пошукових запитів

Можливість налаштування отримання інформації про загальну кількість знайдених елементів при створенні критеріїв пошуку (SC) для коректного налаштування пагінації користувачів.

Впровадження загального SOAP-конектора для взаємодії з "Трембіта"

Додано автодоповнення для JUEL функції get_trembita_auth_token() у візуальному редакторі коду для Версії Кандидат.
Розробникам регламенту надана можливість виклику із БП довільного реєстру-учасника ШБО "Трембіта", використовуючи універсальний SOAP-конектор.
Адміністраторам реєстру надана можливість налаштувати інтеграцію із довільною зовнішньою системою-учасником ШБО Трембіта через SOAP протокол в інтерфейсі Control plane.

Швидкі посилання до сервісів у Control Plane

Додано посилання на Openshift, pgAdmin, Kibana, Swagger, Redash та інші адміністративні ендпоінти в інтерфейсі Control Plane для зручності адміністратора реєстру.

Конфігурація перевірки в ЄДР при логіні юридичних осіб до Кабінету отримувача послуг

Можливість налаштовування перевірки в ЄДР для користувачів, що обрали вхід "Для бізнесу" на сторінці автентифікації для технічного адміністратора реєстру.
Забезпечено можливість автентифікації для отримувачів послуг-ФОП, представників ФОП або ЮО, обираючи режим "Для бізнесу" та використовуючи КЕП без відповіді ЄДР.

Видалення попередньої версії автогенерованого коду при розгортанні регламенту

Впроваджено автоматичну заміну коду новою версією у Gerrit реєстру в репозиторії для технічного адміністратора реєстру.
Забезпечено автоматичне оновлення версій Docker images в Nexus реєстру останньою версією для технічного адміністратора реєстру.
У Kafka реєстру тепер відображаються тільки топіки для сервісів API, що використовуються в останній версії реєстру, для технічного адміністратора реєстру.
Відмова від необхідності змінювати версію регламенту в структурі регламенту після кожної зміни для розробників та моделювальників регламенту.

Видалення API по роботі з масивами даних для наявних таблиць

Додано можливість зміни налаштувань на рівні створення таблиць для розробників регламенту, що впливає на поведінку згенерованого коду API.

Запуск бізнес-процесу за розкладом

Додано референтний приклад бізнес-процесу для розробників та моделювальників регламенту, що демонструє запуск бізнес-процесу за таймером.

Відображення масивів даних у вигляді таблиць на формах БП з можливістю виклику інших БП для певного рядка

Додано можливість налаштовувати компонент EditGrid для роботи в режимі "тільки для перегляду" для розробників регламенту.
Користувачі Кабінету посадової особи та отримувачі послуг можуть переглядати даних UI-форми в режимі "read only" та виконувати дії стосовно обраного запису таблиці.
Розробникам регламенту додано можливість налаштовувати набір дій, які можна виконати стосовно окремих записів таблиці.
Моделювальникам реєстру надано можливість відображати масиви даних у вигляді таблиць на формах БП з можливістю виклику інших БП для певного рядка.
Розроблено тестовий БП для функціональності вибору одного рядка в таблиці та запуску для нього БП.

Можливість обирати декілька рядків в таблиці та запускати для них БП

Моделювальникам реєстру додано можливість обирати декілька рядків в таблиці та запускати для них бізнес-процеси.
Розробникам регламенту надано можливість налаштовувати активацію обрання декількох записів з таблиці для виконання стосовно них дій.
Користувачі Кабінету посадової особи та отримувачам послуг можуть ініціювати виконання бізнес-процесів з даними декількох обраних рядків з таблиці.
Розробникам регламенту додано можливість налаштовувати ширину полів компонентів для відображення в таблиці EditGrid.
Розроблено тестовий бізнес-процес для функціональності вибору одного або декількох рядків в таблиці та запуску для них бізнес-процесів.
Оптимізовано рендеринг таблиці для забезпечення кращої продуктивності.

Автореєстрація для посадових осіб

Додано можливість для моделювальників реєстру дати можливість посадовим особам проходити самореєстрацію з ручним або автоматичним модеруванням.
Адміністраторам реєстру надано можливість налаштовувати самореєстрацію посадових осіб.
Розроблено референтні приклади бізнес-процесів автореєстрації посадової особи з автоматичною та ручною модерацією для моделювальників реєстру.
Посадові особи можуть після автентифікації в кабінеті автоматично почати процес самореєстрації, якщо він змодельований в реєстрі та налаштована автореєстрація.
Розробникам регламенту надано окреме типове розширення Save user roles для внесення змін до переліку регламентних ролей користувача.

Зміна логіки роботи Cleanup-процесу видалення регламенту

Додано можливість виконати cleanup зі збереженням поточного регламенту, регулюючи процес вхідним параметром DELETE_REGISTRY_REGULATIONS_GERRIT_REPOSITORY.
Розроблено механізм очищення артефактів Docker у Nexus до Cleanup для запобігання переповненню пам’яті.

Моніторинг показників виконання бізнес-процесів

Додано можливість для технічного адміністратора реєстру моніторити показники виконання бізнес-процесів через дашборд.

Оптимізація збирання логів для спрощення їх аналізу у виробничому середовищі

Налаштовано логування Kong у форматі JSON.
Додано контекстну інформацію до логів form-schema-provider.
Додано логування responseCode до registry-rest-api.
Покращено логування для Keycloak.
Зменшено рівень логування для kafka-кластера у виробничому режимі.
Зменшено рівень логування в Jenkins.
Змінено рівень логування Ceph (rgw, mon).
Вирівняно структуру логів для сервісів реєстру.
Прибрано логи Crawling result set у registry-regulation-mng.
Додано логування до сервісу DSO для деталізації помилок ініціалізації контексту.
Перевірено та вимкнено логування cookie header в усіх BE-сервісах.

Технічна підтримка, регулярні активності, покращення

Додано rebase для security-header гілки до master у proxy-mode pipeline.
Змінено значення за замовчуванням для параметра CP_GERRIT_BRANCH на security-header в ci-proxy pipeline.
Додано крок збірки npm до control-plane-console.
Оновлено ReportPortal до версії 5.7.4.
Створено автотести для налаштувань зовнішніх систем.
Видалено етапи безпеки зі спеціальних гілок розробки.
Створено pipeline для публікації обраної версії installer в S3 bucket.
Змінено час розкладу старту/стопу кластерів згідно з переходом на літній час.

Інші впровадження

Створено автотест для getUsersByRoleFromKeycloak делегату.
Створено автотести для JUEL функцій: initiator(), completer(), system_user().
Можливість викликати SOAP-ендпоінти з бізнес-процесу.
Додано автотест до officer та citizen порталів, який перевіряє валідаційну помилку (422 статус код) при додаванні файлу з некоректним розширенням у стилізований компонент "File" на формах БП.
Додано можливість застосовувати зміни до мастер версії без проходження пайплайну розгортання та перевірки на версії-кандидаті в адмін-порталі.
Оновлено реєстровий gerrit-operator до останньої EDP-версії.
Адаптовано onboarding-автотести у consent test suite для перевірки addRoleToKeycloakUser та removeRoleFromKeycloakUser делегату.
Автоматизовано налаштування підтримки https у minio та vault на цільових оточеннях в AWS.
Стабілізовано checkSortingOnTablePageInMasterVersion.
Підготовлено до виводу з використання low-code-form-data-storage Ceph bucket.
Дослідження та оновлення нестабільного тесту AheadCandidateVersionOverviewTest.
Змінено обмеження за кількістю записів у csv-файлі із 50 до 600.
Автоматизовано оновлення CRD для jenkins-operator, gerrit-operator, keycloak-operator та edp-component-operator.
Автоматизовано застосування crunchy-postgres-operator.
Додано UI-автотести для перевірки сторінок "Загальні" у БП в розділі "Моделі процесів" для адмін-портал у майстер- та кандидат-версії.
Додано заборону для користувача підтверджувати нові запити на оновлення, доки master-build пайплайн не відпрацює попередній запит.
Створення дефолтних користувачів Сидоренко для officer та citizen порталу під час автоналаштування.
Оновлено Crunchy PGO до версії 5.3.0.
Оновлено kubectl/oc на gitops-агенті.
Оновлення версії моделі даних у репозиторії consent-data.
Видалено з репозиторію citus скрипти оновлення, які були призначені для міграції з citus на crunchy. Перейменовано репозиторій.
Обмеження використання [email protected].
Замінено назву параметра methodName у bpms ExternalSystemConnectorDelegate.
Оновлено camunda-auth-cli утиліту.
Відключено авто-rebase для RRM-сервісу на оточенні CICD2.
Створено новий репозиторій для автотестів platform-qa-tests.
Переміщення тестів компонента template-rest-api до основної бібліотеки — core lib.

Регресійні дефекти

Список регресійних дефектів. Натисніть, що розгорнути або згорнути блок.
Пайплайн із реплікації бакета rook-to-s3-lowcode-file-storage падає через битий файл у бакеті.
Пайплайн із по реплікації бакета rook-to-s3-datafactory-ceph-bucket падає через кількість директорій.
Перевірити механізм міграції з використання CEPH бакетів на Redis та видалити lowcode-form-data-storage bucket з усіх реєстрів.
Дослідження роботи Redash-viewer та Redash-admin автентифікації та встановлення скриптів, які потенційно породжують велику кількість запитів до keycloak системи, через що падає пода.
Параметризація використання maxmemory для компонента redis-sentinel.
Помилка error="no KongPlugin or KongClusterPlugin was found" в логах Kong поди
Видалення попередньої версії автогенерованого коду при розгортанні регламенту. Розгортання registry-rest-api і registry-kafka-api не залежить від версії.
Зміна іконки статусу інтеграції на зелену після натискання кнопки "Підтвердити/Додати".
Неправильне модальне вікно при додаванні нового запиту на оновлення якщо існує необроблений запит.
При редагуванні зовнішньої інтеграції із типом автентифікації Basic не відображається значення логіну.
Блокується можливість надати доступ до реєстру, якщо вже був доданий доступ до Зовнішньої системи з ім’ям наявного реєстру.
Після бекапу та відновлення реєстру при подальших змінах в реєстрі падає master-build job-а.
[EnvOne] Після відновлення реєстру під час підпису будь-якого процесу, отримуємо 500 помилку.
[vSphere] Не формується бекап PV grafana у НС grafana-monitoring.
[FE]Неправильна робота під час надання/видалення/заблокування доступу до платформи або системи якщо у системи й платформи однакові імена.
Видалено Shortcut-функціональність зі стилізованого Radio-компонента.
[FE] Дублювання компонентів у білдері стилізованого Edit Grid при активній опції "Custom Default Value" чи "Calculated Value".
Cleanup процес перестворює registry-regulation із порожнього шаблону, коли НЕ обрано чекбокс RECREATE_EMPTY.
[FE] Пошкодження форми, що створюється в білдері, через маніпуляції з однаковими API іменами в стилізованих компонентах Date/Time, Select, Edit Grid.
Після cleanup-процесу і розгортання регламенту, не створився build registry-kafka-api.
Збирач (Builder) адмін-порталу ховає попередження для будь-якої вбудованої помилки, якщо адмін переходить на Preview mode, а потім повертається до Builder форми.
[S23][REGRESSION][ST1] Регресійні дефекти 1.9.4 [PROD SUPPORT L3] Помилка liquibase після видалення регламенту з Cleanup-процесом.
Некоректна сторінка відповіді під час 403 помилки на citizen-portal при аутентифікації у кабінет (валідно для consent-data registry).
Виправити посилання на центральний Gerrit на сторінці перегляду реєстру.
Герб на історичному витягу занадто великий.
Пов’язані Select-запити не заповнюються даними.
Невірно генерується клас у registry-model для типу TEXT.
Додати додаткові умови при внесенні назви реєстру в settings.yml.
Не відображається іконка статусу у конфігурації реєстру в control-plane-console.
Не відображається номер збірки на сторінці "Інформація про реєстр" у блоці Конфігурація.
Видалити кнопку "Kebab-menu" з мастер версії з навігаційного меню в розгорнутих БП у розділі "Моделі процесів" у admin-tools.
Кожен новий CIDR стартує с нового рядка.
Властивість "Description" не працює в оновленому компоненті "Map" в admin-tools.
Створювати окремі кластерні ролі для розгортань Kong у кожному реєстрі.
Після створення нової версії кандидату та переходу до сторінки Таблиці (тимчасова БД ще не розгорнулась) після 30 сек очікування користувач бачить некритичну помилку "Щось пішло не так" в адмін-порталі.
Некоректні помилки в admin-tools під час 404 та 500 статус кодів у розділі "Таблиці" на вкладці "Перелік таблиць".
Дослідження проблеми працездатності keycloak системи.
Неуспішний пайплайн перевірки коду у випадку, коли створюється версія-кандидат при порожньому регламенті (відсутня модель даних).
Автоматичний pull майстер-версії не відбувається через відключення авто-rebase на cicd2.
Зайві записи налаштувань авторизації camunda для Historic Task.
Не можливо робити оновлення у базі даних системним користувачем.
При редагуванні groovy скриптів в Адмін Порталі не автодоповнюється функція save_digital_document_from_url().
Некоректний колір елемента кнопки "Додати" вимкненого "Edit Grid" на UI формах.
Через велику кількість відкритих версій-кандидатів (понад 30) система адмін-порталу починає гальмувати, й починаються зависання на стороні BE.
Дослідження проблеми із використанням параметра з \n символом у SC-запиті.
Автоматичний запуск крон job підчистки кешу (кожні 5 хв) може видалити щойно створені дані версії-кандидата.
Помилка 413 payload too large на запит http://form-submission-validation:8080/api/form-submissions/change-status-bp-change-status/validate, якщо оновлюється сутність великого обсягу даних.
Значно зросло зайняте аудит-логами місце на одному з kafka-брокерів реєстру PZM кластера Denovo.
Прибрати хард-код на кластері розробки у trembita-mock в репозиторії mdtu-ddm/general/registry-configuration/-/blob/main/deploy-templates/values.yaml.
Operational БД перестає коректно працювати через помилку з invalid permissions.
Через імпорт json-плагіну до Kong, при роботі з кабінетами логуються авторизаційні токени користувача.
Eндпоінт minio після оновлення кластера не оновився.
Прибрати з налаштування кількості з’єднань у PgPool (operational-pool-config) hardcoded-значення.
Не працює створення налаштувань бекапу компонентів реєстру у Control Plane.
Змінити налаштування видалення авторизацій, створених camunda-auth-cli, та видаляти усі авторизації які "contains" READ, CREATE_INSTANCE.
Додати можливість виконувати REST запити для пошуку даних, у яких присутній спецсимвол кома.
Користувач має бачити тільки ті версії реєстрів котрі відповідають версії адмін консолі.
Помилка зберігання даних під час оновлення на нову версію при зміні назви згенерованого об’єкта.
Додати рестарт поди process-history-service-persistence-deployment при невдалому з’єднанні з Kafka.
Падає розгортання оточень на redash-chart із помилкою ImportError: cannot import name 'DEPRECATED_SERVICE_NAMES' from 'botocore.docs'.
SOAP-ендпоінт дата фабрики не дає можливості використовувати read all запит на search condition.
Помилка NullPointerException при незбігу назви системи та метода у configuration.yml та в делегаті.
Відсутній toggle button "Edr check" у ds-citizen-authenticator-configuration у KeyCloak при оновленні реєстру на нову версію.
Додати можливість прокручувати вправо-вліво значення у Select-компоненті, якщо воно виходить за рамки компонента.
Відсутній service account istio-gateway у SCC anyuid.
Система не дає можливість створювати реєстри на версії 1.9.3 на оновленій платформі 1.9.4 в одній консолі control-plane.
Валідатор повинен пропускати групу із порожнім масивом processDefinition.
Group Sync operator версії 0.0.25 не підтримує Keycloak нижче 17 версії.
Додати можливість виключати initial load із розгортання з code-review пайплайну.
Не підтягуються дані з зовнішнього ресурсу на оновленому компоненті Select.
Не проходить реплікація екземплярів PostgreSQL.
Запуск пайплайну cleanup-of-version-candidate-db на реєстрі видаляє усі тимчасові БД.
Не працює відновлення реєстру із резервної копії.
Під час розгортання платформи з 0 система використовує некоректні сертифікати для DSO у секреті "digital-signature-data" у user-management сервісі.
Під час розгортання платформи з нуля пайплайн падає через помилку GroupSync.
Control-plane-nexus перезапускається під час кожного розгортання на cluster-mgmt.
При розгортанні платформи з нуля, cluster-mgmt процес падає з помилкою kong-global-resources.
При розгортанні платформи з нуля, cluster-mgmt процес падає з помилкою smtp-server.
Поле "Посилання" та розмір віджета тепер мають значення за замовченням при оновленні версії платформи.
Усунено неінформативність помилок в Kafka API при помилці виклику процедури.
При очищенні регламенту з cleanup-job, тепер видаляються дані з бази аудиту.
Усунено нестабільність розгортання e-shelter після проходження cleanup-процесу.
Виправлено проблеми зависання процесу cleanup-job та створення registry-regulations після cleanup-job.
Виправлено крок компіляції у компоненті common-web-app.
Полагоджено compile step на Code Review pipe.
Виправлено проблему, коли при створенні середовища з нуля, у пайплайн підтягується неправильний gerrit-користувач.
Не підтягуються дані із зовнішнього ресурсу на оновленому компоненті Select.
Користувач, створений у admin/openshift реалмі keycloak системи та з відсутньою роллю cp-registry-admin-{registryName}, може увійти до кабінету адміністратора регламенту.
Помилка error invoking function 'system_user' на e-shelter-prod.

Безпека

Покращення безпеки інфраструктури Платформи

[S23][PST][SECURITY] Дефекти з безпеки 1.9.4 Build Process: Missing User Instruction

Покращення безпеки бібліотек Spring-фреймворку
  • [S23][ST2][SECURITY] Дефекти з безпеки 1.9.4 [Security] [Group] 1.9.4 Vulnerabilities in org.springframework.boot:spring-boot

  • [S23][ST2][SECURITY] Дефекти з безпеки 1.9.4 [Security] [Group] 1.9.4 Vulnerabilities in org.springframework:spring-beans

  • [S23][ST2][SECURITY] Дефекти з безпеки 1.9.4 [Security] [Group] 1.9.4 Vulnerabilities in org.springframework:spring-webmvc

Покращення бібліотек Postgresql

[S23][ST1][SECURITY] Дефекти з безпеки 1.9.4 [Security][Group] 1.9.4 Postgresql vulnerability mitigation