No description
  • Go 99.2%
  • Shell 0.8%
Find a file
Александр Федорюк bebb8ac215
All checks were successful
continuous-integration/drone/tag Build is passing
Добавление игнорирования параметра
2023-04-12 09:14:01 +03:00
.vscode Update modules 2022-11-22 12:30:39 +03:00
db Fix table schema 2023-03-22 10:20:45 +03:00
handler Добавление игнорирования параметра 2023-04-12 09:14:01 +03:00
lib Add logging 2022-12-02 14:46:03 +03:00
.drone.yml Update modules 2023-04-07 10:33:37 +03:00
.gitignore Добавление игнорирования параметра 2023-04-12 09:14:01 +03:00
docker-compose.yml Remove web-server and add function-sdk 2022-10-27 16:12:06 +03:00
docker-entrypoint.sh Fix containers 2022-11-12 14:40:17 +03:00
Dockerfile.amd64 Update docker containers 2023-03-16 15:43:24 +03:00
Dockerfile.arm64 Update docker containers 2023-03-16 15:43:24 +03:00
go.mod Update modules 2023-04-07 10:33:37 +03:00
go.sum Update modules 2023-04-07 10:33:37 +03:00
main.go Fix config logger 2022-12-02 15:10:27 +03:00
main_test.go Refactor function listParams 2023-03-16 15:40:11 +03:00
README.md Добавление игнорирования параметра 2023-04-12 09:14:01 +03:00

Build Status

Настройки

Модуль для хранения настроек в БД. Сервис предназначен для хранения централизованных настроек различных приложений и сервисов как внутренних, так и внешних. Данный сервис является простой службой и работает как система запрос/ответ.

Для управления настройками через систему администрирования используется web-интерфейс.

Установка

Подготовка

Подготовка пакетов

go install github.com/swaggo/swag/cmd/swag@latest

Генерация описания

swag init

Использование

Для получения параметров (getParam) используется массив строк в формате ["one","two","three"]. В итоге функция должна вернуть структуру JSON вида {"one":"param1","two":"param2","three":"param3"}. Если какой-то параметр из запрошенных не будет найден, то он будет проигнорирован и не добавлен в возвращаемый результат.

Для установки параметров (setParam) принимает JSON вида {"one":"param1","two":"param2","three":"param3"} и устанавливает значение в БД.

Список параметров (listParams) возвращает список (массив) параметров. В качестве параметра может быть JSON вида {"param_name":{recursive:false}} В данном случае будет найден параметр, от которого будут искаться вложенные параметры. Если указать вариант как {"":{recursive:true}}, то список будет искаться от корня. Это равносильно если в качестве параметра запроса ничего не передавать. Флаг recursive говорит нужно ли запрашивать весь список параметров рекурсивно. true - да, false - нет.

Для удаления параметра (removeParam) используется массивстрок в формате ["one","two","three"]. В итоге функция должна вернуть массив строк JSON вида ["one","two","three"] включающий список тех параметров, которые были успешно удалены.

Параметры one.two и two не одно и тоже, так как, по сути первый параметр имеет вложенность (two в one), а второй вариант находится в корне параметров.

Параметры

Параметры устанавливаются переменными окружения.

ENV

Устанавливается в development/production. По умолчанию development.

NATS_ADDR

Адрес подключения к NATS.io

DB_DRIVER

Драйвер для подключения к БД. Возможные варианты:

  • sqlite - SQLite (поумолчанию)
  • postgres - PostgreSQL
  • mysql - MySQL/MariaDB
  • sqlserver - SQLServer
DB_NAME

Имя БД. Если драйвер указан sqlite, то указывается пут на диске

DB_LOGIN

Логин для подключения к БД

DB_PASSWORD

Пароль подключения к БД

DB_HOST

Адрес подключения к БД

DB_PORT

Порт подключения к БД. Если не указан, то используется, который задан разработчким по умолчанию.

TIMEZONE

Временная зона.

QUEUE_LOG

Название очереди логов