Как стать автором
Обновить

Комментарии 11

«он позволяет отделять приложения от системы», однако «они могут быть заданы на системном уровне». Два экземпляра приложения с разной конфигурацией через переменные окружения? Конфликт имен переменных? Явный конфиг лучше неявных переменных.
Два экземпляра приложения с разной конфигурацией через переменные окружения?

MY_ENV_VARIABLE=1 ./app
MY_ENV_VARIABLE=2 ./app

А как вы управляете конфигурацией в вашем приложении?

Через конфиг файлы, например json, в GO же есть прям из коробки отличная возможность описать структуру и замапить ее.

Да, существуют пакеты, предлагающие готовое решение для конфигурации вашего приложения

А то что у вас используется "github.com/joho/godotenv" это несчитово?


Мы используем например "github.com/crgimenes/goconfig"

Использую переменные окружения для указания пути к файлам конфигурации. Такой вариант хорош, кроме всего прочего, и кроссплатформенностью — не приходится зашивать в код пути к файлам, которые могут зависеть от ОС.

Есть еще простенькая библиотека https://github.com/caarlos0/env. Она позволяет мапить переменные окружения на структуру в стиле encoding/json

сначала вносил конфигы через ясон и хмл, потом пытался через флаги, потом пытался как переменные окружения…

по моему, если бы разрешалось вносить параметры извне в соответствии с некоторым локальным файлом — это бы упростило жизнь и избавило бы от многих дискуссий.
Если это утилита, github.com/urfave/cli удобная библиотека для разруливания конфигурации.
Переменные окружения сами собой не появятся. Вопрос: а как вы устанавливаете переменные окружения? Как вы отслеживаете и храните историю изминений переменных окружения?

статью по диагонали читали? автор же пишет что они используют github.com/joho/godotenv и .env файл
Историю изменений такого обычно не ведут (это же всякие пароли и т.п.)

В go-awesome списке целая пачка библиотек для конфигурации через ENV-переменные, но фаворит вроде github.com/caarlos0/env
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории