crowbar-client 2.4.1 → 2.4.2
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 +4 -4
- data/CHANGELOG.md +13 -0
- data/README.md +18 -6
- data/lib/crowbar/client.rb +54 -0
- data/lib/crowbar/client/app.rb +3 -0
- data/lib/crowbar/client/app/backup.rb +62 -1
- data/lib/crowbar/client/app/barclamp.rb +10 -0
- data/lib/crowbar/client/app/base.rb +50 -0
- data/lib/crowbar/client/app/batch.rb +25 -0
- data/lib/crowbar/client/app/entry.rb +26 -1
- data/lib/crowbar/client/app/host_ip.rb +24 -0
- data/lib/crowbar/client/app/installer.rb +16 -1
- data/lib/crowbar/client/app/interface.rb +21 -0
- data/lib/crowbar/client/app/network.rb +3 -0
- data/lib/crowbar/client/app/node.rb +3 -0
- data/lib/crowbar/client/app/proposal.rb +3 -0
- data/lib/crowbar/client/app/repository.rb +3 -0
- data/lib/crowbar/client/app/role.rb +3 -0
- data/lib/crowbar/client/app/server.rb +56 -0
- data/lib/crowbar/client/app/virtual_ip.rb +24 -0
- data/lib/crowbar/client/command.rb +3 -0
- data/lib/crowbar/client/command/backup.rb +3 -0
- data/lib/crowbar/client/command/backup/create.rb +3 -0
- data/lib/crowbar/client/command/backup/delete.rb +3 -0
- data/lib/crowbar/client/command/backup/download.rb +3 -0
- data/lib/crowbar/client/command/backup/list.rb +3 -0
- data/lib/crowbar/client/command/backup/restore.rb +3 -0
- data/lib/crowbar/client/command/backup/upload.rb +3 -0
- data/lib/crowbar/client/command/barclamp.rb +3 -0
- data/lib/crowbar/client/command/barclamp/list.rb +3 -0
- data/lib/crowbar/client/command/base.rb +3 -0
- data/lib/crowbar/client/command/batch.rb +3 -0
- data/lib/crowbar/client/command/batch/build.rb +3 -0
- data/lib/crowbar/client/command/batch/export.rb +3 -0
- data/lib/crowbar/client/command/host_ip.rb +3 -0
- data/lib/crowbar/client/command/host_ip/allocate.rb +3 -0
- data/lib/crowbar/client/command/host_ip/deallocate.rb +3 -0
- data/lib/crowbar/client/command/installer.rb +3 -0
- data/lib/crowbar/client/command/installer/start.rb +3 -0
- data/lib/crowbar/client/command/installer/status.rb +3 -0
- data/lib/crowbar/client/command/interface.rb +3 -0
- data/lib/crowbar/client/command/interface/disable.rb +3 -0
- data/lib/crowbar/client/command/interface/enable.rb +3 -0
- data/lib/crowbar/client/command/node.rb +3 -0
- data/lib/crowbar/client/command/node/allocate.rb +4 -1
- data/lib/crowbar/client/command/node/delete.rb +3 -0
- data/lib/crowbar/client/command/node/group.rb +3 -0
- data/lib/crowbar/client/command/node/hardware.rb +4 -1
- data/lib/crowbar/client/command/node/identify.rb +4 -1
- data/lib/crowbar/client/command/node/list.rb +3 -0
- data/lib/crowbar/client/command/node/powercycle.rb +4 -1
- data/lib/crowbar/client/command/node/poweroff.rb +4 -1
- data/lib/crowbar/client/command/node/poweron.rb +4 -1
- data/lib/crowbar/client/command/node/reboot.rb +4 -1
- data/lib/crowbar/client/command/node/reinstall.rb +4 -1
- data/lib/crowbar/client/command/node/rename.rb +3 -0
- data/lib/crowbar/client/command/node/reset.rb +4 -1
- data/lib/crowbar/client/command/node/role.rb +3 -0
- data/lib/crowbar/client/command/node/show.rb +3 -0
- data/lib/crowbar/client/command/node/shutdown.rb +4 -1
- data/lib/crowbar/client/command/node/status.rb +3 -0
- data/lib/crowbar/client/command/node/transition.rb +3 -0
- data/lib/crowbar/client/command/proposal.rb +3 -0
- data/lib/crowbar/client/command/proposal/commit.rb +3 -0
- data/lib/crowbar/client/command/proposal/create.rb +3 -0
- data/lib/crowbar/client/command/proposal/delete.rb +3 -0
- data/lib/crowbar/client/command/proposal/dequeue.rb +3 -0
- data/lib/crowbar/client/command/proposal/edit.rb +3 -0
- data/lib/crowbar/client/command/proposal/list.rb +3 -0
- data/lib/crowbar/client/command/proposal/reset.rb +3 -0
- data/lib/crowbar/client/command/proposal/show.rb +3 -0
- data/lib/crowbar/client/command/repository.rb +3 -0
- data/lib/crowbar/client/command/repository/activate.rb +3 -0
- data/lib/crowbar/client/command/repository/activate_all.rb +3 -0
- data/lib/crowbar/client/command/repository/deactivate.rb +3 -0
- data/lib/crowbar/client/command/repository/deactivate_all.rb +3 -0
- data/lib/crowbar/client/command/repository/list.rb +3 -0
- data/lib/crowbar/client/command/role.rb +3 -0
- data/lib/crowbar/client/command/role/list.rb +3 -0
- data/lib/crowbar/client/command/role/show.rb +3 -0
- data/lib/crowbar/client/command/server.rb +5 -0
- data/lib/crowbar/client/command/server/api.rb +3 -0
- data/lib/crowbar/client/command/server/check.rb +75 -0
- data/lib/crowbar/client/command/virtual_ip.rb +3 -0
- data/lib/crowbar/client/command/virtual_ip/allocate.rb +3 -0
- data/lib/crowbar/client/command/virtual_ip/deallocate.rb +3 -0
- data/lib/crowbar/client/config.rb +128 -1
- data/lib/crowbar/client/filter.rb +3 -0
- data/lib/crowbar/client/filter/array.rb +3 -0
- data/lib/crowbar/client/filter/base.rb +3 -0
- data/lib/crowbar/client/filter/hash.rb +3 -0
- data/lib/crowbar/client/filter/subset.rb +3 -0
- data/lib/crowbar/client/formatter.rb +3 -0
- data/lib/crowbar/client/formatter/array.rb +3 -0
- data/lib/crowbar/client/formatter/base.rb +3 -0
- data/lib/crowbar/client/formatter/hash.rb +3 -0
- data/lib/crowbar/client/formatter/nested.rb +3 -0
- data/lib/crowbar/client/mixin.rb +3 -0
- data/lib/crowbar/client/mixin/barclamp.rb +3 -0
- data/lib/crowbar/client/mixin/filter.rb +3 -0
- data/lib/crowbar/client/mixin/format.rb +3 -0
- data/lib/crowbar/client/request.rb +3 -0
- data/lib/crowbar/client/request/backup.rb +3 -0
- data/lib/crowbar/client/request/backup/create.rb +18 -0
- data/lib/crowbar/client/request/backup/delete.rb +13 -0
- data/lib/crowbar/client/request/backup/download.rb +13 -0
- data/lib/crowbar/client/request/backup/list.rb +13 -0
- data/lib/crowbar/client/request/backup/restore.rb +13 -0
- data/lib/crowbar/client/request/backup/upload.rb +13 -0
- data/lib/crowbar/client/request/barclamp.rb +3 -0
- data/lib/crowbar/client/request/barclamp/list.rb +13 -0
- data/lib/crowbar/client/request/base.rb +42 -11
- data/lib/crowbar/client/request/batch.rb +3 -0
- data/lib/crowbar/client/request/batch/build.rb +13 -0
- data/lib/crowbar/client/request/batch/export.rb +18 -0
- data/lib/crowbar/client/request/host_ip.rb +3 -0
- data/lib/crowbar/client/request/host_ip/allocate.rb +18 -0
- data/lib/crowbar/client/request/host_ip/deallocate.rb +18 -0
- data/lib/crowbar/client/request/installer.rb +3 -0
- data/lib/crowbar/client/request/installer/start.rb +18 -0
- data/lib/crowbar/client/request/installer/status.rb +13 -0
- data/lib/crowbar/client/request/interface.rb +3 -0
- data/lib/crowbar/client/request/interface/disable.rb +18 -0
- data/lib/crowbar/client/request/interface/enable.rb +18 -0
- data/lib/crowbar/client/request/node.rb +33 -0
- data/lib/crowbar/client/request/node/action.rb +13 -0
- data/lib/crowbar/client/request/node/allocate.rb +29 -0
- data/lib/crowbar/client/request/node/delete.rb +13 -0
- data/lib/crowbar/client/request/node/group.rb +13 -0
- data/lib/crowbar/client/request/node/hardware.rb +29 -0
- data/lib/crowbar/client/request/node/identify.rb +29 -0
- data/lib/crowbar/client/request/node/list.rb +13 -0
- data/lib/crowbar/client/request/node/powercycle.rb +29 -0
- data/lib/crowbar/client/request/node/poweroff.rb +29 -0
- data/lib/crowbar/client/request/node/poweron.rb +29 -0
- data/lib/crowbar/client/request/node/reboot.rb +29 -0
- data/lib/crowbar/client/request/node/reinstall.rb +29 -0
- data/lib/crowbar/client/request/node/rename.rb +18 -0
- data/lib/crowbar/client/request/node/reset.rb +29 -0
- data/lib/crowbar/client/request/node/role.rb +18 -0
- data/lib/crowbar/client/request/node/show.rb +13 -0
- data/lib/crowbar/client/request/node/shutdown.rb +29 -0
- data/lib/crowbar/client/request/node/status.rb +13 -0
- data/lib/crowbar/client/request/node/transition.rb +18 -0
- data/lib/crowbar/client/request/party.rb +3 -0
- data/lib/crowbar/client/request/proposal.rb +3 -0
- data/lib/crowbar/client/request/proposal/commit.rb +13 -0
- data/lib/crowbar/client/request/proposal/create.rb +18 -0
- data/lib/crowbar/client/request/proposal/delete.rb +13 -0
- data/lib/crowbar/client/request/proposal/dequeue.rb +13 -0
- data/lib/crowbar/client/request/proposal/edit.rb +18 -0
- data/lib/crowbar/client/request/proposal/list.rb +13 -0
- data/lib/crowbar/client/request/proposal/reset.rb +13 -0
- data/lib/crowbar/client/request/proposal/show.rb +13 -0
- data/lib/crowbar/client/request/proposal/template.rb +13 -0
- data/lib/crowbar/client/request/repository.rb +3 -0
- data/lib/crowbar/client/request/repository/activate.rb +18 -0
- data/lib/crowbar/client/request/repository/activate_all.rb +13 -0
- data/lib/crowbar/client/request/repository/deactivate.rb +18 -0
- data/lib/crowbar/client/request/repository/deactivate_all.rb +13 -0
- data/lib/crowbar/client/request/repository/list.rb +13 -0
- data/lib/crowbar/client/request/role.rb +3 -0
- data/lib/crowbar/client/request/role/list.rb +13 -0
- data/lib/crowbar/client/request/role/show.rb +13 -0
- data/lib/crowbar/client/request/server.rb +5 -0
- data/lib/crowbar/client/request/server/api.rb +13 -0
- data/lib/crowbar/client/request/server/check.rb +49 -0
- data/lib/crowbar/client/request/virtual_ip.rb +3 -0
- data/lib/crowbar/client/request/virtual_ip/allocate.rb +18 -0
- data/lib/crowbar/client/request/virtual_ip/deallocate.rb +18 -0
- data/lib/crowbar/client/util.rb +3 -0
- data/lib/crowbar/client/util/editor.rb +3 -0
- data/lib/crowbar/client/util/runner.rb +3 -0
- data/lib/crowbar/client/version.rb +23 -1
- data/spec/crowbar/client/command/backup/create_spec.rb +8 -16
- data/spec/crowbar/client/command/backup/delete_spec.rb +8 -16
- data/spec/crowbar/client/command/backup/download_spec.rb +8 -16
- data/spec/crowbar/client/command/backup/list_spec.rb +7 -15
- data/spec/crowbar/client/command/backup/restore_spec.rb +8 -16
- data/spec/crowbar/client/command/backup/upload_spec.rb +11 -19
- data/spec/crowbar/client/command/barclamp/list_spec.rb +7 -15
- data/spec/crowbar/client/command/batch/build_spec.rb +11 -19
- data/spec/crowbar/client/command/batch/export_spec.rb +7 -15
- data/spec/crowbar/client/command/host_ip/allocate_spec.rb +7 -15
- data/spec/crowbar/client/command/host_ip/deallocate_spec.rb +7 -15
- data/spec/crowbar/client/command/installer/start_spec.rb +8 -16
- data/spec/crowbar/client/command/installer/status_spec.rb +7 -15
- data/spec/crowbar/client/command/interface/disable_spec.rb +7 -15
- data/spec/crowbar/client/command/interface/enable_spec.rb +7 -15
- data/spec/crowbar/client/command/node/allocate_spec.rb +7 -15
- data/spec/crowbar/client/command/node/delete_spec.rb +7 -15
- data/spec/crowbar/client/command/node/group_spec.rb +7 -15
- data/spec/crowbar/client/command/node/hardware_spec.rb +7 -15
- data/spec/crowbar/client/command/node/identify_spec.rb +7 -15
- data/spec/crowbar/client/command/node/list_spec.rb +9 -17
- data/spec/crowbar/client/command/node/powercycle_spec.rb +7 -15
- data/spec/crowbar/client/command/node/poweroff_spec.rb +7 -15
- data/spec/crowbar/client/command/node/poweron_spec.rb +7 -15
- data/spec/crowbar/client/command/node/reboot_spec.rb +7 -15
- data/spec/crowbar/client/command/node/reinstall_spec.rb +7 -15
- data/spec/crowbar/client/command/node/rename_spec.rb +7 -15
- data/spec/crowbar/client/command/node/reset_spec.rb +7 -15
- data/spec/crowbar/client/command/node/role_spec.rb +7 -15
- data/spec/crowbar/client/command/node/show_spec.rb +7 -15
- data/spec/crowbar/client/command/node/shutdown_spec.rb +7 -15
- data/spec/crowbar/client/command/node/status_spec.rb +7 -15
- data/spec/crowbar/client/command/node/transition_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/commit_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/delete_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/dequeue_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/list_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/reset_spec.rb +7 -15
- data/spec/crowbar/client/command/proposal/show_spec.rb +7 -15
- data/spec/crowbar/client/command/repository/activate_all_spec.rb +7 -15
- data/spec/crowbar/client/command/repository/activate_spec.rb +7 -15
- data/spec/crowbar/client/command/repository/deactivate_all_spec.rb +7 -15
- data/spec/crowbar/client/command/repository/deactivate_spec.rb +7 -15
- data/spec/crowbar/client/command/repository/list_spec.rb +7 -15
- data/spec/crowbar/client/command/role/list_spec.rb +7 -15
- data/spec/crowbar/client/command/role/show_spec.rb +7 -15
- data/spec/crowbar/client/command/server/api_spec.rb +7 -15
- data/spec/crowbar/client/command/server/check_spec.rb +31 -0
- data/spec/crowbar/client/command/virtual_ip/allocate_spec.rb +7 -15
- data/spec/crowbar/client/command/virtual_ip/deallocate_spec.rb +7 -15
- data/spec/crowbar/client/request/server/check_spec.rb +50 -0
- data/spec/support/command_examples.rb +59 -0
- metadata +117 -95
@@ -18,6 +18,9 @@ module Crowbar
|
|
18
18
|
module Client
|
19
19
|
module Request
|
20
20
|
module Batch
|
21
|
+
#
|
22
|
+
# Implementation for the batch build request
|
23
|
+
#
|
21
24
|
class Build < Base
|
22
25
|
def params
|
23
26
|
{
|
@@ -30,10 +33,20 @@ module Crowbar
|
|
30
33
|
}
|
31
34
|
end
|
32
35
|
|
36
|
+
#
|
37
|
+
# HTTP method that gets used by the request
|
38
|
+
#
|
39
|
+
# @return [Symbol] the method for the request
|
40
|
+
#
|
33
41
|
def method
|
34
42
|
:post
|
35
43
|
end
|
36
44
|
|
45
|
+
#
|
46
|
+
# Path to the API endpoint for the request
|
47
|
+
#
|
48
|
+
# @return [String] path to the API endpoint
|
49
|
+
#
|
37
50
|
def url
|
38
51
|
[
|
39
52
|
"utils",
|
@@ -20,7 +20,15 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module Batch
|
23
|
+
#
|
24
|
+
# Implementation for the batch export request
|
25
|
+
#
|
23
26
|
class Export < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
includes: attrs.includes,
|
@@ -28,10 +36,20 @@ module Crowbar
|
|
28
36
|
)
|
29
37
|
end
|
30
38
|
|
39
|
+
#
|
40
|
+
# HTTP method that gets used by the request
|
41
|
+
#
|
42
|
+
# @return [Symbol] the method for the request
|
43
|
+
#
|
31
44
|
def method
|
32
45
|
:post
|
33
46
|
end
|
34
47
|
|
48
|
+
#
|
49
|
+
# Path to the API endpoint for the request
|
50
|
+
#
|
51
|
+
# @return [String] path to the API endpoint
|
52
|
+
#
|
35
53
|
def url
|
36
54
|
[
|
37
55
|
"utils",
|
@@ -20,7 +20,15 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module HostIP
|
23
|
+
#
|
24
|
+
# Implementation for the host IP allocate request
|
25
|
+
#
|
23
26
|
class Allocate < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
name: attrs.node,
|
@@ -30,10 +38,20 @@ module Crowbar
|
|
30
38
|
)
|
31
39
|
end
|
32
40
|
|
41
|
+
#
|
42
|
+
# HTTP method that gets used by the request
|
43
|
+
#
|
44
|
+
# @return [Symbol] the method for the request
|
45
|
+
#
|
33
46
|
def method
|
34
47
|
:post
|
35
48
|
end
|
36
49
|
|
50
|
+
#
|
51
|
+
# Path to the API endpoint for the request
|
52
|
+
#
|
53
|
+
# @return [String] path to the API endpoint
|
54
|
+
#
|
37
55
|
def url
|
38
56
|
[
|
39
57
|
"crowbar",
|
@@ -20,7 +20,15 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module HostIP
|
23
|
+
#
|
24
|
+
# Implementation for the host IP deallocate request
|
25
|
+
#
|
23
26
|
class Deallocate < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
name: attrs.node,
|
@@ -28,10 +36,20 @@ module Crowbar
|
|
28
36
|
)
|
29
37
|
end
|
30
38
|
|
39
|
+
#
|
40
|
+
# HTTP method that gets used by the request
|
41
|
+
#
|
42
|
+
# @return [Symbol] the method for the request
|
43
|
+
#
|
31
44
|
def method
|
32
45
|
:post
|
33
46
|
end
|
34
47
|
|
48
|
+
#
|
49
|
+
# Path to the API endpoint for the request
|
50
|
+
#
|
51
|
+
# @return [String] path to the API endpoint
|
52
|
+
#
|
35
53
|
def url
|
36
54
|
[
|
37
55
|
"crowbar",
|
@@ -20,17 +20,35 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module Installer
|
23
|
+
#
|
24
|
+
# Implementation for the installer start request
|
25
|
+
#
|
23
26
|
class Start < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
force: attrs.force
|
27
35
|
)
|
28
36
|
end
|
29
37
|
|
38
|
+
#
|
39
|
+
# HTTP method that gets used by the request
|
40
|
+
#
|
41
|
+
# @return [Symbol] the method for the request
|
42
|
+
#
|
30
43
|
def method
|
31
44
|
:post
|
32
45
|
end
|
33
46
|
|
47
|
+
#
|
48
|
+
# Path to the API endpoint for the request
|
49
|
+
#
|
50
|
+
# @return [String] path to the API endpoint
|
51
|
+
#
|
34
52
|
def url
|
35
53
|
[
|
36
54
|
"installer",
|
@@ -18,11 +18,24 @@ module Crowbar
|
|
18
18
|
module Client
|
19
19
|
module Request
|
20
20
|
module Installer
|
21
|
+
#
|
22
|
+
# Implementation for the installer status request
|
23
|
+
#
|
21
24
|
class Status < Base
|
25
|
+
#
|
26
|
+
# HTTP method that gets used by the request
|
27
|
+
#
|
28
|
+
# @return [Symbol] the method for the request
|
29
|
+
#
|
22
30
|
def method
|
23
31
|
:get
|
24
32
|
end
|
25
33
|
|
34
|
+
#
|
35
|
+
# Path to the API endpoint for the request
|
36
|
+
#
|
37
|
+
# @return [String] path to the API endpoint
|
38
|
+
#
|
26
39
|
def url
|
27
40
|
[
|
28
41
|
"installer",
|
@@ -20,7 +20,15 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module Interface
|
23
|
+
#
|
24
|
+
# Implementation for the interface disable request
|
25
|
+
#
|
23
26
|
class Disable < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
name: attrs.node,
|
@@ -28,10 +36,20 @@ module Crowbar
|
|
28
36
|
)
|
29
37
|
end
|
30
38
|
|
39
|
+
#
|
40
|
+
# HTTP method that gets used by the request
|
41
|
+
#
|
42
|
+
# @return [Symbol] the method for the request
|
43
|
+
#
|
31
44
|
def method
|
32
45
|
:post
|
33
46
|
end
|
34
47
|
|
48
|
+
#
|
49
|
+
# Path to the API endpoint for the request
|
50
|
+
#
|
51
|
+
# @return [String] path to the API endpoint
|
52
|
+
#
|
35
53
|
def url
|
36
54
|
[
|
37
55
|
"crowbar",
|
@@ -20,7 +20,15 @@ module Crowbar
|
|
20
20
|
module Client
|
21
21
|
module Request
|
22
22
|
module Interface
|
23
|
+
#
|
24
|
+
# Implementation for the interface enable request
|
25
|
+
#
|
23
26
|
class Enable < Base
|
27
|
+
#
|
28
|
+
# Override the request content
|
29
|
+
#
|
30
|
+
# @return [Hash] the content for the request
|
31
|
+
#
|
24
32
|
def content
|
25
33
|
super.easy_merge!(
|
26
34
|
name: attrs.node,
|
@@ -28,10 +36,20 @@ module Crowbar
|
|
28
36
|
)
|
29
37
|
end
|
30
38
|
|
39
|
+
#
|
40
|
+
# HTTP method that gets used by the request
|
41
|
+
#
|
42
|
+
# @return [Symbol] the method for the request
|
43
|
+
#
|
31
44
|
def method
|
32
45
|
:post
|
33
46
|
end
|
34
47
|
|
48
|
+
#
|
49
|
+
# Path to the API endpoint for the request
|
50
|
+
#
|
51
|
+
# @return [String] path to the API endpoint
|
52
|
+
#
|
35
53
|
def url
|
36
54
|
[
|
37
55
|
"crowbar",
|
@@ -17,28 +17,61 @@
|
|
17
17
|
module Crowbar
|
18
18
|
module Client
|
19
19
|
module Request
|
20
|
+
#
|
21
|
+
# Module for the node request implementations
|
22
|
+
#
|
20
23
|
module Node
|
21
24
|
autoload :Action,
|
22
25
|
File.expand_path("../node/action", __FILE__)
|
23
26
|
|
27
|
+
autoload :Allocate,
|
28
|
+
File.expand_path("../node/allocate", __FILE__)
|
29
|
+
|
24
30
|
autoload :Delete,
|
25
31
|
File.expand_path("../node/delete", __FILE__)
|
26
32
|
|
27
33
|
autoload :Group,
|
28
34
|
File.expand_path("../node/group", __FILE__)
|
29
35
|
|
36
|
+
autoload :Hardware,
|
37
|
+
File.expand_path("../node/hardware", __FILE__)
|
38
|
+
|
39
|
+
autoload :Identify,
|
40
|
+
File.expand_path("../node/identify", __FILE__)
|
41
|
+
|
30
42
|
autoload :List,
|
31
43
|
File.expand_path("../node/list", __FILE__)
|
32
44
|
|
45
|
+
autoload :Powercycle,
|
46
|
+
File.expand_path("../node/powercycle", __FILE__)
|
47
|
+
|
48
|
+
autoload :Poweroff,
|
49
|
+
File.expand_path("../node/poweroff", __FILE__)
|
50
|
+
|
51
|
+
autoload :Poweron,
|
52
|
+
File.expand_path("../node/poweron", __FILE__)
|
53
|
+
|
54
|
+
autoload :Reboot,
|
55
|
+
File.expand_path("../node/reboot", __FILE__)
|
56
|
+
|
57
|
+
autoload :Reinstall,
|
58
|
+
File.expand_path("../node/reinstall", __FILE__)
|
59
|
+
|
33
60
|
autoload :Rename,
|
34
61
|
File.expand_path("../node/rename", __FILE__)
|
35
62
|
|
63
|
+
autoload :Reset,
|
64
|
+
File.expand_path("../node/reset", __FILE__)
|
65
|
+
|
36
66
|
autoload :Role,
|
37
67
|
File.expand_path("../node/role", __FILE__)
|
38
68
|
|
39
69
|
autoload :Show,
|
40
70
|
File.expand_path("../node/show", __FILE__)
|
41
71
|
|
72
|
+
autoload :Shutdown,
|
73
|
+
File.expand_path("../node/shutdown", __FILE__)
|
74
|
+
|
42
75
|
autoload :Status,
|
43
76
|
File.expand_path("../node/status", __FILE__)
|
44
77
|
|
@@ -18,11 +18,24 @@ module Crowbar
|
|
18
18
|
module Client
|
19
19
|
module Request
|
20
20
|
module Node
|
21
|
+
#
|
22
|
+
# Implementation for the node action request
|
23
|
+
#
|
21
24
|
class Action < Base
|
25
|
+
#
|
26
|
+
# HTTP method that gets used by the request
|
27
|
+
#
|
28
|
+
# @return [Symbol] the method for the request
|
29
|
+
#
|
22
30
|
def method
|
23
31
|
:post
|
24
32
|
end
|
25
33
|
|
34
|
+
#
|
35
|
+
# Path to the API endpoint for the request
|
36
|
+
#
|
37
|
+
# @return [String] path to the API endpoint
|
38
|
+
#
|
26
39
|
def url
|
27
40
|
[
|
28
41
|
"crowbar",
|
@@ -0,0 +1,29 @@
|
|
1
|
+
#
|
2
|
+
# Copyright 2016, SUSE Linux GmbH
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#
|
16
|
+
|
17
|
+
module Crowbar
|
18
|
+
module Client
|
19
|
+
module Request
|
20
|
+
module Node
|
21
|
+
#
|
22
|
+
# Implementation for the node allocate request
|
23
|
+
#
|
24
|
+
class Allocate < Action
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -18,11 +18,24 @@ module Crowbar
|
|
18
18
|
module Client
|
19
19
|
module Request
|
20
20
|
module Node
|
21
|
+
#
|
22
|
+
# Implementation for the node delete request
|
23
|
+
#
|
21
24
|
class Delete < Base
|
25
|
+
#
|
26
|
+
# HTTP method that gets used by the request
|
27
|
+
#
|
28
|
+
# @return [Symbol] the method for the request
|
29
|
+
#
|
22
30
|
def method
|
23
31
|
:delete
|
24
32
|
end
|
25
33
|
|
34
|
+
#
|
35
|
+
# Path to the API endpoint for the request
|
36
|
+
#
|
37
|
+
# @return [String] path to the API endpoint
|
38
|
+
#
|
26
39
|
def url
|
27
40
|
[
|
28
41
|
"crowbar",
|