Rails web app su GitHub

Vorrei utilizzare GitHub come repo per un’app Rails e renderla pubblica.
Quali sono i file che è bene non committare? (Penso a
config/initializers/secret_token.rb, giusto? Quali altri?)

Grazie mille,
i

(wow! Incredibile! Funzionano gli accenti su ruby-forum!!! :open_mouth: )

il secret_token puoi anche rigenerarlo successivamente (per esempio dopo
che hai
clonato il repo). direi di tenere nascosti i file di config che
contengono
passwords (es: config/database.yml).

questo discorso vale anche per lo sviluppo in team, di norma si crea un
file
.sample in modo da offrire un file di partenza.

ciao,
A.

Il 10/09/2012 10:30, Iwan B. ha scritto:

Carissimo, un buon punto di partenza:

https://github.com/github/gitignore/blob/master/Rails.gitignore

questo e’ piu’ strtturato:

https://github.com/fortuity/rails3-gitignore

Come vedi ignora anche config/database.yml

che e’ il file dove ci stanno le password del database.

Una buona pratica e’:

cp database.yml example_database.yml

poi modifichi database.yml (che e’ in ignore) mentre tieni
example_database.yml come template.

Puoi dare un occhio anche a queste soluzioni:
http://www.simonecarletti.com/blog/2009/06/capistrano-and-database-yml/

anche se il post e’ del 2009 …

Per glialtri settings forse conviene metterli tutti in un file yml e
caricarli con:

SETTINGS = YAML.load(IO.read(Rails.root.join(“config”, “settings.yml”)))
YourApp::Application.config.secret_token = SETTINGS[“secret_token”]

Soluzione presa da:
http://stackoverflow.com/questions/4412406/managing-security-for-an-open-source-rails-3-application-stored-at-github

Ciao

2012/9/10 Davide R. [email protected]

Puoi dare un occhio anche a queste soluzioni:
http://www.simonecarletti.com/blog/2009/06/capistrano-and-database-yml/
anche se il post e’ del 2009 …

Grazie per aver consigliato un mio link. Ti assicuro che ancora molto
attuale. :wink:

Riguardo alla domanda, una delle app pubbliche pi famose in assoluto
RubyGems.
https://github.com/rubygems/rubygems.org

Se osservi il sorgente, noterai una riga molto interessante.
https://github.com/rubygems/rubygems.org/blob/master/config/environments/production.rb#L27

require Rails.root.join(“config”, “secret”) if Rails.root.join(“config”,

“secret.rb”).file?

In fase di deploy, viene scritto un file secret.rb in config contentente
tutte le config private. Personalmente ho adottato questa pratica molto
tempo fa, in combinazione con
simpleconfighttps://rubygems.org/gems/simpleconfig e
le variabili di ambiente per ottenere un risultato molto simile
all’approccio adottato da Heroku con le config per application.

Il tutto sempre, e come pratica, indipendentemente che l’app sia
pubblica o
meno. Non mi piace salvare password sensibili nei repository.

– Simone


Simone C.
Application Developer

Site & Blog: http://www.simonecarletti.com/
LinkedIn: http://linkedin.com/in/weppos
Skype: weppos

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs