Module: InteractiveSetup

Includes:
Contracts
Defined in:
lib/git-ready/interactive_setup.rb,
lib/git-ready/interactive_setup/workspace.rb,
lib/git-ready/interactive_setup/github_access_token.rb

Defined Under Namespace

Modules: GitHubAccessToken, Workspace

Class Method Summary collapse

Class Method Details

.save(settings) ⇒ Object



33
34
35
36
37
38
# File 'lib/git-ready/interactive_setup.rb', line 33

def self.save(settings)
  config_path = File.expand_path '~/.config'
  Dir.mkdir config_path unless Dir.exist? config_path
  File.write "#{config_path}/git-ready.yaml", YAML.dump(settings)
  Announce.success "Configuration saved to #{config_path}"
end

.startObject



12
13
14
15
16
17
18
19
# File 'lib/git-ready/interactive_setup.rb', line 12

def self.start
  Announce.info 'Entering Interactive Setup (^c to exit)'
  settings = {}
  settings['workspace'] = Workspace.setup
  settings['github_access_token'] = GitHubAccessToken.setup
  save settings if valid? settings
  exit
end

.valid?(settings) ⇒ Boolean

Returns:

  • (Boolean)


22
23
24
25
26
27
28
29
30
# File 'lib/git-ready/interactive_setup.rb', line 22

def self.valid?(settings)
  if settings.value? nil
    Announce.failure 'Settings are not valid.'
    Announce.info "Settings were #{settings}"
    false
  else
    true
  end
end