openshift-origin-controller 1.3.2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of openshift-origin-controller might be problematic. Click here for more details.

Files changed (180) hide show
  1. data/COPYRIGHT +1 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE +12 -0
  4. data/README.md +3 -0
  5. data/Rakefile +9 -0
  6. data/app/controllers/app_events_controller.rb +115 -0
  7. data/app/controllers/application_templates_controller.rb +19 -0
  8. data/app/controllers/applications_controller.rb +214 -0
  9. data/app/controllers/base_controller.rb +367 -0
  10. data/app/controllers/cartridges_controller.rb +48 -0
  11. data/app/controllers/descriptors_controller.rb +23 -0
  12. data/app/controllers/dns_resolvable_controller.rb +35 -0
  13. data/app/controllers/domains_controller.rb +156 -0
  14. data/app/controllers/emb_cart_controller.rb +276 -0
  15. data/app/controllers/emb_cart_events_controller.rb +52 -0
  16. data/app/controllers/environment_controller.rb +11 -0
  17. data/app/controllers/estimates_controller.rb +71 -0
  18. data/app/controllers/gear_groups_controller.rb +53 -0
  19. data/app/controllers/gears_controller.rb +70 -0
  20. data/app/controllers/keys_controller.rb +96 -0
  21. data/app/controllers/legacy_broker_controller.rb +510 -0
  22. data/app/controllers/quickstarts_controller.rb +29 -0
  23. data/app/controllers/user_controller.rb +38 -0
  24. data/app/helpers/cartridge_helper.rb +25 -0
  25. data/app/helpers/legacy_broker_helper.rb +21 -0
  26. data/app/helpers/user_action_logger.rb +38 -0
  27. data/app/models/application.rb +1718 -0
  28. data/app/models/application_template.rb +27 -0
  29. data/app/models/cartridge_cache.rb +51 -0
  30. data/app/models/cloud_user.rb +334 -0
  31. data/app/models/component_instance.rb +228 -0
  32. data/app/models/connection_endpoint.rb +10 -0
  33. data/app/models/district.rb +210 -0
  34. data/app/models/domain.rb +234 -0
  35. data/app/models/gear.rb +376 -0
  36. data/app/models/group_instance.rb +306 -0
  37. data/app/models/key.rb +20 -0
  38. data/app/models/legacy_reply.rb +15 -0
  39. data/app/models/legacy_request.rb +126 -0
  40. data/app/models/link.rb +11 -0
  41. data/app/models/message.rb +10 -0
  42. data/app/models/name_server_cache.rb +46 -0
  43. data/app/models/optional_param.rb +12 -0
  44. data/app/models/param.rb +13 -0
  45. data/app/models/remote_job.rb +57 -0
  46. data/app/models/rest_application.rb +126 -0
  47. data/app/models/rest_application10.rb +106 -0
  48. data/app/models/rest_application12.rb +124 -0
  49. data/app/models/rest_application_estimate.rb +12 -0
  50. data/app/models/rest_application_template.rb +20 -0
  51. data/app/models/rest_cartridge10.rb +41 -0
  52. data/app/models/rest_cartridge11.rb +151 -0
  53. data/app/models/rest_domain.rb +43 -0
  54. data/app/models/rest_domain10.rb +42 -0
  55. data/app/models/rest_estimates.rb +16 -0
  56. data/app/models/rest_gear.rb +14 -0
  57. data/app/models/rest_gear_group.rb +26 -0
  58. data/app/models/rest_key.rb +24 -0
  59. data/app/models/rest_reply.rb +31 -0
  60. data/app/models/rest_user.rb +43 -0
  61. data/app/models/result_io.rb +67 -0
  62. data/app/models/usage_record.rb +37 -0
  63. data/app/models/validators/app_validator.rb +30 -0
  64. data/app/models/validators/key_validator.rb +30 -0
  65. data/app/models/validators/namespace_validator.rb +18 -0
  66. data/config/routes.rb +36 -0
  67. data/lib/controller_engine.rb +7 -0
  68. data/lib/openshift-origin-controller.rb +14 -0
  69. data/lib/openshift/application_container_proxy.rb +241 -0
  70. data/lib/openshift/auth_service.rb +101 -0
  71. data/lib/openshift/data_store.rb +33 -0
  72. data/lib/openshift/dns_service.rb +41 -0
  73. data/lib/openshift/mongo_data_store.rb +671 -0
  74. data/openshift-origin-controller.gemspec +42 -0
  75. data/rubygem-openshift-origin-controller.spec +274 -0
  76. data/test/cucumber/application-estimate.feature +25 -0
  77. data/test/cucumber/cartridge-10gen-mms-agent.feature +28 -0
  78. data/test/cucumber/cartridge-cron.feature +32 -0
  79. data/test/cucumber/cartridge-haproxy.feature +31 -0
  80. data/test/cucumber/cartridge-jenkins-build.feature +12 -0
  81. data/test/cucumber/cartridge-jenkins-client.feature +10 -0
  82. data/test/cucumber/cartridge-lifecycle-diy.feature +21 -0
  83. data/test/cucumber/cartridge-lifecycle-jbossas.feature +61 -0
  84. data/test/cucumber/cartridge-lifecycle-jbosseap.feature +61 -0
  85. data/test/cucumber/cartridge-lifecycle-jbossews10.feature +61 -0
  86. data/test/cucumber/cartridge-lifecycle-jenkins.feature +41 -0
  87. data/test/cucumber/cartridge-lifecycle-nodejs.feature +59 -0
  88. data/test/cucumber/cartridge-lifecycle-perl.feature +40 -0
  89. data/test/cucumber/cartridge-lifecycle-php.feature +106 -0
  90. data/test/cucumber/cartridge-lifecycle-python.feature +40 -0
  91. data/test/cucumber/cartridge-lifecycle-ruby18.feature +49 -0
  92. data/test/cucumber/cartridge-lifecycle-ruby19.feature +41 -0
  93. data/test/cucumber/cartridge-mongodb.feature +31 -0
  94. data/test/cucumber/cartridge-mysql.feature +30 -0
  95. data/test/cucumber/cartridge-php.feature +14 -0
  96. data/test/cucumber/cartridge-phpmyadmin.feature +32 -0
  97. data/test/cucumber/cartridge-postgresql.feature +32 -0
  98. data/test/cucumber/cartridge-runtime-extended-db.feature +64 -0
  99. data/test/cucumber/cartridge-runtime-extended-jboss.feature +24 -0
  100. data/test/cucumber/cartridge-runtime-extended-nodejs.feature +21 -0
  101. data/test/cucumber/cartridge-runtime-extended-perl.feature +18 -0
  102. data/test/cucumber/cartridge-runtime-extended-php.feature +19 -0
  103. data/test/cucumber/cartridge-runtime-extended-python.feature +18 -0
  104. data/test/cucumber/cartridge-runtime-extended-ruby.feature +22 -0
  105. data/test/cucumber/cartridge-runtime-standard-diy.feature +6 -0
  106. data/test/cucumber/cartridge-runtime-standard-jbossas.feature +7 -0
  107. data/test/cucumber/cartridge-runtime-standard-jbosseap.feature +7 -0
  108. data/test/cucumber/cartridge-runtime-standard-jbossews10.feature +7 -0
  109. data/test/cucumber/cartridge-runtime-standard-jenkins.feature +8 -0
  110. data/test/cucumber/cartridge-runtime-standard-nodejs.feature +7 -0
  111. data/test/cucumber/cartridge-runtime-standard-perl.feature +6 -0
  112. data/test/cucumber/cartridge-runtime-standard-php.feature +6 -0
  113. data/test/cucumber/cartridge-runtime-standard-python.feature +6 -0
  114. data/test/cucumber/cartridge-runtime-standard-ruby.feature +19 -0
  115. data/test/cucumber/cartridge-switchyard.feature +36 -0
  116. data/test/cucumber/descriptor.feature +40 -0
  117. data/test/cucumber/embedded.feature +44 -0
  118. data/test/cucumber/idler.feature +75 -0
  119. data/test/cucumber/misc/descriptor/manifest.yml +22 -0
  120. data/test/cucumber/misc/php/db_test.php +21 -0
  121. data/test/cucumber/openshift-node.feature +21 -0
  122. data/test/cucumber/rest-application-templates.feature +31 -0
  123. data/test/cucumber/rest-applications.feature +431 -0
  124. data/test/cucumber/rest-cartridge-types.feature +16 -0
  125. data/test/cucumber/rest-domains.feature +276 -0
  126. data/test/cucumber/rest-gears.feature +38 -0
  127. data/test/cucumber/rest-keys.feature +247 -0
  128. data/test/cucumber/rest-quickstarts.feature +27 -0
  129. data/test/cucumber/rest-workflow.feature +64 -0
  130. data/test/cucumber/step_definitions/api_steps.rb +369 -0
  131. data/test/cucumber/step_definitions/application-estimate-steps.rb +51 -0
  132. data/test/cucumber/step_definitions/application_steps.rb +215 -0
  133. data/test/cucumber/step_definitions/cartridge-10gen-mms-agent_steps.rb +11 -0
  134. data/test/cucumber/step_definitions/cartridge-cron_steps.rb +51 -0
  135. data/test/cucumber/step_definitions/cartridge-haproxy_steps.rb +30 -0
  136. data/test/cucumber/step_definitions/cartridge-jenkins_steps.rb +93 -0
  137. data/test/cucumber/step_definitions/cartridge-lifecycle-nodejs_steps.rb +30 -0
  138. data/test/cucumber/step_definitions/cartridge-mongodb_steps.rb +60 -0
  139. data/test/cucumber/step_definitions/cartridge-mysql_steps.rb +56 -0
  140. data/test/cucumber/step_definitions/cartridge-php_steps.rb +72 -0
  141. data/test/cucumber/step_definitions/cartridge-postgresql_steps.rb +59 -0
  142. data/test/cucumber/step_definitions/cartridge-switchyard_steps.rb +29 -0
  143. data/test/cucumber/step_definitions/client_steps.rb +12 -0
  144. data/test/cucumber/step_definitions/descriptor_step.rb +32 -0
  145. data/test/cucumber/step_definitions/idler_steps.rb +37 -0
  146. data/test/cucumber/step_definitions/node_steps.rb +203 -0
  147. data/test/cucumber/step_definitions/runtime_steps.rb +547 -0
  148. data/test/cucumber/step_definitions/runtime_url_steps.rb +46 -0
  149. data/test/cucumber/step_definitions/trap-user-extended_steps.rb +14 -0
  150. data/test/cucumber/step_definitions/trap-user_steps.rb +58 -0
  151. data/test/cucumber/support/00_setup_helper.rb +106 -0
  152. data/test/cucumber/support/app_helper.rb +243 -0
  153. data/test/cucumber/support/assertions.rb +52 -0
  154. data/test/cucumber/support/command_helper.rb +453 -0
  155. data/test/cucumber/support/dns_helper.rb +54 -0
  156. data/test/cucumber/support/env.rb +5 -0
  157. data/test/cucumber/support/process_helper.rb +44 -0
  158. data/test/cucumber/support/runtime_support.rb +440 -0
  159. data/test/cucumber/support/unused.rb +27 -0
  160. data/test/cucumber/support/user_helper.rb +37 -0
  161. data/test/cucumber/trap-user-extended.feature +53 -0
  162. data/test/cucumber/trap-user.feature +34 -0
  163. data/test/ddns/1.168.192-rev.db.init +13 -0
  164. data/test/ddns/HOWTO.txt +207 -0
  165. data/test/ddns/Kexample.com.+157+06142.key +1 -0
  166. data/test/ddns/Kexample.com.+157+06142.private +7 -0
  167. data/test/ddns/authconfig.rb +14 -0
  168. data/test/ddns/example.com.db.init +23 -0
  169. data/test/ddns/example.com.key +4 -0
  170. data/test/ddns/named.ca +52 -0
  171. data/test/ddns/named.conf +48 -0
  172. data/test/ddns/named.empty +10 -0
  173. data/test/ddns/named.localhost +10 -0
  174. data/test/ddns/named.loopback +11 -0
  175. data/test/ddns/named.rfc1912.zones +42 -0
  176. data/test/ddns/named.root.key +5 -0
  177. data/test/ddns/named_service.rb +127 -0
  178. data/test/unit/bind_dns_service_test.rb +167 -0
  179. data/test/unit/broker_auth_test.rb +28 -0
  180. metadata +545 -0
@@ -0,0 +1,40 @@
1
+ @runtime_extended
2
+ @runtime_extended1
3
+ Feature: Cartridge Lifecycle Python Verification Tests
4
+ Scenario Outline: Application Creation
5
+ Given the libra client tools
6
+ And an accepted node
7
+ When <app_count> <type> applications are created
8
+ Then the applications should be accessible
9
+
10
+ Scenarios: Application Creation Scenarios
11
+ | app_count | type |
12
+ | 1 | python-2.6 |
13
+
14
+ Scenario Outline: Application Modification
15
+ Given an existing <type> application
16
+ When the application is changed
17
+ Then it should be updated successfully
18
+ And the application should be accessible
19
+
20
+ Scenarios: Application Modification Scenarios
21
+ | type |
22
+ | python-2.6 |
23
+
24
+ Scenario Outline: Application Restarting
25
+ Given an existing <type> application
26
+ When the application is restarted
27
+ Then the application should be accessible
28
+
29
+ Scenarios: Application Restart Scenarios
30
+ | type |
31
+ | python-2.6 |
32
+
33
+ Scenario Outline: Application Destroying
34
+ Given an existing <type> application
35
+ When the application is destroyed
36
+ Then the application should not be accessible
37
+
38
+ Scenarios: Application Destroying Scenarios
39
+ | type |
40
+ | python-2.6 |
@@ -0,0 +1,49 @@
1
+ @runtime
2
+ @runtime1
3
+ Feature: Cartridge Lifecycle Ruby Verification Tests
4
+ Scenario Outline: Application Creation
5
+ Given the libra client tools
6
+ And an accepted node
7
+ When <app_count> <type> applications are created
8
+ Then the applications should be accessible
9
+
10
+ Scenarios: Application Creation Scenarios
11
+ | app_count | type |
12
+ | 1 | ruby-1.8 |
13
+
14
+ Scenario Outline: Application Modification
15
+ Given an existing <type> application
16
+ When the application is changed
17
+ Then it should be updated successfully
18
+ And the application should be accessible
19
+
20
+ Scenarios: Application Modification Scenarios
21
+ | type |
22
+ | ruby-1.8 |
23
+
24
+ Scenario Outline: Application Restarting
25
+ Given an existing <type> application
26
+ When the application is restarted
27
+ Then the application should be accessible
28
+
29
+ Scenarios: Application Restart Scenarios
30
+ | type |
31
+ | ruby-1.8 |
32
+
33
+ Scenario Outline: Application Tidy
34
+ Given an existing <type> application
35
+ When I tidy the application
36
+ Then the application should be accessible
37
+
38
+ Scenarios: Application Tidy Scenarios
39
+ | type |
40
+ | ruby-1.8 |
41
+
42
+ Scenario Outline: Application Destroying
43
+ Given an existing <type> application
44
+ When the application is destroyed
45
+ Then the application should not be accessible
46
+
47
+ Scenarios: Application Destroying Scenarios
48
+ | type |
49
+ | ruby-1.8 |
@@ -0,0 +1,41 @@
1
+ @runtime
2
+ @runtime1
3
+ @not-origin
4
+ Feature: Cartridge Lifecycle Ruby Verification Tests
5
+ Scenario Outline: Application Creation
6
+ Given the libra client tools
7
+ And an accepted node
8
+ When <app_count> <type> applications are created
9
+ Then the applications should be accessible
10
+
11
+ Scenarios: Application Creation Scenarios
12
+ | app_count | type |
13
+ | 1 | ruby-1.9 |
14
+
15
+ Scenario Outline: Application Modification
16
+ Given an existing <type> application
17
+ When the application is changed
18
+ Then it should be updated successfully
19
+ And the application should be accessible
20
+
21
+ Scenarios: Application Modification Scenarios
22
+ | type |
23
+ | ruby-1.9 |
24
+
25
+ Scenario Outline: Application Restarting
26
+ Given an existing <type> application
27
+ When the application is restarted
28
+ Then the application should be accessible
29
+
30
+ Scenarios: Application Restart Scenarios
31
+ | type |
32
+ | ruby-1.9 |
33
+
34
+ Scenario Outline: Application Destroying
35
+ Given an existing <type> application
36
+ When the application is destroyed
37
+ Then the application should not be accessible
38
+
39
+ Scenarios: Application Destroying Scenarios
40
+ | type |
41
+ | ruby-1.9 |
@@ -0,0 +1,31 @@
1
+ @runtime
2
+ @runtime1
3
+ Feature: MongoDB Application Sub-Cartridge
4
+
5
+ Scenario: Create Delete one application with a MongoDB database
6
+ Given a new perl-5.10 type application
7
+
8
+ When I embed a mongodb-2.2 cartridge into the application
9
+ Then 1 process named mongod will be running
10
+ And the embedded mongodb-2.2 cartridge directory will exist
11
+ And the mongodb configuration file will exist
12
+ And the mongodb database will exist
13
+ And the embedded mongodb-2.2 cartridge control script will not exist
14
+ And the mongodb admin user will have access
15
+
16
+ When I stop the mongodb-2.2 cartridge
17
+ Then 0 processes named mongod will be running
18
+
19
+ When I start the mongodb-2.2 cartridge
20
+ Then 1 process named mongod will be running
21
+
22
+ When the application cartridge PIDs are tracked
23
+ And I restart the mongodb-2.2 cartridge
24
+ Then 1 process named mongod will be running
25
+ And the tracked application cartridge PIDs should be changed
26
+
27
+ When I destroy the application
28
+ Then 0 processes named mongod will be running
29
+ And the mongodb database will not exist
30
+ And the mongodb configuration file will not exist
31
+ And the embedded mongodb-2.2 cartridge directory will not exist
@@ -0,0 +1,30 @@
1
+ @runtime
2
+ @runtime4
3
+ Feature: MySQL Application Sub-Cartridge
4
+
5
+ Scenario: Create Delete one application with a MySQL database
6
+ Given a new php-5.3 type application
7
+
8
+ When I embed a mysql-5.1 cartridge into the application
9
+ Then a mysqld process will be running
10
+ And the embedded mysql-5.1 cartridge directory will exist
11
+ And the mysql configuration file will exist
12
+ And the mysql database will exist
13
+ And the mysql admin user will have access
14
+
15
+ When I stop the mysql-5.1 cartridge
16
+ Then a mysqld process will not be running
17
+
18
+ When I start the mysql-5.1 cartridge
19
+ Then a mysqld process will be running
20
+
21
+ When the application cartridge PIDs are tracked
22
+ And I restart the mysql-5.1 cartridge
23
+ Then a mysqld process will be running
24
+ And the tracked application cartridge PIDs should be changed
25
+
26
+ When I destroy the application
27
+ Then a mysqld process will not be running
28
+ And the mysql database will not exist
29
+ And the mysql configuration file will not exist
30
+ And the embedded mysql-5.1 cartridge directory will not exist
@@ -0,0 +1,14 @@
1
+ @runtime
2
+ @runtime2
3
+ @not-origin
4
+ Feature: PHP Application
5
+
6
+ Scenario: Test Alias Hooks
7
+ Given a new php-5.3 type application
8
+ And I add an alias to the application
9
+ Then the php application will be aliased
10
+ And the php file permissions are correct
11
+ When I remove an alias from the application
12
+ Then the php application will not be aliased
13
+ When I destroy the application
14
+ Then the application http proxy file will not exist
@@ -0,0 +1,32 @@
1
+ @runtime
2
+ @runtime4
3
+ Feature: phpMyAdmin Embedded Cartridge
4
+
5
+ Scenario: Add Remove phpMyAdmin to one application
6
+ Given a new php-5.3 type application
7
+
8
+ When I embed a mysql-5.1 cartridge into the application
9
+ And I embed a phpmyadmin-3.4 cartridge into the application
10
+ Then the embedded phpmyadmin-3.4 cartridge http proxy file will exist
11
+ And 4 processes named httpd will be running
12
+ And the embedded phpmyadmin-3.4 cartridge directory will exist
13
+ And the embedded phpmyadmin-3.4 cartridge log files will exist
14
+
15
+ When I stop the phpmyadmin-3.4 cartridge
16
+ Then 2 processes named httpd will be running
17
+ And the web console for the phpmyadmin-3.4 cartridge is not accessible
18
+
19
+ When I start the phpmyadmin-3.4 cartridge
20
+ Then 4 processes named httpd will be running
21
+ And the web console for the phpmyadmin-3.4 cartridge is accessible
22
+
23
+
24
+ When I restart the phpmyadmin-3.4 cartridge
25
+ Then 4 processes named httpd will be running
26
+ And the web console for the phpmyadmin-3.4 cartridge is accessible
27
+
28
+ When I destroy the application
29
+ Then 0 processes named httpd will be running
30
+ And the embedded phpmyadmin-3.4 cartridge http proxy file will not exist
31
+ And the embedded phpmyadmin-3.4 cartridge directory will not exist
32
+ And the embedded phpmyadmin-3.4 cartridge log files will not exist
@@ -0,0 +1,32 @@
1
+ @runtime
2
+ @runtime3
3
+ @not-origin
4
+ Feature: PostgreSQL Application Sub-Cartridge
5
+
6
+ Scenario: Create Delete one application with a PostgreSQL database
7
+ Given a new perl-5.10 type application
8
+
9
+ When I embed a postgresql-8.4 cartridge into the application
10
+ Then a postgres process will be running
11
+ And the embedded postgresql-8.4 cartridge directory will exist
12
+ And the postgresql configuration file will exist
13
+ And the postgresql database will exist
14
+ And the embedded postgresql-8.4 cartridge control script will not exist
15
+ And the postgresql admin user will have access
16
+
17
+ When I stop the postgresql-8.4 cartridge
18
+ Then a postgres process will not be running
19
+
20
+ When I start the postgresql-8.4 cartridge
21
+ Then a postgres process will be running
22
+
23
+ When the application cartridge PIDs are tracked
24
+ And I restart the postgresql-8.4 cartridge
25
+ Then a postgres process will be running
26
+ And the tracked application cartridge PIDs should be changed
27
+
28
+ When I destroy the application
29
+ Then a postgres process will not be running
30
+ And the postgresql database will not exist
31
+ And the postgresql configuration file will not exist
32
+ And the embedded postgresql-8.4 cartridge directory will not exist
@@ -0,0 +1,64 @@
1
+ @runtime
2
+ Feature: Cartridge Runtime Extended Checks (Database)
3
+
4
+ @runtime_extended2
5
+ Scenario Outline: Embed and then remove database cartridges
6
+ Given a new <app_type> type application
7
+
8
+ When I embed a <db_cart_type> cartridge into the application
9
+ Then a <db_proc> process will be running
10
+ And the embedded <db_cart_type> cartridge directory will exist
11
+ And the <db_name> configuration file will exist
12
+ And the <db_name> database will exist
13
+ And the <db_name> admin user will have access
14
+ And the embedded <db_cart_type> cartridge control script will not exist
15
+
16
+ When I remove the <db_cart_type> cartridge from the application
17
+ Then a <db_proc> process will not be running
18
+ And the <db_name> database will not exist
19
+ And the <db_name> configuration file will not exist
20
+ And the embedded <db_cart_type> cartridge directory will not exist
21
+
22
+ Scenarios: Embed/Unembed database cartridge scenarios
23
+ | app_type | db_cart_type | db_proc | db_name |
24
+ | php-5.3 | mysql-5.1 | mysqld | mysql |
25
+ | php-5.3 | mongodb-2.2 | mongod | mongodb |
26
+ | ruby-1.9 | mongodb-2.2 | mongod | mongodb |
27
+ | ruby-1.8 | mongodb-2.2 | mongod | mongodb |
28
+
29
+
30
+ @runtime_extended2
31
+ @not-origin
32
+ Scenario Outline: Embed and then remove database cartridges
33
+ Given a new <app_type> type application
34
+
35
+ When I embed a <db_cart_type> cartridge into the application
36
+ Then a <db_proc> process will be running
37
+ And the embedded <db_cart_type> cartridge directory will exist
38
+ And the <db_name> configuration file will exist
39
+ And the <db_name> database will exist
40
+ And the embedded <db_cart_type> cartridge control script will not exist
41
+
42
+ When I remove the <db_cart_type> cartridge from the application
43
+ Then a <db_proc> process will not be running
44
+ And the <db_name> database will not exist
45
+ And the embedded <db_cart_type> cartridge control script will not exist
46
+ And the <db_name> configuration file will not exist
47
+ And the embedded <db_cart_type> cartridge directory will not exist
48
+
49
+ Scenarios: Embed/Unembed database cartridge scenarios
50
+ | app_type | db_cart_type | db_proc | db_name |
51
+ | php-5.3 | postgresql-8.4 | postgres | postgresql |
52
+
53
+ @runtime_extended2
54
+ Scenario: Embed all databases into one cartridges
55
+ Given a new php-5.3 type application
56
+ When I embed a mysql-5.1 cartridge into the application
57
+ And I embed a postgresql-8.4 cartridge into the application
58
+ And I embed a mongodb-2.2 cartridge into the application
59
+ Then a mysqld process will be running
60
+ And the embedded mysql-5.1 cartridge directory will exist
61
+ And a postgres process will be running
62
+ And the embedded postgresql-8.4 cartridge directory will exist
63
+ And a mongod process will be running
64
+ And the embedded mongodb-2.2 cartridge directory will exist
@@ -0,0 +1,24 @@
1
+ @runtime
2
+ @not-origin
3
+ Feature: Cartridge Runtime Extended Checks (JBoss)
4
+
5
+ @runtime_extended2
6
+ Scenario Outline: Hot deployment tests
7
+ Given a new <type> type application
8
+ And the application is made publicly accessible
9
+ And hot deployment <hot_deploy_status> for the application
10
+ And the application cartridge PIDs are tracked
11
+ When an update is pushed to the application repo
12
+ Then a <proc_name> process will be running
13
+ And the tracked application cartridge PIDs <pid_changed> changed
14
+ When I destroy the application
15
+ Then a <proc_name> process will not be running
16
+
17
+ Scenarios: Code push scenarios
18
+ | type | proc_name | hot_deploy_status | pid_changed |
19
+ | jbossas-7 | java | is enabled | should not be |
20
+ | jbossas-7 | java | is not enabled | should be |
21
+ | jbosseap-6.0 | java | is enabled | should not be |
22
+ | jbosseap-6.0 | java | is not enabled | should be |
23
+ | jbossews-1.0 | java | is enabled | should not be |
24
+ | jbossews-1.0 | java | is not enabled | should be |
@@ -0,0 +1,21 @@
1
+ @runtime
2
+ @not-origin
3
+ Feature: Cartridge Runtime Extended Checks (Node)
4
+
5
+ @runtime_extended2
6
+ Scenario Outline: Hot deployment tests
7
+ Given a new <type> type application
8
+ And the application is made publicly accessible
9
+ And hot deployment <hot_deploy_status> for the application
10
+ And an update has been pushed to the application repo
11
+ And the application cartridge PIDs are tracked
12
+ When an update is pushed to the application repo
13
+ Then a <proc_name> process will be running
14
+ And the tracked application cartridge PIDs <pid_changed> changed
15
+ When I destroy the application
16
+ Then a <proc_name> process will not be running
17
+
18
+ Scenarios: Code push scenarios
19
+ | type | proc_name | hot_deploy_status | pid_changed |
20
+ | nodejs-0.6 | node | is enabled | should not be |
21
+ | nodejs-0.6 | node | is not enabled | should be |
@@ -0,0 +1,18 @@
1
+ @runtime
2
+ Feature: Cartridge Runtime Extended Checks (Perl)
3
+
4
+ @runtime_extended2
5
+ Scenario Outline: Hot deployment tests
6
+ Given a new <type> type application
7
+ And the application is made publicly accessible
8
+ And hot deployment <hot_deploy_status> for the application
9
+ And the application cartridge PIDs are tracked
10
+ When an update is pushed to the application repo
11
+ Then a <proc_name> process will be running
12
+ And the tracked application cartridge PIDs <pid_changed> changed
13
+ When I destroy the application
14
+ Then a <proc_name> process will not be running
15
+
16
+ Scenarios: Code push scenarios
17
+ | type | proc_name | hot_deploy_status | pid_changed |
18
+ | perl-5.10 | httpd | is not enabled | should be |
@@ -0,0 +1,19 @@
1
+ @runtime
2
+ Feature: Cartridge Runtime Extended Checks (PHP)
3
+
4
+ @runtime_extended2
5
+ Scenario Outline: Hot deployment tests
6
+ Given a new <type> type application
7
+ And the application is made publicly accessible
8
+ And hot deployment <hot_deploy_status> for the application
9
+ And the application cartridge PIDs are tracked
10
+ When an update is pushed to the application repo
11
+ Then a <proc_name> process will be running
12
+ And the tracked application cartridge PIDs <pid_changed> changed
13
+ When I destroy the application
14
+ Then a <proc_name> process will not be running
15
+
16
+ Scenarios: Code push scenarios
17
+ | type | proc_name | hot_deploy_status | pid_changed |
18
+ | php-5.3 | httpd | is enabled | should not be |
19
+ | php-5.3 | httpd | is not enabled | should be |
@@ -0,0 +1,18 @@
1
+ @runtime
2
+ Feature: Cartridge Runtime Extended Checks (Python)
3
+
4
+ @runtime_extended2
5
+ Scenario Outline: Hot deployment tests
6
+ Given a new <type> type application
7
+ And the application is made publicly accessible
8
+ And hot deployment <hot_deploy_status> for the application
9
+ And the application cartridge PIDs are tracked
10
+ When an update is pushed to the application repo
11
+ Then a <proc_name> process will be running
12
+ And the tracked application cartridge PIDs <pid_changed> changed
13
+ When I destroy the application
14
+ Then a <proc_name> process will not be running
15
+
16
+ Scenarios: Code push scenarios
17
+ | type | proc_name | hot_deploy_status | pid_changed |
18
+ | python-2.6 | httpd | is not enabled | should be |