Module: GitHub::Config
- Defined in:
- lib/github-api-client/config.rb
Overview
Keeps all the configuration stuff
Constant Summary collapse
- Path =
Constant with defined all the paths used in the application
{ :dir => ENV['HOME'] + "/.github", :dbfile => ENV['HOME'] + "/.github/github.db", :migrations => ROOT + "/db/migrate", :secrets => ENV['HOME'] + "/.github" + "/secrets.yml" }
- Version =
File.read( ROOT + "/VERSION" )
- VERSION =
Version
- Secrets =
Secrets array, uses env vars if defined
case when ENV['GITHUB_USER'] && ENV['GITHUB_TOKEN'] { "login" => ENV['GITHUB_USER'], "token" => ENV['GITHUB_TOKEN'] } when `git config --global github.user` && !`git config --global github.token` { "login" => `git config --global github.user`.strip, "token" => `git config --global github.token`.strip } if `git config --global github.user` && !`git config --global github.token` else begin # If not env vars, then ~/.github/secrets.yml YAML::load_file(GitHub::Config::Path[:secrets])['user'] rescue Errno::ENOENT # Eye candy with rainbow puts <<-report You have three ways of defining your user to have authenticated access to your API: #{"1.".color(:cyan)} Put a file in: #{GitHub::Config::Path[:secrets].color(:blue).bright} Define in yaml: #{"user".color(:yellow).bright}: #{"login".color(:green).bright}: #{"your_login".color(:magenta)} #{"token".color(:blue).bright}: #{"your_token".color(:magenta)} #{"2.".color(:cyan)} Put #{"GITHUB_USER".color(:green).bright} and #{"GITHUB_TOKEN".color(:blue).bright} in your environment, so github-api-client can read it. #{"3.".color(:cyan)} Configure your global git profile as defined here #{"http://help.github.com/git-email-settings/".color(:blue).bright} report end end
- Options =
{ :verbose => false }
Class Method Summary collapse
- .reset ⇒ Object
-
.setup ⇒ nil
Sets up the database and migrates it.
Class Method Details
.reset ⇒ Object
67 68 69 70 |
# File 'lib/github-api-client/config.rb', line 67 def self.reset File.delete Path[:dbfile] setup end |
.setup ⇒ nil
Sets up the database and migrates it
55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/github-api-client/config.rb', line 55 def self.setup Dir.mkdir GitHub::Config::Path[:dir] rescue nil ActiveRecord::Base.establish_connection( :adapter => 'sqlite3', :database => GitHub::Config::Path[:dbfile] ) ActiveRecord::Migrator.migrate( GitHub::Config::Path[:migrations], nil ) if not File.exists? GitHub::Config::Path[:dbfile] end |