factor-connector-tutum 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: e206706a75e632408d86913164433980305da088
|
4
|
+
data.tar.gz: 370233599862c52224bf5a684ad30a612ade53a5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2517dc56b473be6df235f63f36d6604e6375391918c6edce72f44539fd98d205577812bb6f306124f63bad703629a7162782a6acc30fa6fe747166c9e362d1b8
|
7
|
+
data.tar.gz: 1e1cc640fe4692f5ad17b2e9fdc443a6903435896b1061db90ee45f24769e7d2f78b6f363f37854883f890ededb68ffc8160c29b39203dead6356dd004076aac
|
@@ -0,0 +1,85 @@
|
|
1
|
+
require 'factor-connector-api'
|
2
|
+
require 'tutum'
|
3
|
+
|
4
|
+
Factor::Connector.service 'tutum_cluster' do
|
5
|
+
action 'list' do |params|
|
6
|
+
|
7
|
+
username = params['username']
|
8
|
+
api_key = params['api_key']
|
9
|
+
|
10
|
+
fail 'A username is required' unless username
|
11
|
+
fail 'An API key (api_key) is required' unless api_key
|
12
|
+
|
13
|
+
info 'Initializing connection to Tutum'
|
14
|
+
begin
|
15
|
+
session = Tutum.new(username, api_key)
|
16
|
+
response = session.node_clusters.list
|
17
|
+
info 'Parsing list response'
|
18
|
+
content = JSON.parse(response)
|
19
|
+
rescue
|
20
|
+
fail 'Failed to list clusters'
|
21
|
+
end
|
22
|
+
|
23
|
+
action_callback content
|
24
|
+
end
|
25
|
+
|
26
|
+
action 'get' do |params|
|
27
|
+
|
28
|
+
username = params['username']
|
29
|
+
api_key = params['api_key']
|
30
|
+
uuid = params['cluster_id']
|
31
|
+
|
32
|
+
fail 'A username is required' unless username
|
33
|
+
fail 'An API key (api_key) is required' unless api_key
|
34
|
+
fail 'A cluster UUID (cluster_id) is required' unless uuid
|
35
|
+
|
36
|
+
info 'Initializing connection to Tutum'
|
37
|
+
begin
|
38
|
+
session = Tutum.new(username, api_key)
|
39
|
+
response = session.node_clusters.get(uuid)
|
40
|
+
info 'Parsing cluster response'
|
41
|
+
content = JSON.parse(response)
|
42
|
+
rescue
|
43
|
+
fail 'Failed to retrieve cluster'
|
44
|
+
end
|
45
|
+
|
46
|
+
action_callback content
|
47
|
+
end
|
48
|
+
|
49
|
+
action 'create' do |params|
|
50
|
+
|
51
|
+
username = params['username']
|
52
|
+
api_key = params['api_key']
|
53
|
+
name = params['name']
|
54
|
+
node_type = params['node_type']
|
55
|
+
region = params['region']
|
56
|
+
target_num_nodes = params['target_num_nodes']
|
57
|
+
|
58
|
+
fail 'A username is required' unless username
|
59
|
+
fail 'An API key (api_key) is required' unless api_key
|
60
|
+
fail 'A cluster name is required' unless name
|
61
|
+
fail 'A node type (node_type) is required' unless node_type
|
62
|
+
fail 'A region is required' unless region
|
63
|
+
target_num_nodes ||= 1
|
64
|
+
|
65
|
+
params = {
|
66
|
+
name: name,
|
67
|
+
node_type: node_type,
|
68
|
+
region: region,
|
69
|
+
target_num_nodes: target_num_nodes
|
70
|
+
}
|
71
|
+
|
72
|
+
info 'Initializing connection to Tutum'
|
73
|
+
begin
|
74
|
+
session = Tutum.new(username, api_key)
|
75
|
+
response = session.node_clusters.create(params)
|
76
|
+
info 'Parsing creation response'
|
77
|
+
content = JSON.parse(response)
|
78
|
+
rescue
|
79
|
+
fail 'Failed to create cluster'
|
80
|
+
end
|
81
|
+
|
82
|
+
action_callback content
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'factor-connector-api'
|
2
|
+
require 'tutum'
|
3
|
+
|
4
|
+
Factor::Connector.service 'tutum_container' do
|
5
|
+
action 'list' do |params|
|
6
|
+
|
7
|
+
username = params['username']
|
8
|
+
api_key = params['api_key']
|
9
|
+
|
10
|
+
fail 'A username is required' unless username
|
11
|
+
fail 'An API key (api_key) is required' unless api_key
|
12
|
+
|
13
|
+
info 'Initializing connection to Tutum'
|
14
|
+
begin
|
15
|
+
session = Tutum.new(username, api_key)
|
16
|
+
response = session.containers.list
|
17
|
+
info 'Parsing list response'
|
18
|
+
content = JSON.parse(response)
|
19
|
+
rescue
|
20
|
+
fail 'Failed to list containers'
|
21
|
+
end
|
22
|
+
|
23
|
+
action_callback content
|
24
|
+
end
|
25
|
+
|
26
|
+
action 'get' do |params|
|
27
|
+
|
28
|
+
username = params['username']
|
29
|
+
api_key = params['api_key']
|
30
|
+
uuid = params['container_id']
|
31
|
+
|
32
|
+
fail 'A username is required' unless username
|
33
|
+
fail 'An API key (api_key) is required' unless api_key
|
34
|
+
fail 'A container UUID (container_id) is required' unless uuid
|
35
|
+
|
36
|
+
info 'Initializing connection to Tutum'
|
37
|
+
begin
|
38
|
+
session = Tutum.new(username, api_key)
|
39
|
+
response = session.containers.get(uuid)
|
40
|
+
info 'Parsing container response'
|
41
|
+
content = JSON.parse(response)
|
42
|
+
rescue
|
43
|
+
fail "Failed to retrieve the container's information"
|
44
|
+
end
|
45
|
+
|
46
|
+
action_callback content
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'factor-connector-api'
|
2
|
+
require 'tutum'
|
3
|
+
|
4
|
+
Factor::Connector.service 'tutum_node' do
|
5
|
+
action 'list' do |params|
|
6
|
+
|
7
|
+
username = params['username']
|
8
|
+
api_key = params['api_key']
|
9
|
+
|
10
|
+
fail 'A username is required' unless username
|
11
|
+
fail 'An API key (api_key) is required' unless api_key
|
12
|
+
|
13
|
+
info 'Initializing connection to Tutum'
|
14
|
+
begin
|
15
|
+
session = Tutum.new(username, api_key)
|
16
|
+
response = session.nodes.list
|
17
|
+
info 'Parsing list response'
|
18
|
+
content = JSON.parse(response)
|
19
|
+
rescue
|
20
|
+
fail 'Failed to list nodes'
|
21
|
+
end
|
22
|
+
|
23
|
+
action_callback content
|
24
|
+
end
|
25
|
+
|
26
|
+
action 'get' do |params|
|
27
|
+
|
28
|
+
username = params['username']
|
29
|
+
api_key = params['api_key']
|
30
|
+
uuid = params['node_id']
|
31
|
+
|
32
|
+
fail 'A username is required' unless username
|
33
|
+
fail 'An API key (api_key) is required' unless api_key
|
34
|
+
fail 'A node UUID (node_id) is required' unless uuid
|
35
|
+
|
36
|
+
info 'Initializing connection to Tutum'
|
37
|
+
begin
|
38
|
+
session = Tutum.new(username, api_key)
|
39
|
+
response = session.nodes.get(uuid)
|
40
|
+
info 'Parsing node information'
|
41
|
+
content = JSON.parse(response)
|
42
|
+
rescue
|
43
|
+
fail 'Failed to list nodes'
|
44
|
+
end
|
45
|
+
|
46
|
+
action_callback content
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
require 'factor-connector-api'
|
2
|
+
require 'tutum'
|
3
|
+
|
4
|
+
Factor::Connector.service 'tutum_service' do
|
5
|
+
action 'list' do |params|
|
6
|
+
|
7
|
+
username = params['username']
|
8
|
+
api_key = params['api_key']
|
9
|
+
|
10
|
+
fail 'A username is required' unless username
|
11
|
+
fail 'An API key (api_key) is required' unless api_key
|
12
|
+
|
13
|
+
info 'Initializing connection to Tutum'
|
14
|
+
begin
|
15
|
+
session = Tutum.new(username, api_key)
|
16
|
+
response = session.services.list
|
17
|
+
info 'Parsing list response'
|
18
|
+
content = JSON.parse(response)
|
19
|
+
rescue
|
20
|
+
fail 'Failed to list services'
|
21
|
+
end
|
22
|
+
|
23
|
+
action_callback content
|
24
|
+
end
|
25
|
+
|
26
|
+
action 'get' do |params|
|
27
|
+
|
28
|
+
username = params['username']
|
29
|
+
api_key = params['api_key']
|
30
|
+
uuid = params['service_id']
|
31
|
+
|
32
|
+
fail 'A username is required' unless username
|
33
|
+
fail 'An API key (api_key) is required' unless api_key
|
34
|
+
fail 'A service UUID (service_id) is required' unless uuid
|
35
|
+
|
36
|
+
info 'Initializing connection to Tutum'
|
37
|
+
begin
|
38
|
+
session = Tutum.new(username, api_key)
|
39
|
+
response = session.services.get(uuid)
|
40
|
+
info 'Parsing service response'
|
41
|
+
content = JSON.parse(response)
|
42
|
+
rescue
|
43
|
+
fail "Failed to retreive the service's information"
|
44
|
+
end
|
45
|
+
|
46
|
+
action_callback content
|
47
|
+
end
|
48
|
+
|
49
|
+
action 'logs' do |params|
|
50
|
+
|
51
|
+
username = params['username']
|
52
|
+
api_key = params['api_key']
|
53
|
+
uuid = params['service_id']
|
54
|
+
|
55
|
+
fail 'A username is required' unless username
|
56
|
+
fail 'An API key (api_key) is required' unless api_key
|
57
|
+
fail 'A service UUID (service_id) is required' unless uuid
|
58
|
+
|
59
|
+
info 'Initializing connection to Tutum'
|
60
|
+
begin
|
61
|
+
session = Tutum.new(username, api_key)
|
62
|
+
response = session.services.logs(uuid)
|
63
|
+
info 'Parsing service response'
|
64
|
+
content = JSON.parse(response)
|
65
|
+
rescue
|
66
|
+
fail "Failed to retreive the service's information"
|
67
|
+
end
|
68
|
+
|
69
|
+
action_callback content
|
70
|
+
end
|
71
|
+
|
72
|
+
action 'start' do |params|
|
73
|
+
|
74
|
+
username = params['username']
|
75
|
+
api_key = params['api_key']
|
76
|
+
uuid = params['service_id']
|
77
|
+
|
78
|
+
fail 'A username is required' unless username
|
79
|
+
fail 'An API key (api_key) is required' unless api_key
|
80
|
+
fail 'A service UUID (service_id) is required' unless uuid
|
81
|
+
|
82
|
+
info 'Initializing connection to Tutum'
|
83
|
+
begin
|
84
|
+
session = Tutum.new(username, api_key)
|
85
|
+
response = session.services.start(uuid)
|
86
|
+
info 'Parsing commencement response'
|
87
|
+
content = JSON.parse(response)
|
88
|
+
rescue
|
89
|
+
fail "Failed to retreive the service's information"
|
90
|
+
end
|
91
|
+
|
92
|
+
action_callback content
|
93
|
+
end
|
94
|
+
end
|
metadata
ADDED
@@ -0,0 +1,131 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: factor-connector-tutum
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Josie Wright
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-10-31 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: factor-connector-api
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.0.3
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.0.3
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: tutum-api
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.0.2
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.0.2
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: codeclimate-test-reporter
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.4.1
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.4.1
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rspec
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 3.1.0
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 3.1.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 10.3.2
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 10.3.2
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: wrong
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.7.1
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.7.1
|
97
|
+
description:
|
98
|
+
email:
|
99
|
+
- jozwright@gmail.com
|
100
|
+
executables: []
|
101
|
+
extensions: []
|
102
|
+
extra_rdoc_files: []
|
103
|
+
files:
|
104
|
+
- lib/factor/connector/tutum_cluster.rb
|
105
|
+
- lib/factor/connector/tutum_container.rb
|
106
|
+
- lib/factor/connector/tutum_node.rb
|
107
|
+
- lib/factor/connector/tutum_service.rb
|
108
|
+
homepage: https://factor.io
|
109
|
+
licenses: []
|
110
|
+
metadata: {}
|
111
|
+
post_install_message:
|
112
|
+
rdoc_options: []
|
113
|
+
require_paths:
|
114
|
+
- lib
|
115
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - ">="
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '0'
|
120
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
requirements: []
|
126
|
+
rubyforge_project:
|
127
|
+
rubygems_version: 2.2.2
|
128
|
+
signing_key:
|
129
|
+
specification_version: 4
|
130
|
+
summary: Tutum Factor.io Connector
|
131
|
+
test_files: []
|