Le videocassette VCR giocano come il supporto dei test. È necessario trasferirli nel repository altrimenti i test non verranno eseguiti correttamente nella macchina di altri, o solo correggerli con una dipendenza esterna pesante che è una violazione del principio di testing.
Ovviamente è necessario nascondere le credenziali dal pubblico o dal team pur mantenendo quanto sopra.
La soluzione è filter_senstive_data
impostazioni e gemma Figaro.
All'inizio, This answer from Myron in a similar question può risolvere in gran parte il tuo problema.
Per impostare VCR
VCR.configure do |c|
c.filter_sensitive_data("<SOMESITE_PASSWORD>") do
ENV['SOMESITE_PASSWORD']
end
end
Il blocco sopra di codice copiato dalla risposta di Myron perché voglio aggiungere più tardi
Per ulteriori informazioni su questa impostazione, controllare il doc https://relishapp.com/vcr/vcr/v/2-5-0/docs/configuration/filter-sensitive-data
Ora, per ENV['SOMESITE_PASSWORD']
, può essere una credenziale reale utilizzando Figaro gem.
L'installazione di Figaro creerà un file config/application.yml
e lo aggiungerà a .gitignore
. Quindi, puoi inserire il nome utente e la password della credenziale senza rischiare di farlo trapelare.
fonte
2013-07-30 16:14:12
FWIW, l'autore del videoregistratore commette le cassette: https://twitter.com/myronmarston/status/199887944570503168. C'è un post da lui in cui entra più nel dettaglio, ma non riesco a trovarlo. – Dennis