Module: Superbot::Cloud

Defined in:
lib/superbot/cloud.rb,
lib/superbot/cloud/api.rb,
lib/superbot/cloud/version.rb,
lib/superbot/cloud/web_login.rb,
lib/superbot/cloud/cli/cloud/validations.rb

Defined Under Namespace

Modules: Api, Validations Classes: WebLogin

Constant Summary collapse

LOGIN_URI =
'http://www.superbot.cloud/login/cloud'
CREDENTIALS_PATH =
File.join(Dir.home, '.superbot')
CREDENTIALS_FILE_PATH =
File.join(CREDENTIALS_PATH, 'cloud_token.json')
SCREENSHOTS_BASE_URL =
{
  local: "http://localhost:3002/v1",
  remote: "http://peek.superbot.cloud/v1"
}.freeze
WEBDRIVER_URL =
{
  local: "http://localhost:3000/webdriver/v1",
  remote: "http://webdriver.superbot.cloud:3000/webdriver/v1"
}.freeze
WEBDRIVER_TYPE =

use :local if you are running superbot webdriver cluster locally

:remote
VERSION =
"0.1.2"

Class Method Summary collapse

Class Method Details

.credentialsObject



18
19
20
21
22
# File 'lib/superbot/cloud.rb', line 18

def self.credentials
  return unless File.exist?(CREDENTIALS_FILE_PATH)

  @credentials ||= JSON.parse(File.read(CREDENTIALS_FILE_PATH), symbolize_names: true)
end

.save_credentials(data) ⇒ Object



24
25
26
27
28
29
30
31
# File 'lib/superbot/cloud.rb', line 24

def self.save_credentials(data)
  data.transform_keys!(&:to_sym)
  FileUtils.mkdir_p Superbot::Cloud::CREDENTIALS_PATH
  File.write Superbot::Cloud::CREDENTIALS_FILE_PATH, data.to_json
  "Logged in as #{data[:email]}".tap do |message|
    puts message
  end
end

.screenshots_url(session_id) ⇒ Object



37
38
39
# File 'lib/superbot/cloud.rb', line 37

def self.screenshots_url(session_id)
  "#{SCREENSHOTS_BASE_URL[WEBDRIVER_TYPE]}/#{session_id}"
end

.webdriver_urlObject



33
34
35
# File 'lib/superbot/cloud.rb', line 33

def self.webdriver_url
  WEBDRIVER_URL[WEBDRIVER_TYPE]
end