Raggruppamento sulla gestione della configurazione e su come gestire le mie variabili / file di ambiente

-1

Dopo aver letto The 12 Factor App manifesto sono ancora confuso riguardo la sezione config (passaggio 3) , specialmente questa parte:

Another aspect of config management is grouping. Sometimes apps batch config into named groups (often called “environments”) named after specific deploys, such as the development, test, and production environments in Rails. This method does not scale cleanly: as more deploys of the app are created, new environment names are necessary, such as staging or qa. As the project grows further, developers may add their own special environments like joes-staging, resulting in a combinatorial explosion of config which makes managing deploys of the app very brittle.

In questo momento ho sezioni nel mio codice che assomigliano a:

if env.is_qa():
    my_dependency.use(path='creds_qa.json')
else:
    my_dependency.use(path='creds.json')

Questo in modo provocatorio viola questa regola, perché se domani avrò bisogno di un altro ambiente qa l'istruzione if crescerà. Ma faccio fatica a capire come affrontare questo caso d'uso di file generati da dipendenze di terze parti come chiavi segrete, capisco che quei file dovrebbero essere separati dalla base di codice della mia app. I servizi cloud che utilizzo mi forniscono una forma in cui posso impostare le variabili di ambiente, ma come posso archiviare un file? Forse un percorso per il file? Come cambierebbe il mio codice sopra?

Grazie, spero di aver spiegato chiaramente la mia domanda.

    
posta Dima Gimburg 19.12.2018 - 10:16
fonte

0 risposte