Skip to content

NeonSalamander/ProtoConfigServerRuby

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProtoConfigSeverRuby

Prototype ConfigServer in ruby for learn

Сервер управления конфигурациями, по аналогу Spring Cloud Config Server

Настройки сервера config.yml:

  • port: Порт на котором будет доступен сервер
  • use_auth: true если нужно проводить аутентификацию пользователей из файла users.yml
  • timezone: Таймзона для корректной работы периодических задач
  • repository_url: Адрес репозитория с конфигурациями
  • cron_duration: Периодичность запуска задачи по обновлению репозитория

При запуске в папку GitRepoLocal клонируется репозиторий с конфигурациями который периодически обновляется.

Получение настроек идет посылкой GET запроса на адрес сервера с указанием в заголовках запроса параметра APIKey с токеном присуствующим в файле users.yaml, если аутентификация не нужна то в настройках ее можно отключить и проверки наличия параметра и валидности токена не будет.

Разделение приложений настройки которых запрашиваются у сервера идет посредством формирования url http(s)://адрес_сервера:порт/имя_приложения Имя приложения и файл с конфигурацией одинаковые.

Дальнейшие задачи

  • Работа над ошибками
  • Логирование
  • Вывод содержимого настроек в зависимости от формата json/yaml

About

Prototype ConfigServer in ruby

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages