test-kitchen 1.23.3 → 1.23.4

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.
Files changed (254) hide show
  1. checksums.yaml +4 -4
  2. data/lib/kitchen/version.rb +1 -1
  3. data/support/chef-client-zero.rb +1 -1
  4. metadata +5 -324
  5. data/.gitattributes +0 -3
  6. data/.github/ISSUE_TEMPLATE.md +0 -56
  7. data/.github/lock.yml +0 -1
  8. data/.gitignore +0 -38
  9. data/.gitmodules +0 -0
  10. data/.kitchen.appveyor.yml +0 -25
  11. data/.kitchen.dokken.yml +0 -31
  12. data/.kitchen.proxy.yml +0 -27
  13. data/.rubocop.yml +0 -5
  14. data/.travis.yml +0 -57
  15. data/.yardopts +0 -3
  16. data/Berksfile +0 -3
  17. data/CHANGELOG.md +0 -1510
  18. data/CONTRIBUTING.md +0 -14
  19. data/ECOSYSTEM.md +0 -93
  20. data/Gemfile +0 -40
  21. data/Gemfile.proxy_tests +0 -4
  22. data/Guardfile +0 -42
  23. data/MAINTAINERS.md +0 -29
  24. data/README.md +0 -138
  25. data/RELEASE_NOTES.md +0 -167
  26. data/Rakefile +0 -77
  27. data/appveyor.yml +0 -47
  28. data/docs/CONTRIBUTING.md +0 -8
  29. data/docs/LICENSE +0 -22
  30. data/docs/README.md +0 -78
  31. data/docs/archetypes/default.md +0 -6
  32. data/docs/config.toml +0 -36
  33. data/docs/content/docs/_index.md +0 -5
  34. data/docs/content/docs/drivers/_index.md +0 -27
  35. data/docs/content/docs/drivers/azurerm.md +0 -44
  36. data/docs/content/docs/drivers/vagrant.md +0 -39
  37. data/docs/content/docs/getting-started/00-introduction.md +0 -14
  38. data/docs/content/docs/getting-started/01-installing.md +0 -64
  39. data/docs/content/docs/getting-started/02-getting-help.md +0 -59
  40. data/docs/content/docs/getting-started/03-creating-cookbook.md +0 -46
  41. data/docs/content/docs/getting-started/04-kitchen-yml.md +0 -56
  42. data/docs/content/docs/getting-started/05-instances.md +0 -79
  43. data/docs/content/docs/getting-started/06-writing-recipe.md +0 -21
  44. data/docs/content/docs/getting-started/07-running-converge.md +0 -134
  45. data/docs/content/docs/getting-started/08-manually-verifying.md +0 -55
  46. data/docs/content/docs/getting-started/09-writing-test.md +0 -49
  47. data/docs/content/docs/getting-started/10-running-verify.md +0 -120
  48. data/docs/content/docs/getting-started/11-running-test.md +0 -168
  49. data/docs/content/docs/getting-started/12-adding-platform.md +0 -206
  50. data/docs/content/docs/getting-started/13-adding-feature.md +0 -30
  51. data/docs/content/docs/getting-started/14-adding-suite.md +0 -60
  52. data/docs/content/docs/getting-started/15-adding-test.md +0 -66
  53. data/docs/content/docs/getting-started/16-adding-recipe.md +0 -53
  54. data/docs/content/docs/getting-started/17-excluding-platforms.md +0 -101
  55. data/docs/content/docs/getting-started/18-next-steps.md +0 -23
  56. data/docs/content/docs/getting-started/_index.md +0 -5
  57. data/docs/content/docs/provisioners/_index.md +0 -36
  58. data/docs/content/docs/provisioners/chef.md +0 -69
  59. data/docs/content/docs/provisioners/shell.md +0 -31
  60. data/docs/content/docs/reference/_index.md +0 -5
  61. data/docs/content/docs/reference/configuration.md +0 -53
  62. data/docs/content/docs/reference/examples.md +0 -97
  63. data/docs/content/docs/reference/faq.md +0 -58
  64. data/docs/content/docs/reference/fixtures.md +0 -32
  65. data/docs/content/docs/reference/glossary.md +0 -34
  66. data/docs/content/docs/reference/lifecycle-hooks.md +0 -68
  67. data/docs/content/docs/reference/reboots.md +0 -24
  68. data/docs/content/docs/verifiers/_index.md +0 -14
  69. data/docs/content/docs/verifiers/inspec.md +0 -44
  70. data/docs/content/docs/verifiers/serverspec.md +0 -20
  71. data/docs/static/images/chef-logo.png +0 -0
  72. data/docs/static/images/chef-logo.svg +0 -1
  73. data/docs/static/images/github-banner.png +0 -0
  74. data/docs/static/images/github-banner.svg +0 -71
  75. data/docs/static/images/kitchen-logo.png +0 -0
  76. data/docs/static/images/logo-block.svg +0 -222
  77. data/docs/static/images/logo.png +0 -0
  78. data/docs/static/images/logos-group.png +0 -0
  79. data/docs/static/images/terminal-1.png +0 -0
  80. data/docs/static/images/terminal-1.svg +0 -589
  81. data/docs/static/images/terminal-2.png +0 -0
  82. data/docs/static/images/terminal-2.svg +0 -235
  83. data/docs/static/images/terminal-3.png +0 -0
  84. data/docs/static/images/terminal-3.svg +0 -439
  85. data/docs/static/index.html +0 -59
  86. data/docs/static/javascripts/all.js +0 -348
  87. data/docs/static/javascripts/vendor/foundation.min.js +0 -4
  88. data/docs/static/javascripts/vendor/jquery.min.js +0 -5
  89. data/docs/static/javascripts/vendor/what-input.js +0 -336
  90. data/docs/static/stylesheets/site.css +0 -4667
  91. data/docs/themes/kitchen/layouts/_default/baseof.html +0 -53
  92. data/docs/themes/kitchen/layouts/_default/list.html +0 -4
  93. data/docs/themes/kitchen/layouts/_default/redirect.html +0 -10
  94. data/docs/themes/kitchen/layouts/_default/single.html +0 -6
  95. data/docs/themes/kitchen/layouts/partials/core/head.html +0 -6
  96. data/docs/themes/kitchen/layouts/partials/kitchen/footer.html +0 -18
  97. data/docs/themes/kitchen/layouts/partials/kitchen/head.html +0 -4
  98. data/docs/themes/kitchen/layouts/partials/kitchen/header.html +0 -26
  99. data/docs/themes/kitchen/layouts/partials/search-docs.html +0 -3
  100. data/docs/themes/kitchen/layouts/partials/sidebar.html +0 -33
  101. data/docs/themes/kitchen/layouts/shortcodes/button.html +0 -1
  102. data/docs/themes/kitchen/layouts/shortcodes/codeblock.html +0 -8
  103. data/docs/themes/kitchen/layouts/shortcodes/cta.html +0 -5
  104. data/docs/themes/kitchen/layouts/shortcodes/danger.html +0 -1
  105. data/docs/themes/kitchen/layouts/shortcodes/example_fqdn.html +0 -1
  106. data/docs/themes/kitchen/layouts/shortcodes/info.html +0 -1
  107. data/docs/themes/kitchen/layouts/shortcodes/ol-styled.html +0 -3
  108. data/docs/themes/kitchen/layouts/shortcodes/success.html +0 -1
  109. data/docs/themes/kitchen/layouts/shortcodes/tip.html +0 -1
  110. data/docs/themes/kitchen/layouts/shortcodes/warning.html +0 -1
  111. data/docs/themes/kitchen/static/css/kitchen.css +0 -10
  112. data/docs/themes/kitchen/static/css/kitchen.css.map +0 -7
  113. data/docs/themes/kitchen/static/fonts/Muli-Bold.ttf +0 -0
  114. data/docs/themes/kitchen/static/fonts/Muli-Regular.ttf +0 -0
  115. data/docs/themes/kitchen/static/fonts/Muli-SemiBold.ttf +0 -0
  116. data/docs/themes/kitchen/static/fonts/fontawesome/fa-brands-400.eot +0 -0
  117. data/docs/themes/kitchen/static/fonts/fontawesome/fa-brands-400.svg +0 -1104
  118. data/docs/themes/kitchen/static/fonts/fontawesome/fa-brands-400.ttf +0 -0
  119. data/docs/themes/kitchen/static/fonts/fontawesome/fa-brands-400.woff +0 -0
  120. data/docs/themes/kitchen/static/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  121. data/docs/themes/kitchen/static/fonts/fontawesome/fa-regular-400.eot +0 -0
  122. data/docs/themes/kitchen/static/fonts/fontawesome/fa-regular-400.svg +0 -372
  123. data/docs/themes/kitchen/static/fonts/fontawesome/fa-regular-400.ttf +0 -0
  124. data/docs/themes/kitchen/static/fonts/fontawesome/fa-regular-400.woff +0 -0
  125. data/docs/themes/kitchen/static/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  126. data/docs/themes/kitchen/static/fonts/fontawesome/fa-solid-900.eot +0 -0
  127. data/docs/themes/kitchen/static/fonts/fontawesome/fa-solid-900.svg +0 -1896
  128. data/docs/themes/kitchen/static/fonts/fontawesome/fa-solid-900.ttf +0 -0
  129. data/docs/themes/kitchen/static/fonts/fontawesome/fa-solid-900.woff +0 -0
  130. data/docs/themes/kitchen/static/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  131. data/docs/themes/kitchen/static/images/chef-logo-light.svg +0 -36
  132. data/docs/themes/kitchen/static/images/chef-logo-white.svg +0 -38
  133. data/docs/themes/kitchen/static/images/chef-logo.svg +0 -37
  134. data/docs/themes/kitchen/static/images/favicon.ico +0 -0
  135. data/docs/themes/kitchen/static/js/scripts-all.js +0 -7
  136. data/docs/themes/kitchen/static/js/source/chef-hugo.js +0 -116
  137. data/docs/themes/kitchen/static/js/source/omnitruck.js +0 -82
  138. data/docs/themes/kitchen/static/js/source/segment.js +0 -52
  139. data/docs/themes/kitchen/static/sass/_buttons.scss +0 -161
  140. data/docs/themes/kitchen/static/sass/_core.scss +0 -24
  141. data/docs/themes/kitchen/static/sass/_forms.scss +0 -14
  142. data/docs/themes/kitchen/static/sass/_mixins.scss +0 -133
  143. data/docs/themes/kitchen/static/sass/_typography.scss +0 -34
  144. data/docs/themes/kitchen/static/sass/_variables.scss +0 -82
  145. data/docs/themes/kitchen/static/sass/kitchen.scss +0 -7
  146. data/docs/themes/kitchen/static/sass/kitchen/_footer.scss +0 -50
  147. data/docs/themes/kitchen/static/sass/kitchen/_header.scss +0 -187
  148. data/docs/themes/kitchen/static/sass/kitchen/_homepage.scss +0 -27
  149. data/docs/themes/kitchen/static/sass/kitchen/_utility-bar.scss +0 -173
  150. data/docs/themes/kitchen/static/sass/partials/_alerts.scss +0 -32
  151. data/docs/themes/kitchen/static/sass/partials/_bg.scss +0 -19
  152. data/docs/themes/kitchen/static/sass/partials/_blurbs.scss +0 -25
  153. data/docs/themes/kitchen/static/sass/partials/_callout.scss +0 -15
  154. data/docs/themes/kitchen/static/sass/partials/_cards.scss +0 -54
  155. data/docs/themes/kitchen/static/sass/partials/_dropdown.scss +0 -77
  156. data/docs/themes/kitchen/static/sass/partials/_grid.scss +0 -87
  157. data/docs/themes/kitchen/static/sass/partials/_padding.scss +0 -73
  158. data/docs/themes/kitchen/static/sass/partials/_sidebar.scss +0 -71
  159. data/docs/themes/kitchen/static/sass/partials/_tabs.scss +0 -125
  160. data/docs/themes/kitchen/static/sass/typography/_chroma.scss +0 -366
  161. data/docs/themes/kitchen/static/sass/typography/_code.scss +0 -72
  162. data/docs/themes/kitchen/static/sass/typography/_headers.scss +0 -90
  163. data/docs/themes/kitchen/static/sass/typography/_links.scss +0 -127
  164. data/docs/themes/kitchen/static/sass/typography/_lists.scss +0 -155
  165. data/docs/themes/kitchen/static/sass/typography/_prose.scss +0 -29
  166. data/docs/themes/kitchen/static/sass/typography/_text.scss +0 -221
  167. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_animated.scss +0 -20
  168. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_bordered-pulled.scss +0 -20
  169. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_core.scss +0 -16
  170. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_fixed-width.scss +0 -6
  171. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_icons.scss +0 -992
  172. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_larger.scss +0 -23
  173. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_list.scss +0 -18
  174. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_mixins.scss +0 -57
  175. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_rotated-flipped.scss +0 -23
  176. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_screen-reader.scss +0 -5
  177. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_stacked.scss +0 -31
  178. data/docs/themes/kitchen/static/sass/vendor/fontawesome/_variables.scss +0 -1005
  179. data/docs/themes/kitchen/static/sass/vendor/fontawesome/fa-brands.scss +0 -21
  180. data/docs/themes/kitchen/static/sass/vendor/fontawesome/fa-regular.scss +0 -22
  181. data/docs/themes/kitchen/static/sass/vendor/fontawesome/fa-solid.scss +0 -23
  182. data/docs/themes/kitchen/static/sass/vendor/fontawesome/fontawesome.scss +0 -16
  183. data/docs/themes/kitchen/theme.toml +0 -8
  184. data/features/kitchen_action_commands.feature +0 -164
  185. data/features/kitchen_command.feature +0 -16
  186. data/features/kitchen_console_command.feature +0 -35
  187. data/features/kitchen_defaults.feature +0 -38
  188. data/features/kitchen_diagnose_command.feature +0 -96
  189. data/features/kitchen_help_command.feature +0 -16
  190. data/features/kitchen_init_command.feature +0 -254
  191. data/features/kitchen_list_command.feature +0 -140
  192. data/features/kitchen_login_command.feature +0 -62
  193. data/features/kitchen_sink_command.feature +0 -30
  194. data/features/kitchen_test_command.feature +0 -88
  195. data/features/step_definitions/gem_steps.rb +0 -24
  196. data/features/step_definitions/git_steps.rb +0 -5
  197. data/features/step_definitions/output_steps.rb +0 -5
  198. data/features/support/env.rb +0 -74
  199. data/spec/kitchen/base64_stream_spec.rb +0 -74
  200. data/spec/kitchen/cli_spec.rb +0 -54
  201. data/spec/kitchen/collection_spec.rb +0 -76
  202. data/spec/kitchen/color_spec.rb +0 -51
  203. data/spec/kitchen/config_spec.rb +0 -434
  204. data/spec/kitchen/configurable_spec.rb +0 -1113
  205. data/spec/kitchen/data_munger_spec.rb +0 -2800
  206. data/spec/kitchen/diagnostic_spec.rb +0 -128
  207. data/spec/kitchen/driver/base_spec.rb +0 -132
  208. data/spec/kitchen/driver/dummy_spec.rb +0 -193
  209. data/spec/kitchen/driver/exec_spec.rb +0 -75
  210. data/spec/kitchen/driver/proxy_spec.rb +0 -127
  211. data/spec/kitchen/driver/ssh_base_spec.rb +0 -1136
  212. data/spec/kitchen/driver_spec.rb +0 -106
  213. data/spec/kitchen/errors_spec.rb +0 -317
  214. data/spec/kitchen/instance_spec.rb +0 -1372
  215. data/spec/kitchen/lazy_hash_spec.rb +0 -113
  216. data/spec/kitchen/lifecycle_hooks_spec.rb +0 -171
  217. data/spec/kitchen/loader/yaml_spec.rb +0 -787
  218. data/spec/kitchen/logger_spec.rb +0 -425
  219. data/spec/kitchen/logging_spec.rb +0 -56
  220. data/spec/kitchen/login_command_spec.rb +0 -67
  221. data/spec/kitchen/metadata_chopper_spec.rb +0 -79
  222. data/spec/kitchen/platform_spec.rb +0 -88
  223. data/spec/kitchen/provisioner/base_spec.rb +0 -393
  224. data/spec/kitchen/provisioner/chef/policyfile_spec.rb +0 -140
  225. data/spec/kitchen/provisioner/chef_apply_spec.rb +0 -131
  226. data/spec/kitchen/provisioner/chef_base_spec.rb +0 -1565
  227. data/spec/kitchen/provisioner/chef_solo_spec.rb +0 -602
  228. data/spec/kitchen/provisioner/chef_zero_spec.rb +0 -1013
  229. data/spec/kitchen/provisioner/dummy_spec.rb +0 -96
  230. data/spec/kitchen/provisioner/shell_spec.rb +0 -623
  231. data/spec/kitchen/provisioner_spec.rb +0 -101
  232. data/spec/kitchen/shell_out_spec.rb +0 -146
  233. data/spec/kitchen/ssh_spec.rb +0 -584
  234. data/spec/kitchen/state_file_spec.rb +0 -122
  235. data/spec/kitchen/suite_spec.rb +0 -61
  236. data/spec/kitchen/transport/base_spec.rb +0 -140
  237. data/spec/kitchen/transport/exec_spec.rb +0 -79
  238. data/spec/kitchen/transport/ssh_spec.rb +0 -1317
  239. data/spec/kitchen/transport/winrm_spec.rb +0 -1320
  240. data/spec/kitchen/transport_spec.rb +0 -106
  241. data/spec/kitchen/util_spec.rb +0 -250
  242. data/spec/kitchen/verifier/base_spec.rb +0 -346
  243. data/spec/kitchen/verifier/busser_spec.rb +0 -580
  244. data/spec/kitchen/verifier/dummy_spec.rb +0 -96
  245. data/spec/kitchen/verifier/shell_spec.rb +0 -157
  246. data/spec/kitchen/verifier_spec.rb +0 -114
  247. data/spec/kitchen_spec.rb +0 -112
  248. data/spec/spec_helper.rb +0 -110
  249. data/spec/support/powershell_max_size_spec.rb +0 -39
  250. data/test-kitchen.gemspec +0 -49
  251. data/test/cookbooks/test_cookbook/metadata.rb +0 -6
  252. data/test/cookbooks/test_cookbook/recipes/default.rb +0 -1
  253. data/test/integration/default/default_spec.rb +0 -3
  254. data/testing_windows.md +0 -38
@@ -1,16 +0,0 @@
1
- Feature: Using Test Kitchen CLI help
2
- In order to access the self describing documentation
3
- As a user of Test Kitchen
4
- I want to run a command help help for kitchen commands
5
-
6
- @spawn
7
- Scenario: Printing help
8
- When I run `kitchen help`
9
- Then the exit status should be 0
10
- And the output should contain "kitchen help [COMMAND]"
11
-
12
- @spawn
13
- Scenario: Bad arugments should exit nonzero
14
- When I run `kitchen help -d always -c`
15
- Then the exit status should not be 0
16
- And the output should contain "Usage: "
@@ -1,254 +0,0 @@
1
- Feature: Add Test Kitchen support to an existing project
2
- In order to add Test Kitchen to a project with minimal effort
3
- As an operator
4
- I want to run a command to initialize my project
5
-
6
- @spawn
7
- Scenario: Displaying help
8
- When I run `kitchen help init`
9
- Then the output should contain:
10
- """
11
- Usage:
12
- kitchen init
13
- """
14
- And the exit status should be 0
15
-
16
- @spawn
17
- Scenario: Running init with default values
18
- Given I have a git repository
19
- When I run `kitchen init`
20
- Then the exit status should be 0
21
- And a directory named "test/integration/default" should exist
22
- And the file ".gitignore" should contain ".kitchen/"
23
- And the file ".gitignore" should contain "kitchen.local.yml"
24
- And the file ".gitignore" should contain ".kitchen.local.yml"
25
- And the file "kitchen.yml" should exist:
26
- And the file "kitchen.yml" should contain:
27
- """
28
- driver:
29
- name: vagrant
30
- """
31
- And a file named "Gemfile" should not exist
32
- And a file named "Rakefile" should not exist
33
- And a file named "Thorfile" should not exist
34
- And a gem named "kitchen-vagrant" is installed
35
- And a file named "chefignore" should exist
36
- And the file "chefignore" should contain ".kitchen"
37
-
38
- Scenario: Running init that creates a Gemfile
39
- When I successfully run `kitchen init --create-gemfile`
40
- Then the file "Gemfile" should contain "https://rubygems.org"
41
- And the file "Gemfile" should contain:
42
- """
43
- gem "test-kitchen"
44
- """
45
- And the output should contain "You must run `bundle install'"
46
-
47
- Scenario: Running init with an existing Gemfile appends to the Gemfile
48
- Given a file named "Gemfile" with:
49
- """
50
- source "https://rubygems.org"
51
-
52
-
53
- """
54
- When I successfully run `kitchen init`
55
- Then the file "Gemfile" should contain exactly:
56
- """
57
- source "https://rubygems.org"
58
-
59
- gem "test-kitchen"
60
-
61
- """
62
- And the output should contain "You must run `bundle install'"
63
-
64
- Scenario: Running init with a Gemfile containing test-kitchen does not
65
- re-append
66
- Given a file named "Gemfile" with:
67
- """
68
- source "https://rubygems.org"
69
-
70
- gem 'test-kitchen'
71
-
72
- """
73
- When I successfully run `kitchen init`
74
- Then the file "Gemfile" should contain exactly:
75
- """
76
- source "https://rubygems.org"
77
-
78
- gem 'test-kitchen'
79
-
80
- """
81
-
82
- Scenario: Running init with a Gemfile containing the driver gem does not
83
- re-append
84
- Given a file named "Gemfile" with:
85
- """
86
- source "https://rubygems.org"
87
-
88
- gem 'test-kitchen'
89
- gem 'kitchen-ec2'
90
-
91
- """
92
- When I successfully run `kitchen init --driver=kitchen-ec2`
93
- Then the file "Gemfile" should contain exactly:
94
- """
95
- source "https://rubygems.org"
96
-
97
- gem 'test-kitchen'
98
- gem 'kitchen-ec2'
99
-
100
- """
101
- And the output should not contain "You must run `bundle install'"
102
-
103
- Scenario: Running init with multiple driver sets the plugin_driver to the
104
- first driver given
105
- Given an empty file named "Gemfile"
106
- When I successfully run `kitchen init --driver=kitchen-bluebox kitchen-wakka`
107
- Then the file "kitchen.yml" should exist
108
- Then the file "kitchen.yml" should contain:
109
- """
110
- driver:
111
- name: bluebox
112
- """
113
-
114
- Scenario: Running init with no drivers sets the plugin_driver to the
115
- dummy driver
116
- Given an empty file named "Gemfile"
117
- When I successfully run `kitchen init --no-driver`
118
- Then the file "kitchen.yml" should contain:
119
- """
120
- driver:
121
- name: dummy
122
- """
123
-
124
- Scenario: Running init without a provisioner sets the default provisioner
125
- to chef_solo in kitchen.yml
126
- Given an empty file named "Gemfile"
127
- When I successfully run `kitchen init --no-driver`
128
- Then the file "kitchen.yml" should contain:
129
- """
130
- provisioner:
131
- name: chef_solo
132
- """
133
-
134
- Scenario: Running init with a provisioner sets the provisioner in kitchen.yml
135
- Given an empty file named "Gemfile"
136
- When I successfully run `kitchen init --no-driver --provisioner=chef_zero`
137
- Then the file "kitchen.yml" should contain:
138
- """
139
- provisioner:
140
- name: chef_zero
141
- """
142
-
143
- Scenario: Running with a Rakefile file appends Kitchen tasks
144
- Given an empty file named "Gemfile"
145
- And an empty file named "Rakefile"
146
- When I successfully run `kitchen init`
147
- Then the file "Rakefile" should contain:
148
- """
149
- begin
150
- require 'kitchen/rake_tasks'
151
- Kitchen::RakeTasks.new
152
- rescue LoadError
153
- puts '>>>>> Kitchen gem not loaded, omitting tasks' unless ENV['CI']
154
- end
155
- """
156
-
157
- Scenario: Running without git doesn't make a .gitignore
158
- When I successfully run `kitchen init --no-driver`
159
- Then the exit status should be 0
160
- And a file named ".gitignore" should not exist
161
-
162
- Scenario: Running with a Thorfile file appends Kitchen tasks
163
- Given an empty file named "Gemfile"
164
- Given an empty file named "Thorfile"
165
- When I successfully run `kitchen init`
166
- Then the file "Thorfile" should contain:
167
- """
168
- begin
169
- require 'kitchen/thor_tasks'
170
- Kitchen::ThorTasks.new
171
- rescue LoadError
172
- puts '>>>>> Kitchen gem not loaded, omitting tasks' unless ENV['CI']
173
- end
174
- """
175
-
176
- Scenario: Running init with a name in metadata.rb sets a run list
177
- Given an empty file named "Gemfile"
178
- Given a file named "metadata.rb" with:
179
- """
180
- name "ntp"
181
- license "Apache 2.0"
182
- description "Installs and configures ntp as a client or server"
183
- version "0.1.0"
184
-
185
- support "ubuntu"
186
- support "centos"
187
- """
188
- When I successfully run `kitchen init`
189
- Then the file "kitchen.yml" should contain exactly:
190
- """
191
- ---
192
- driver:
193
- name: vagrant
194
-
195
- provisioner:
196
- name: chef_solo
197
-
198
- platforms:
199
- - name: ubuntu-16.04
200
- - name: centos-7
201
-
202
- suites:
203
- - name: default
204
- run_list:
205
- - recipe[ntp::default]
206
- attributes:
207
-
208
- """
209
-
210
- Scenario: Running init with an empty file metadata.rb sets an empty run list
211
- Given an empty file named "metadata.rb"
212
- When I successfully run `kitchen init`
213
- Then the file "kitchen.yml" should contain exactly:
214
- """
215
- ---
216
- driver:
217
- name: vagrant
218
-
219
- provisioner:
220
- name: chef_solo
221
-
222
- platforms:
223
- - name: ubuntu-16.04
224
- - name: centos-7
225
-
226
- suites:
227
- - name: default
228
- run_list:
229
- attributes:
230
-
231
- """
232
-
233
- Scenario: Running init with no metadata.rb file sets an empty run list
234
- Given a file named "metadata.rb" does not exist
235
- When I successfully run `kitchen init`
236
- Then the file "kitchen.yml" should contain exactly:
237
- """
238
- ---
239
- driver:
240
- name: vagrant
241
-
242
- provisioner:
243
- name: chef_solo
244
-
245
- platforms:
246
- - name: ubuntu-16.04
247
- - name: centos-7
248
-
249
- suites:
250
- - name: default
251
- run_list:
252
- attributes:
253
-
254
- """
@@ -1,140 +0,0 @@
1
- Feature: Listing Test Kitchen instances
2
- In order to understand how the .kitchen.yml is consumed
3
- As a user of Test Kitchen
4
- I want to run a command to see the state of my instances
5
-
6
- Background:
7
- Given a file named ".kitchen.yml" with:
8
- """
9
- ---
10
- driver: dummy
11
- provisioner: chef_solo
12
-
13
- platforms:
14
- - name: ubuntu-13.04
15
- - name: centos-6.4
16
- - name: centos-6.4-with-small-mem
17
-
18
- suites:
19
- - name: foobar
20
- """
21
-
22
- Scenario: Listing instances
23
- When I run `kitchen list`
24
- Then the exit status should be 0
25
- And the output should match /^foobar-ubuntu-1304\s+Dummy\s+ChefSolo\s+Busser\s+Ssh\s+\<Not Created\>\s+\<None\>$/
26
- And the output should match /^foobar-centos-64\s+Dummy\s+ChefSolo\s+Busser\s+Ssh\s+\<Not Created\>\s+\<None\>$/
27
-
28
- Scenario: Listing a single instance with the --json option
29
- When I run `kitchen list --json`
30
- Then the exit status should be 0
31
- And the output should contain exactly:
32
- """
33
- [
34
- {
35
- "instance": "foobar-ubuntu-1304",
36
- "driver": "Dummy",
37
- "provisioner": "ChefSolo",
38
- "verifier": "Busser",
39
- "transport": "Ssh",
40
- "last_action": null,
41
- "last_error": null
42
- },
43
- {
44
- "instance": "foobar-centos-64",
45
- "driver": "Dummy",
46
- "provisioner": "ChefSolo",
47
- "verifier": "Busser",
48
- "transport": "Ssh",
49
- "last_action": null,
50
- "last_error": null
51
- },
52
- {
53
- "instance": "foobar-centos-64-with-small-mem",
54
- "driver": "Dummy",
55
- "provisioner": "ChefSolo",
56
- "verifier": "Busser",
57
- "transport": "Ssh",
58
- "last_action": null,
59
- "last_error": null
60
- }
61
- ]
62
- """
63
-
64
- Scenario: Listing instances with the --bare option
65
- When I run `kitchen list --bare`
66
- Then the exit status should be 0
67
- And the output should contain exactly:
68
- """
69
- foobar-ubuntu-1304
70
- foobar-centos-64
71
- foobar-centos-64-with-small-mem
72
-
73
- """
74
-
75
- Scenario: Listing instances with a simple regular expression glob
76
- When I successfully run `kitchen list ubun --bare`
77
- Then the output should contain exactly:
78
- """
79
- foobar-ubuntu-1304
80
-
81
- """
82
-
83
- Scenario: Listing instances with a Ruby regular expression glob, requiring
84
- signle quoting on the command line
85
- When I successfully run `kitchen list '^foo.*\-(10|13)04$' --bare`
86
- Then the output should contain exactly:
87
- """
88
- foobar-ubuntu-1304
89
-
90
- """
91
-
92
- @spawn
93
- Scenario: Listing instances with a regular expression yielding no results
94
- When I run `kitchen list freebsd --bare`
95
- Then the exit status should not be 0
96
- And the output should contain "No instances for regex `freebsd', try running `kitchen list'"
97
-
98
- @spawn
99
- Scenario: Listing instances with a bad regular expression
100
- When I run `kitchen list *centos* --bare`
101
- Then the exit status should not be 0
102
- And the output should contain "Invalid Ruby regular expression"
103
-
104
- Scenario: Listing a full instance name returns an exact match, not fuzzy matches
105
- When I successfully run `kitchen list foobar-centos-64 --bare`
106
- Then the output should contain exactly:
107
- """
108
- foobar-centos-64
109
-
110
- """
111
-
112
- Scenario: Listing a full instance name returns an exact match, not fuzzy matches at start
113
- Given a file named ".kitchen.yml" with:
114
- """
115
- ---
116
- driver: dummy
117
- provisioner: chef_solo
118
-
119
- platforms:
120
- - name: ubuntu-16.04
121
-
122
- suites:
123
- - name: gdb01-master
124
- - name: logdb01-master
125
- """
126
- When I successfully run `kitchen list gdb01-master-ubuntu-1604 --bare`
127
- Then the output should contain exactly:
128
- """
129
- gdb01-master-ubuntu-1604
130
-
131
- """
132
-
133
- Scenario: Listing a full instance with regex returns all regex matches
134
- When I successfully run `kitchen list 'foobar-centos-64.*' --bare`
135
- Then the output should contain exactly:
136
- """
137
- foobar-centos-64
138
- foobar-centos-64-with-small-mem
139
-
140
- """
@@ -1,62 +0,0 @@
1
- Feature: Logging into a Kitchen instance
2
- In order to iterate, explore, and debug
3
- As a crafty developer
4
- I want to run a command that will give me a terminal session
5
-
6
- Background:
7
- Given a file named ".kitchen.yml" with:
8
- """
9
- ---
10
- driver:
11
- name: dummy
12
-
13
- transport:
14
- name: dummy
15
-
16
- provisioner:
17
- name: dummy
18
-
19
- platforms:
20
- - name: flebian
21
-
22
- suites:
23
- - name: default
24
- - name: full
25
- """
26
- And I successfully run `kitchen create default-flebian`
27
-
28
- @spawn
29
- Scenario: Logging in to an instance
30
- When I run `kitchen login default-flebian`
31
- Then the output should contain:
32
- """
33
- Remote login not supported in Kitchen::Transport::Dummy::Connection.
34
- """
35
- And the exit status should not be 0
36
-
37
- @spawn
38
- Scenario: Attempting to log into a non-created instance
39
- When I run `kitchen login full-flebian`
40
- Then the output should contain:
41
- """
42
- Instance <full-flebian> has not yet been created
43
- """
44
- And the exit status should not be 0
45
-
46
- @spawn
47
- Scenario: Attempting to log into a non-existent instance
48
- When I run `kitchen login nope`
49
- Then the output should contain "No instances for regex `nope'"
50
- And the exit status should not be 0
51
-
52
- @spawn
53
- Scenario: Attempting to log into an instance with an overly fuzzy match
54
- When I run `kitchen login flebian`
55
- Then the output should contain:
56
- """
57
- Argument `flebian' returned multiple results:
58
- * default-flebian
59
- * full-flebian
60
- """
61
- And the exit status should not be 0
62
-