Class: PublishToWeb::Directory
- Inherits:
-
Object
- Object
- PublishToWeb::Directory
show all
- Defined in:
- lib/publish_to_web/directory.rb
Defined Under Namespace
Classes: HttpResponseError
Instance Attribute Summary collapse
Instance Method Summary
collapse
Constructor Details
#initialize(host:, config:, logger:) ⇒ Directory
Returns a new instance of Directory.
18
19
20
21
22
|
# File 'lib/publish_to_web/directory.rb', line 18
def initialize(host:, config:, logger:)
@host = host
@config = config
@logger = logger
end
|
Instance Attribute Details
#config ⇒ Object
Returns the value of attribute config.
16
17
18
|
# File 'lib/publish_to_web/directory.rb', line 16
def config
@config
end
|
#host ⇒ Object
Returns the value of attribute host.
16
17
18
|
# File 'lib/publish_to_web/directory.rb', line 16
def host
@host
end
|
#logger ⇒ Object
Returns the value of attribute logger.
16
17
18
|
# File 'lib/publish_to_web/directory.rb', line 16
def logger
@logger
end
|
Instance Method Details
#directory_public_key_sha1 ⇒ Object
28
29
30
|
# File 'lib/publish_to_web/directory.rb', line 28
def directory_public_key_sha1
info["pubkey_sha1"] if info
end
|
#hardware_id ⇒ Object
Returns the stored hardware_id or generates a new one
47
48
49
|
# File 'lib/publish_to_web/directory.rb', line 47
def hardware_id
config.hardware_id ||= "aal-#{SecureRandom.uuid}"
end
|
#license_key ⇒ Object
Returns the stored license_key or requests a new one
52
53
54
|
# File 'lib/publish_to_web/directory.rb', line 52
def license_key
config.license_key ||= create_license_key
end
|
#node_name ⇒ Object
32
33
34
|
# File 'lib/publish_to_web/directory.rb', line 32
def node_name
info["node_name"] if info
end
|
#private_key ⇒ Object
36
37
38
39
|
# File 'lib/publish_to_web/directory.rb', line 36
def private_key
ensure_valid_identity!
config.private_key
end
|
#public_key ⇒ Object
41
42
43
44
|
# File 'lib/publish_to_web/directory.rb', line 41
def public_key
ensure_valid_identity!
config.public_key
end
|
#remote_port ⇒ Object
24
25
26
|
# File 'lib/publish_to_web/directory.rb', line 24
def remote_port
info["port"] if info
end
|
#set_node_name(node_name) ⇒ Object
60
61
62
63
64
65
66
67
68
69
70
|
# File 'lib/publish_to_web/directory.rb', line 60
def set_node_name(node_name)
logger.info "Setting node name at directory to #{node_name}"
response = HTTP.post url_for('set_node_name'), form: { license_key: license_key, node_name: node_name }
if (200..299).include? response.status
logger.info "New node name registered successfully"
info refresh: true
true
else
raise HttpResponseError.new("Failed to set new node name in directory", response)
end
end
|
#set_version ⇒ Object
72
73
74
75
76
77
78
79
80
|
# File 'lib/publish_to_web/directory.rb', line 72
def set_version
logger.info "Setting version at directory to #{version}"
response = HTTP.post url_for('set_version'), form: { license_key: license_key, version: Shellwords.shellescape(version) }
if (200..299).include? response.status
true
else
raise HttpResponseError.new("Failed to set version in directory", response)
end
end
|
#version ⇒ Object
56
57
58
|
# File 'lib/publish_to_web/directory.rb', line 56
def version
"platform-alpha"
end
|