This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-01-22
Channels
- # announcements (2)
- # beginners (42)
- # calva (2)
- # cider (13)
- # clara (2)
- # cljdoc (1)
- # cljs-dev (8)
- # clojure (118)
- # clojure-australia (1)
- # clojure-europe (3)
- # clojure-finland (2)
- # clojure-italy (42)
- # clojure-japan (1)
- # clojure-nl (2)
- # clojure-spec (26)
- # clojure-uk (58)
- # clojurescript (83)
- # cursive (6)
- # data-science (2)
- # datomic (13)
- # devcards (2)
- # duct (9)
- # figwheel-main (4)
- # fulcro (11)
- # graphql (51)
- # jobs (1)
- # juxt (14)
- # kaocha (1)
- # off-topic (24)
- # re-frame (65)
- # reagent (4)
- # reitit (19)
- # remote-jobs (8)
- # shadow-cljs (50)
- # specter (3)
- # speculative (1)
- # vim (5)
- # yada (50)
interesssante non avevo pensato a questi drawbacks delle environment variables
voi come gestite la questione della configurazione?
stavo provando Aero, per vedere se possiamo togliere il env variables per tutte le cose che non sono secrets perlomeno
e sembra ottimo, ma ci sono cose tipo: - in Country X questa feature dovrebbe essere sempre disabilitata, - su Environment Y (staging/prod etc), questa feature dovrebbe sempre essere abilitata - e magari a volte dovrebbe prendere la precedenza il Country o a volte l'Environment
Dhall? 🙂
Noi stiamo iniziando a usare il pattern di avere tutta la config Dhall in una singola ENVVAR, che poi leggi nel programma
Puoi usare le Enum, gli Optional e avere logica condizionale, etc
Così non devi avere la logica lato applicativo
E la Config è typecheckata, per cui se non conforma al tipo l’app non parte
io mi trovo molto bene con https://github.com/tolitius/cprop e' molto flessibile, versatile e imho meno opinionated rispetto agli conf manager
dhall sarebbe interessante, ma convincere parecchia gente prima di usarlo
cprop sembra anche buono, ce ne sono 1000 di librerie diverse per gestire la configurazione 😮
per librerie preferisco fidarmi di Juxt mi sa
si anche noi abbiamo environ
ma non fa niente delle cose che vorrei al momento environ
@nilrecurring quindi col tuo dhall-clj
si può già iniziare? 🙂
Yep, col caveat che le call http non ci sono ancora, però gli import da envvar e file locali si 🙂
E.g. se hai la config in una envvar e il tipo della config in ./Config.dhall
puoi fare (input "env:APP_CONFIG : ./Config.dhall")
Grazie! Forse dovrei submittare a qualche conf, perchè sto compilatore è un trip
un altra cosa che mi da' fastidio delle env variables e' che se vuoi cambiare una flag al volo per testare qualcosa di diverso
devi riavviare tutto l'ambaradan (a meno di non andare a modificare a mano nel codice dove viene usata)
con uno di queste librerie piu' furbe + integrant/component posso fare il reload della configurazione piu' facilmente
certo, da usare insieme intendo
con integrant ancora piu' facile
beh integrant mi piace di piu'
ed e' James Reeves approved
(nel senso che e' una delle sue 1000 librerie :D)