epc 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (196) hide show
  1. data/lib/epc.rb +25 -5
  2. data/lib/epc/client/json_client.rb +4 -4
  3. data/lib/epc/command/archive_command.rb +7 -6
  4. data/lib/epc/command/attachto_command.rb +13 -0
  5. data/lib/epc/command/base_command.rb +120 -29
  6. data/lib/epc/command/config/create_config_command.rb +7 -11
  7. data/lib/epc/command/config/delete_config_command.rb +5 -5
  8. data/lib/epc/command/config/list_configs_command.rb +5 -5
  9. data/lib/epc/command/config/update_config_command.rb +11 -10
  10. data/lib/epc/command/copy_command.rb +14 -0
  11. data/lib/epc/command/create_command.rb +9 -5
  12. data/lib/epc/command/delete_command.rb +9 -9
  13. data/lib/epc/command/{copy_deployment_command.rb → deployment/copy_deployment_command.rb} +6 -5
  14. data/lib/epc/command/deployment/create_deployment_command.rb +15 -15
  15. data/lib/epc/command/deployment/list_deployments_command.rb +2 -4
  16. data/lib/epc/command/deployment/show_deployment_command.rb +5 -7
  17. data/lib/epc/command/deployment/submit_deployment_command.rb +15 -0
  18. data/lib/epc/command/deployment/update_deployment_command.rb +5 -14
  19. data/lib/epc/command/deployment/vote_deployment_command.rb +23 -0
  20. data/lib/epc/command/deploymentstage/list_deploymentstages_command.rb +1 -1
  21. data/lib/epc/command/detachfrom_command.rb +13 -0
  22. data/lib/epc/command/group/create_group_command.rb +3 -3
  23. data/lib/epc/command/group/delete_group_command.rb +4 -5
  24. data/lib/epc/command/group/show_group_command.rb +2 -3
  25. data/lib/epc/command/group/update_group_command.rb +9 -7
  26. data/lib/epc/command/library/create_library_command.rb +1 -2
  27. data/lib/epc/command/library/delete_library_command.rb +4 -5
  28. data/lib/epc/command/library/list_libraries_command.rb +1 -1
  29. data/lib/epc/command/librarylanguage/create_librarylanguage_command.rb +1 -1
  30. data/lib/epc/command/librarylanguage/delete_librarylanguage_command.rb +3 -5
  31. data/lib/epc/command/librarylanguage/list_librarylanguages_command.rb +1 -1
  32. data/lib/epc/command/librarylanguage/update_librarylanguage_command.rb +4 -5
  33. data/lib/epc/command/libraryset/create_libraryset_command.rb +5 -4
  34. data/lib/epc/command/libraryset/delete_libraryset_command.rb +4 -6
  35. data/lib/epc/command/libraryset/list_librarysets_command.rb +2 -2
  36. data/lib/epc/command/libraryset/show_libraryset_command.rb +3 -3
  37. data/lib/epc/command/libraryset/update_libraryset_command.rb +4 -3
  38. data/lib/epc/command/list_command.rb +10 -14
  39. data/lib/epc/command/list_objecttypes_command.rb +1 -1
  40. data/lib/epc/command/objectrole/create_objectrole_command.rb +4 -5
  41. data/lib/epc/command/objectrole/list_objectroles_command.rb +3 -8
  42. data/lib/epc/command/objectrole/update_objectrole_command.rb +3 -1
  43. data/lib/epc/command/permission/list_permissions_command.rb +1 -1
  44. data/lib/epc/command/permissiongroup/list_permissiongroups_command.rb +1 -1
  45. data/lib/epc/command/plugin/create_plugin_command.rb +1 -2
  46. data/lib/epc/command/plugin/delete_plugin_command.rb +4 -6
  47. data/lib/epc/command/plugin/list_plugins_command.rb +1 -1
  48. data/lib/epc/command/plugin/show_plugin_command.rb +2 -5
  49. data/lib/epc/command/plugin/update_plugin_command.rb +2 -6
  50. data/lib/epc/command/project/archive_project_command.rb +3 -12
  51. data/lib/epc/command/project/attachto_project_command.rb +133 -0
  52. data/lib/epc/command/project/create_project_command.rb +6 -6
  53. data/lib/epc/command/project/delete_project_command.rb +3 -24
  54. data/lib/epc/command/project/detachfrom_project_command.rb +66 -0
  55. data/lib/epc/command/project/list_projects_command.rb +12 -7
  56. data/lib/epc/command/project/show_project_command.rb +26 -25
  57. data/lib/epc/command/project/show_project_snapshot_command.rb +41 -0
  58. data/lib/epc/command/project/unarchive_project_command.rb +3 -10
  59. data/lib/epc/command/project/update_project_command.rb +5 -18
  60. data/lib/epc/command/projecttype/create_projecttype_command.rb +37 -0
  61. data/lib/epc/command/projecttype/delete_projecttype_command.rb +24 -0
  62. data/lib/epc/command/projecttype/list_projecttypes_command.rb +1 -1
  63. data/lib/epc/command/projecttype/show_projecttype_command.rb +2 -4
  64. data/lib/epc/command/projecttype/update_projecttype_command.rb +61 -0
  65. data/lib/epc/command/push_command.rb +14 -8
  66. data/lib/epc/command/role/create_role_command.rb +26 -3
  67. data/lib/epc/command/role/delete_role_command.rb +3 -5
  68. data/lib/epc/command/role/list_roles_command.rb +7 -3
  69. data/lib/epc/command/role/show_role_command.rb +8 -5
  70. data/lib/epc/command/role/update_role_command.rb +14 -66
  71. data/lib/epc/command/runtime/create_runtime_command.rb +34 -0
  72. data/lib/epc/command/runtime/delete_runtime_command.rb +24 -0
  73. data/lib/epc/command/runtime/list_runtimes_command.rb +2 -2
  74. data/lib/epc/command/runtime/update_runtime_command.rb +49 -0
  75. data/lib/epc/command/runtimetype/list_runtimetypes_command.rb +17 -0
  76. data/lib/epc/command/servicedefinition/create_servicedefinition_command.rb +5 -6
  77. data/lib/epc/command/servicedefinition/delete_servicedefinition_command.rb +18 -0
  78. data/lib/epc/command/servicedefinition/list_servicedefinitions_command.rb +2 -2
  79. data/lib/epc/command/servicetype/list_servicetypes_command.rb +1 -1
  80. data/lib/epc/command/serviceversion/create_serviceversion_command.rb +8 -12
  81. data/lib/epc/command/serviceversion/delete_serviceversion_command.rb +3 -5
  82. data/lib/epc/command/serviceversion/list_serviceversions_command.rb +8 -1
  83. data/lib/epc/command/show_command.rb +8 -9
  84. data/lib/epc/command/show_metrics_command.rb +3 -3
  85. data/lib/epc/command/solution/archive_solution_command.rb +3 -10
  86. data/lib/epc/command/solution/create_solution_command.rb +2 -2
  87. data/lib/epc/command/solution/delete_solution_command.rb +3 -7
  88. data/lib/epc/command/solution/list_solutions_command.rb +11 -3
  89. data/lib/epc/command/solution/show_solution_command.rb +4 -6
  90. data/lib/epc/command/solution/unarchive_solution_command.rb +3 -8
  91. data/lib/epc/command/solution/update_solution_command.rb +4 -6
  92. data/lib/epc/command/submit_command.rb +16 -0
  93. data/lib/epc/command/unarchive_command.rb +7 -6
  94. data/lib/epc/command/update_command.rb +9 -8
  95. data/lib/epc/command/user/create_user_command.rb +2 -3
  96. data/lib/epc/command/user/delete_user_command.rb +3 -5
  97. data/lib/epc/command/user/list_users_command.rb +1 -1
  98. data/lib/epc/command/user/show_user_command.rb +2 -4
  99. data/lib/epc/command/user/update_user_command.rb +3 -14
  100. data/lib/epc/command/userproperty/list_user_properties_command.rb +23 -0
  101. data/lib/epc/command/vote_command.rb +16 -0
  102. data/lib/epc/config.rb +7 -1
  103. data/lib/epc/help.rb +51 -48
  104. data/lib/epc/modules/config.rb +39 -0
  105. data/lib/epc/modules/role.rb +133 -0
  106. data/lib/epc/runner.rb +23 -12
  107. data/lib/epc/version.rb +1 -1
  108. data/test/command/archive_project_command_test.rb +2 -13
  109. data/test/command/archive_solution_command_test.rb +4 -14
  110. data/test/command/copy_deployment_command_test.rb +4 -8
  111. data/test/command/create_config_command_test.rb +23 -23
  112. data/test/command/create_deployment_command_test.rb +33 -32
  113. data/test/command/create_group_command_test.rb +2 -2
  114. data/test/command/create_library_command_test.rb +6 -6
  115. data/test/command/create_librarylanguage_command_test.rb +3 -3
  116. data/test/command/create_libraryset_command_test.rb +6 -26
  117. data/test/command/create_objectrole_command_test.rb +4 -13
  118. data/test/command/create_project_command_test.rb +27 -13
  119. data/test/command/create_role_command_test.rb +3 -2
  120. data/test/command/create_runtime_command_test.rb +37 -0
  121. data/test/command/create_servicedefinition_command_test.rb +4 -17
  122. data/test/command/create_serviceversion_command_test.rb +8 -22
  123. data/test/command/create_solution_command_test.rb +5 -5
  124. data/test/command/create_user_command_test.rb +4 -4
  125. data/test/command/delete_config_command_test.rb +8 -15
  126. data/test/command/delete_library_command_test.rb +3 -4
  127. data/test/command/delete_librarylanguage_command_test.rb +3 -4
  128. data/test/command/delete_libraryset_command_test.rb +3 -4
  129. data/test/command/delete_plugin_command_test.rb +3 -4
  130. data/test/command/delete_project_command_test.rb +2 -10
  131. data/test/command/delete_projecttype_command_test.rb +31 -0
  132. data/test/command/delete_role_command_test.rb +5 -14
  133. data/test/command/delete_runtime_command_test.rb +31 -0
  134. data/test/command/delete_servicedefinition_command_test.rb +31 -0
  135. data/test/command/delete_serviceversion_command_test.rb +3 -2
  136. data/test/command/delete_solution_command_test.rb +3 -16
  137. data/test/command/delete_user_command_test.rb +3 -3
  138. data/test/command/list_config_command_test.rb +1 -0
  139. data/test/command/list_deployments_command_test.rb +11 -41
  140. data/test/command/list_objectroles_command_test.rb +4 -14
  141. data/test/command/list_projects_command_test.rb +0 -14
  142. data/test/command/list_roles_command_test.rb +3 -1
  143. data/test/command/list_runtimes_command_test.rb +2 -3
  144. data/test/command/list_runtimetypes_command_test.rb +29 -0
  145. data/test/command/list_userproperties_command_test.rb +33 -0
  146. data/test/command/push_command_test.rb +9 -1
  147. data/test/command/show_deployment_command_test.rb +36 -0
  148. data/test/command/show_group_command_test.rb +2 -1
  149. data/test/command/show_libraryset_command_test.rb +5 -3
  150. data/test/command/show_metrics_command_test.rb +4 -4
  151. data/test/command/show_plugin_command_test.rb +4 -4
  152. data/test/command/show_project_command_test.rb +5 -17
  153. data/test/command/show_project_snapshot_test.rb +33 -0
  154. data/test/command/show_projecttype_command_test.rb +5 -11
  155. data/test/command/show_role_command_test.rb +5 -12
  156. data/test/command/show_solution_command_test.rb +2 -15
  157. data/test/command/show_user_command_test.rb +4 -3
  158. data/test/command/submit_deployment_command_test.rb +4 -11
  159. data/test/command/unarchive_project_command_test.rb +2 -14
  160. data/test/command/unarchive_solution_command_test.rb +6 -16
  161. data/test/command/update_config_command_test.rb +14 -3
  162. data/test/command/update_deployment_command_test.rb +12 -26
  163. data/test/command/update_group_command_test.rb +2 -10
  164. data/test/command/update_librarylanguage_command_test.rb +5 -3
  165. data/test/command/update_libraryset_command_test.rb +4 -2
  166. data/test/command/update_plugin_command_test.rb +5 -4
  167. data/test/command/update_project_command_test.rb +6 -20
  168. data/test/command/update_role_command_test.rb +11 -8
  169. data/test/command/update_solution_command_test.rb +6 -12
  170. data/test/command/update_user_command_test.rb +3 -19
  171. data/test/command/vote_deployment_command_test.rb +2 -6
  172. metadata +66 -63
  173. data/lib/epc/command/attach_library_command.rb +0 -82
  174. data/lib/epc/command/attach_libraryset_command.rb +0 -31
  175. data/lib/epc/command/attach_runtime_command.rb +0 -26
  176. data/lib/epc/command/bind_service_command.rb +0 -35
  177. data/lib/epc/command/create_dependency_command.rb +0 -43
  178. data/lib/epc/command/dependency/delete_dependency_command.rb +0 -38
  179. data/lib/epc/command/detach_library_command.rb +0 -35
  180. data/lib/epc/command/detach_libraryset_command.rb +0 -8
  181. data/lib/epc/command/list_versions_command.rb +0 -38
  182. data/lib/epc/command/submit_deployment_command.rb +0 -19
  183. data/lib/epc/command/unbind_service_command.rb +0 -42
  184. data/lib/epc/command/undefine_service_command.rb +0 -33
  185. data/lib/epc/command/update_rolepermissions_command.rb +0 -83
  186. data/lib/epc/command/vote_deployment_command.rb +0 -29
  187. data/test/command/attach_library_command_test.rb +0 -124
  188. data/test/command/attach_libraryset_command_test.rb +0 -49
  189. data/test/command/attach_runtime_command_test.rb +0 -44
  190. data/test/command/bind_service_command_test.rb +0 -46
  191. data/test/command/create_dependency_command_test.rb +0 -55
  192. data/test/command/create_plugin_command_test.rb +0 -44
  193. data/test/command/delete_dependency_command_test.rb +0 -42
  194. data/test/command/detach_library_command_test.rb +0 -53
  195. data/test/command/unbind_service_command_test.rb +0 -48
  196. data/test/command/undefine_service_command_test.rb +0 -49
@@ -1,42 +0,0 @@
1
- require 'test_helper'
2
-
3
- class DeleteDependencyCommandTest < Test::Unit::TestCase
4
- should_require_login
5
-
6
- context "execute" do
7
- setup do
8
- @mock_client = mock("Client")
9
- @command = EPC::Command::DeleteDependencyCommand.new(@mock_client)
10
- end
11
-
12
- should "fail if project id can't be determined" do
13
- assert_raise EPC::Error::FatalError do
14
- assert_equal(@command.execute("1"), 1)
15
- end
16
- end
17
-
18
- context "deletion" do
19
- setup do
20
- @command.options[:project_name] = 1
21
- @command.options[:solution_name] = 1
22
- @command.expects(:infer_solution_context).returns([1, "FirstSolution"])
23
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
24
- @command.expects(:ask_yn).returns("Y")
25
- end
26
-
27
- should "fail if status is not 200" do
28
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/remove_dependency/1").
29
- returns([404, {:message => "Not Found"}, {}])
30
- @command.expects(:say).with("Request failed: [Not Found]")
31
- assert_equal(@command.execute("1"), 404)
32
- end
33
-
34
- should "delete a dependency" do
35
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/remove_dependency/1")
36
- .returns([200, {}, {}])
37
- @command.expects(:say).with("Dependency deleted")
38
- assert_equal(@command.execute("1"), 200)
39
- end
40
- end
41
- end
42
- end
@@ -1,53 +0,0 @@
1
- require 'test_helper'
2
-
3
- class DetachLibraryCommandTest < Test::Unit::TestCase
4
- should_require_login
5
-
6
- context "execute" do
7
- setup do
8
- @mock_client = mock("Client")
9
- @command = EPC::Command::DetachLibraryCommand.new(@mock_client)
10
- end
11
-
12
- should "fail if library not specified" do
13
- assert_raise EPC::Error::FatalError do
14
- assert_equal(@command.execute, 1)
15
- end
16
- end
17
-
18
- should "fail if project can't be inferred" do
19
- assert_raise EPC::Error::FatalError do
20
- @command.expects(:infer_project_context).returns([nil, nil])
21
- assert_equal(@command.execute("math_lib"), 1)
22
- end
23
- end
24
-
25
- should "fail if library id cannot be determined" do
26
- assert_raise EPC::Error::FatalError do
27
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
28
- @command.expects(:retrieve_libraries).with([{:name => "math_lib", :library_version => "1.2", :group => "grp"}]).returns(nil)
29
-
30
- assert_equal(@command.execute("math_lib", "1.2", "grp"), 1)
31
- end
32
-
33
- end
34
-
35
- should "fail if status is not 200" do
36
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
37
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/detach_library/1").
38
- returns([404, {:message => "Not Found"}, {}])
39
- @command.expects(:say).with("Request failed: [Not Found]")
40
-
41
- assert_equal(@command.execute(1), 404)
42
- end
43
-
44
- should "detach the library from the project" do
45
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
46
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/detach_library/1").
47
- returns([200, {}, {}])
48
- @command.expects(:say).with("Library detached from project.")
49
-
50
- assert_equal(@command.execute(1), 200)
51
- end
52
- end
53
- end
@@ -1,48 +0,0 @@
1
- require 'test_helper'
2
-
3
- class UnbindServiceCommandTest < Test::Unit::TestCase
4
- should_require_login
5
-
6
- context "execute" do
7
- setup do
8
- @mock_client = mock("Client")
9
- @command = EPC::Command::UnbindServiceCommand.new(@mock_client)
10
- end
11
-
12
- should "fail if service version not specified" do
13
- @command.expects(:say).with("You must specify the service version to be unbound.")
14
- @command.expects(:say).with(EPC::Help::COMMAND_USAGES[:unbind_service])
15
-
16
- assert_equal(@command.execute, 1)
17
- end
18
-
19
- should "fail if service version id cannot be determined" do
20
- @command.expects(:infer_project_context).returns([nil, nil])
21
- @command.expects(:get_resource_id).with(EPC::Config::SERVICE_VERSIONS_PATH, :label, "main_db").returns(nil)
22
-
23
- @command.expects(:say).with("Project or service incorrectly specified.")
24
- @command.expects(:say).with(EPC::Help::COMMAND_USAGES[:unbind_service])
25
-
26
- assert_equal(@command.execute("main_db"), 1)
27
-
28
- end
29
-
30
- should "fail if status is not 200" do
31
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
32
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/remove_service_version/1").
33
- returns([404, {:message => "Not Found"}, {}])
34
- @command.expects(:say).with("Request failed: [Not Found]")
35
-
36
- assert_equal(@command.execute(1), 404)
37
- end
38
-
39
- should "unbind the service from the project" do
40
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
41
- @mock_client.expects(:delete).with(EPC::Config::PROJECTS_PATH + "/1/remove_service_version/1").
42
- returns([200, {}, {}])
43
- @command.expects(:say).with("Service version unbound.")
44
-
45
- assert_equal(@command.execute(1), 200)
46
- end
47
- end
48
- end
@@ -1,49 +0,0 @@
1
- require File.expand_path "../../../lib/epc", __FILE__
2
- require "test/unit"
3
- require 'shoulda'
4
- require 'mocha'
5
-
6
- class UndefineServiceCommandTest < Test::Unit::TestCase
7
- should_require_login
8
-
9
- context "execution" do
10
- setup do
11
- @mock_client = mock('Client')
12
- end
13
-
14
- should "require the user to specify the service_name" do
15
- @command = EPC::Command::UndefineServiceCommand.new(@mock_client)
16
- @command.expects(:say).with("You must specify a name for the service")
17
- @command.expects(:say).with(EPC::Help::COMMAND_USAGES[:undefine_service])
18
- @command.execute
19
- end
20
- end
21
-
22
- context "service undefinition" do
23
- setup do
24
- @mock_client = stub('Client')
25
- @command = EPC::Command::UndefineServiceCommand.new(@mock_client)
26
- end
27
-
28
- should "query core for service_id if service name was specified" do
29
- @command.expects(:get_resource_id).returns(0)
30
- @command.expects(:say).with("my_mysql_instance service could not be found.")
31
- assert_equal(@command.execute("my_mysql_instance"), 1)
32
- end
33
-
34
- should "fail if status is not 201" do
35
- @command.expects(:get_resource_id).returns(1)
36
- @mock_client.expects(:delete).with(EPC::Config::SERVICE_DEFINITIONS_PATH + "/1").returns([400, {'message' => 'Not Found'}])
37
- @command.expects(:say).with("Service removal failed with: [Not Found]")
38
- assert_equal(@command.execute("my_mysql_instance"), 400)
39
- end
40
-
41
- should "undefine a service" do
42
- @command.expects(:get_resource_id).returns(1)
43
- @mock_client.expects(:delete).with(EPC::Config::SERVICE_DEFINITIONS_PATH + "/1").returns([200, {'id' => 1}])
44
- @command.expects(:say).with("my_mysql_instance has been undefined.")
45
- assert_equal(@command.execute("my_mysql_instance"), 200)
46
- end
47
- end
48
- end
49
-