Class: Sambot::DeveloperWorkflow::Session

Inherits:
Object
  • Object
show all
Defined in:
lib/sambot/developer_workflow/session.rb

Constant Summary collapse

BASTION_HOST_IP =
'146.177.10.174'
FORWARDS =
{
  'chef.brighter.io': { ip: '127.0.0.13', port: 443, local_port: 9013 },
  'teamcity.brighter.io': { ip: '127.0.0.14', port: 80, local_port: 9014 },
  'splunk.brighter.io': { ip: '127.0.0.15', port: 80, local_port: 9015 },
  'jenkins.brighter.io': { ip: '127.0.0.16', port: 80, local_port: 9016 },
  'vault.brighter.io': { ip: '127.0.0.1', port: 8200, local_port: 9017 }
}

Instance Method Summary collapse

Instance Method Details

#start(username, password, sudo_password) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/sambot/developer_workflow/session.rb', line 29

def start(username, password, sudo_password)
  Tunnels.stop
  unless verify_credentials(username, password)
    UI.error 'The session could not be started'
    exit
  end
  DNS.update_hosts(FORWARDS)
  Proxy.start(FORWARDS)
  Networking.configure(FORWARDS)
  Tunnels.start(username, password, BASTION_HOST_IP, FORWARDS)
  setup_secrets_management(username, password)
  UI.info("Your session has now started - run `sambot session stop` to close it")
end

#stopObject



43
44
45
46
47
# File 'lib/sambot/developer_workflow/session.rb', line 43

def stop
  Tunnels.stop
  DNS.reset_hosts(FORWARDS)
  Proxy.stop
end