Release 0.13 notes
ENVIRONMENT VARIABLES
Deprecated
ENGINE__SKIP_FEATURES_STATSENGINE__SKIP_STAT_ENTITY_COUNTKEYCLOAK__OPENID_POSTFIXKEYCLOAK__USERINFO_POSTFIXKEYCLOAK__ACCESS_ROLE- заменена наKEYCLOAK__ACCESS_ROLES
NEW
DEFAULT_ITEMS_LIMIT- значение по-умолчанию для параметра limit в GET методахKEYCLOAK__ACCESS_ROLES- роли пользователей, задаются в виде словаря:- ключи - "read", "transform", "load", "admin"
- значения - названия соответствующих ролей в Keycloak
Старая роль "axiom" заменяется на новые 4: "read", "transform", "load", "admin".
Эти роли необходимо добавить в Keycloak.
По-умолчанию:'{"read": "axiom_read", "transform": "axiom_transform", "load": "axiom_load", "admin": "axiom_admin"}'
KEYCLOAK__CACHE_LIFETIME- время жизни кеша токенов в секундах, по-умолчанию 7200DEFAULT_PERMISSION_LEVEL- значение permission по умолчанию для создаваемых объектов ("no_access","view","read","edit","full"), по-умолчанию:"full"UVICORN_RELOAD- влючение флага --reload в Uvicorn (по умолчанию False)
Настроки Keycloak 20+
Info
Актуально начиная с версии keycloak-20. Оригинальный тред с описанием проблемы: https://github.com/keycloak/keycloak/issues/16168
Для валидации токена приложение ходит в keycloak в эндпоинт /userinfo. Эндпоинт требует, чтобы
в переданном токене содержался scope='openid', без него поход в эндпоинт завершается возвращает ошибкой.
Этого можно добиться двумя способами:
- Без модификации настроек keycloak: при получении токена передавать параметр
scope=openid(и другие, если необходимо) - Настройка Keycloak, чтобы
openidвключался автоматом:- Manage -> Client Scopes -> Create client scope ->
openid-> Include in token scope [ON] - Clients -> {axiom client} -> Client scopes -> Add client scope ->
openid-> Default
- Manage -> Client Scopes -> Create client scope ->
Обновление справочников
Таблицы удаляются миграцией
meta.data_typemeta.data_type_defaultmeta.data_type_categorymeta.data_type_stats_map
Ручные изменения
Если справочник meta.ref_type_indicator не пустой, то надо выполнить запрос в схеме meta:
insert into meta.ref_type_indicator (
fs_type,
indicator,
author,
created_dttm,
updated_dttm
)
with indicators as (
select 'COUNT_DISTINCT' as ind union all
select 'COUNT_DISTINCT_PER_DTTM' union all
select 'NULL_COUNT' union all
select 'NULL_COUNT_PER_DTTM'union all
select 'NULL_SHARE' union all
select 'NULL_SHARE_PER_DTTM'
)
select
tp.fs_type,
i.ind,
'_root',
now(),
now()
from
indicators i
inner join meta.ref_fs_type tp on
1 = 1;
commit;
Migration
В миграции 0.12 присутствует ошибка, которая может привести к невозможности удаления некоторых загрузчиков. Ошибка исправляется в миграции релиза 0.14.
При возникновении проблем в процессе эксплуатации версий 0.12 и 0.13 рекомендуется в метасторе приложения выполнить следующий скрипт, исправляющий ошибку:
delete from meta.feature_table_x_entity_column
where table_rk not in (select table_rk from meta.feature_table)