hammer_cli_csv 2.0.0 → 2.1.0

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 (87) hide show
  1. checksums.yaml +5 -13
  2. data/config/cli_config.yml +9 -24
  3. data/lib/hammer_cli_csv/activation_keys.rb +220 -95
  4. data/lib/hammer_cli_csv/architectures.rb +7 -11
  5. data/lib/hammer_cli_csv/base.rb +67 -41
  6. data/lib/hammer_cli_csv/compute_profiles.rb +11 -15
  7. data/lib/hammer_cli_csv/compute_resources.rb +11 -15
  8. data/lib/hammer_cli_csv/containers.rb +10 -12
  9. data/lib/hammer_cli_csv/content_hosts.rb +285 -203
  10. data/lib/hammer_cli_csv/content_view_filters.rb +32 -36
  11. data/lib/hammer_cli_csv/content_views.rb +33 -37
  12. data/lib/hammer_cli_csv/csv.rb +17 -1
  13. data/lib/hammer_cli_csv/domains.rb +15 -19
  14. data/lib/hammer_cli_csv/export.rb +13 -5
  15. data/lib/hammer_cli_csv/host_collections.rb +20 -22
  16. data/lib/hammer_cli_csv/host_groups.rb +73 -65
  17. data/lib/hammer_cli_csv/hosts.rb +30 -34
  18. data/lib/hammer_cli_csv/import.rb +24 -10
  19. data/lib/hammer_cli_csv/installation_media.rb +74 -0
  20. data/lib/hammer_cli_csv/job_templates.rb +37 -41
  21. data/lib/hammer_cli_csv/lifecycle_environments.rb +15 -19
  22. data/lib/hammer_cli_csv/locations.rb +4 -6
  23. data/lib/hammer_cli_csv/operating_systems.rb +17 -21
  24. data/lib/hammer_cli_csv/organizations.rb +11 -13
  25. data/lib/hammer_cli_csv/partition_tables.rb +17 -21
  26. data/lib/hammer_cli_csv/products.rb +200 -92
  27. data/lib/hammer_cli_csv/provisioning_templates.rb +19 -23
  28. data/lib/hammer_cli_csv/puppet_environments.rb +8 -12
  29. data/lib/hammer_cli_csv/puppet_facts.rb +20 -24
  30. data/lib/hammer_cli_csv/puppet_reports.rb +47 -51
  31. data/lib/hammer_cli_csv/reports.rb +6 -10
  32. data/lib/hammer_cli_csv/roles.rb +12 -16
  33. data/lib/hammer_cli_csv/settings.rb +8 -6
  34. data/lib/hammer_cli_csv/smart_proxies.rb +9 -13
  35. data/lib/hammer_cli_csv/splice.rb +1 -3
  36. data/lib/hammer_cli_csv/subnets.rb +24 -28
  37. data/lib/hammer_cli_csv/subscriptions.rb +39 -91
  38. data/lib/hammer_cli_csv/sync_plans.rb +20 -24
  39. data/lib/hammer_cli_csv/users.rb +25 -29
  40. data/lib/hammer_cli_csv/utils/subscriptions.rb +130 -0
  41. data/lib/hammer_cli_csv/version.rb +1 -1
  42. data/lib/hammer_cli_csv.rb +2 -2
  43. data/test/csv_test.rb +32 -0
  44. data/test/csv_test_helper.rb +17 -2
  45. data/test/data/content-hosts.csv +3 -2
  46. data/test/data/hosts.csv +0 -11
  47. data/test/data/settings.csv +1 -0
  48. data/test/data/setup/content-hosts.csv +1 -0
  49. data/test/data/setup/content-views.csv +2 -0
  50. data/test/data/setup/lifecycle-environments.csv +5 -0
  51. data/test/data/setup/locations.csv +6 -0
  52. data/test/data/setup/organizations.csv +2 -0
  53. data/test/data/setup/subscriptions.csv +5 -0
  54. data/test/data/subscriptions.csv +15 -17
  55. data/test/export_test.rb +27 -0
  56. data/test/fixtures/vcr_cassettes/apipie.yml +18528 -0
  57. data/test/fixtures/vcr_cassettes/resources/activation_keys_import/create_and_update.yml +38033 -0
  58. data/test/fixtures/vcr_cassettes/resources/content_hosts_export/export.yml +18846 -0
  59. data/test/fixtures/vcr_cassettes/resources/content_hosts_export/export_subscriptions.yml +323 -0
  60. data/test/fixtures/vcr_cassettes/resources/content_hosts_import/create_and_update.yml +41884 -0
  61. data/test/fixtures/vcr_cassettes/resources/content_hosts_import/import_single_line.yml +38248 -0
  62. data/test/fixtures/vcr_cassettes/resources/settings_import/update_settings.yml +18832 -0
  63. data/test/fixtures/vcr_cassettes/resources/settings_import/update_settings_continue.yml +316 -0
  64. data/test/fixtures/vcr_cassettes/resources/subscriptions_import/manifest_does_not_exist.yml +18785 -0
  65. data/test/fixtures/vcr_cassettes/setup/setup_content_views/setup.yml +19090 -0
  66. data/test/fixtures/vcr_cassettes/setup/setup_lifecycle_environments/setup.yml +924 -0
  67. data/test/fixtures/vcr_cassettes/setup/setup_locations/setup.yml +21102 -0
  68. data/test/fixtures/vcr_cassettes/setup/setup_organizations/setup.yml +19278 -0
  69. data/test/fixtures/vcr_cassettes/setup/setup_subscriptions/setup.yml +419 -0
  70. data/test/import_test.rb +20 -25
  71. data/test/resources/activation_keys_test.rb +72 -0
  72. data/test/resources/content_hosts_test.rb +132 -0
  73. data/test/resources/settings_test.rb +81 -0
  74. data/test/resources/subscriptions_test.rb +56 -0
  75. data/test/setup/setup_content_views.rb +17 -0
  76. data/test/setup/setup_lifecycle_environments.rb +17 -0
  77. data/test/setup/setup_locations.rb +17 -0
  78. data/test/setup/setup_organizations.rb +17 -0
  79. data/test/setup/setup_subscriptions.rb +20 -0
  80. data/test/setup/setup_test.rb +10 -0
  81. data/test/test_runner.rb +175 -0
  82. data/test/vcr_setup.rb +54 -0
  83. metadata +77 -13
  84. data/lib/hammer_cli_csv/exception_handler.rb +0 -42
  85. data/lib/hammer_cli_csv/installation_medias.rb +0 -77
  86. data/test/content_hosts_test.rb +0 -61
  87. data/test/settings_test.rb +0 -30
@@ -0,0 +1,323 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://admin:changeme@katello:3000/api/status
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ Accept:
13
+ - '*/*'
14
+ User-Agent:
15
+ - Ruby
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ X-Frame-Options:
22
+ - SAMEORIGIN
23
+ X-Xss-Protection:
24
+ - 1; mode=block
25
+ X-Content-Type-Options:
26
+ - nosniff
27
+ Foreman-Version:
28
+ - 1.13.0-develop
29
+ Foreman-Api-Version:
30
+ - '2'
31
+ Content-Type:
32
+ - application/json; charset=utf-8
33
+ Apipie-Checksum:
34
+ - e98945ba1db6bdbb4c25ce4988912344
35
+ Etag:
36
+ - W/"f536fd8685b76bb26a943d472593c93e"
37
+ Cache-Control:
38
+ - max-age=0, private, must-revalidate
39
+ Set-Cookie:
40
+ - _session_id=572deb56baf521ee00016ca47bc96f02; path=/; HttpOnly
41
+ X-Request-Id:
42
+ - 382590b4-ef98-4b88-b508-2872f6b42791
43
+ X-Runtime:
44
+ - '1.207617'
45
+ Transfer-Encoding:
46
+ - chunked
47
+ body:
48
+ encoding: UTF-8
49
+ string: '{"result":"ok","status":200,"version":"1.13.0-develop","api_version":2}'
50
+ http_version:
51
+ recorded_at: Tue, 16 Aug 2016 19:37:56 GMT
52
+ - request:
53
+ method: get
54
+ uri: http://admin:changeme@katello:3000/api/v2/plugins
55
+ body:
56
+ encoding: US-ASCII
57
+ string: ''
58
+ headers:
59
+ Accept-Encoding:
60
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
61
+ Accept:
62
+ - '*/*'
63
+ User-Agent:
64
+ - Ruby
65
+ response:
66
+ status:
67
+ code: 200
68
+ message: OK
69
+ headers:
70
+ X-Frame-Options:
71
+ - SAMEORIGIN
72
+ X-Xss-Protection:
73
+ - 1; mode=block
74
+ X-Content-Type-Options:
75
+ - nosniff
76
+ Foreman-Version:
77
+ - 1.13.0-develop
78
+ Foreman-Api-Version:
79
+ - '2'
80
+ Content-Type:
81
+ - application/json; charset=utf-8
82
+ Apipie-Checksum:
83
+ - e98945ba1db6bdbb4c25ce4988912344
84
+ Etag:
85
+ - W/"dc4a8351c6668134273bfe99879f93b1"
86
+ Cache-Control:
87
+ - max-age=0, private, must-revalidate
88
+ Set-Cookie:
89
+ - _session_id=a2a343fd33b480ee0761f277d4aa76c0; path=/; HttpOnly
90
+ X-Request-Id:
91
+ - 358edc50-689c-41fd-9ffb-da580c6780c0
92
+ X-Runtime:
93
+ - '0.265926'
94
+ Transfer-Encoding:
95
+ - chunked
96
+ body:
97
+ encoding: ASCII-8BIT
98
+ string: !binary |-
99
+ ewogICJ0b3RhbCI6IDQsCiAgInN1YnRvdGFsIjogNCwKICAicGFnZSI6IDEs
100
+ CiAgInBlcl9wYWdlIjogMjAsCiAgInNlYXJjaCI6IG51bGwsCiAgInNvcnQi
101
+ OiB7CiAgICAiYnkiOiBudWxsLAogICAgIm9yZGVyIjogbnVsbAogIH0sCiAg
102
+ InJlc3VsdHMiOiBbeyJpZCI6ImZvcmVtYW4tdGFza3MiLCJuYW1lIjoiZm9y
103
+ ZW1hbi10YXNrcyIsImF1dGhvciI6Ikl2YW4gTmXEjWFzIiwiZGVzY3JpcHRp
104
+ b24iOiJUaGUgZ29hbCBvZiB0aGlzIHBsdWdpbiBpcyB0byB1bmlmeSB0aGUg
105
+ d2F5IG9mIHNob3dpbmcgdGFzayBzdGF0dXNlcyBhY3Jvc3MgdGhlIEZvcmVt
106
+ YW4gaW5zdGFuY2UuXG5JdCBkZWZpbmVzIFRhc2sgbW9kZWwgZm9yIGtlZXBp
107
+ bmcgdGhlIGluZm9ybWF0aW9uIGFib3V0IHRoZSB0YXNrcyBhbmQgTG9jayBm
108
+ b3IgYXNzaWduaW5nIHRoZSB0YXNrc1xudG8gcmVzb3VyY2VzLiBUaGUgbG9j
109
+ a2luZyBhbGxvd3MgZGVhbGluZyB3aXRoIHByZXZlbnRpbmcgbXVsdGlwbGUg
110
+ Y29sbGlkaW5nIHRhc2tzIHRvIGJlIHJ1biBvbiB0aGVcbnNhbWUgcmVzb3Vy
111
+ Y2UuIEl0IGFsc28gb3B0aW9uYWxseSBwcm92aWRlcyBEeW5mbG93IGluZnJh
112
+ c3RydWN0dXJlIGZvciB1c2luZyBpdCBmb3IgbWFuYWdpbmcgdGhlIHRhc2tz
113
+ LlxuIiwidXJsIjoiaHR0cHM6Ly9naXRodWIuY29tL3RoZWZvcmVtYW4vZm9y
114
+ ZW1hbi10YXNrcyIsInZlcnNpb24iOiIwLjcuMjAifSx7ImlkIjoiZm9yZW1h
115
+ bl9kb2NrZXIiLCJuYW1lIjoiZm9yZW1hbl9kb2NrZXIiLCJhdXRob3IiOiJE
116
+ YW5pZWwgTG9iYXRvLCBBbW9zIEJlbmFyaSIsImRlc2NyaXB0aW9uIjoiUHJv
117
+ dmlzaW9uIGFuZCBtYW5hZ2UgRG9ja2VyIGNvbnRhaW5lcnMgYW5kIGltYWdl
118
+ cyBmcm9tIEZvcmVtYW4uIiwidXJsIjoiaHR0cDovL2dpdGh1Yi5jb20vdGhl
119
+ Zm9yZW1hbi9mb3JlbWFuLWRvY2tlciIsInZlcnNpb24iOiIzLjAuMCJ9LHsi
120
+ aWQiOiJmb3JlbWFuX3JlbW90ZV9leGVjdXRpb24iLCJuYW1lIjoiZm9yZW1h
121
+ bl9yZW1vdGVfZXhlY3V0aW9uIiwiYXV0aG9yIjoiRm9yZW1hbiBSZW1vdGUg
122
+ RXhlY3V0aW9uIHRlYW0iLCJkZXNjcmlwdGlvbiI6IkEgcGx1Z2luIGJyaW5n
123
+ aW5nIHJlbW90ZSBleGVjdXRpb24gdG8gdGhlIEZvcmVtYW4sIGNvbXBsZXRp
124
+ bmcgdGhlIGNvbmZpZyBtYW5hZ2VtZW50IGZ1bmN0aW9uYWxpdHkgd2l0aCBy
125
+ ZW1vdGUgbWFuYWdlbWVudCBmdW5jdGlvbmFsaXR5LiIsInVybCI6Imh0dHBz
126
+ Oi8vZ2l0aHViLmNvbS90aGVmb3JlbWFuL2ZvcmVtYW5fcmVtb3RlX2V4ZWN1
127
+ dGlvbiIsInZlcnNpb24iOiIxLjAuMCJ9LHsiaWQiOiJrYXRlbGxvIiwibmFt
128
+ ZSI6ImthdGVsbG8iLCJhdXRob3IiOiJOL0EiLCJkZXNjcmlwdGlvbiI6IkNv
129
+ bnRlbnQgYW5kIFN1YnNjcmlwdGlvbiBNYW5hZ2VtZW50IHBsdWdpbiBmb3Ig
130
+ Rm9yZW1hbiIsInVybCI6Imh0dHA6Ly93d3cua2F0ZWxsby5vcmciLCJ2ZXJz
131
+ aW9uIjoiMy4yLjAifV0KfQo=
132
+ http_version:
133
+ recorded_at: Tue, 16 Aug 2016 19:37:56 GMT
134
+ - request:
135
+ method: get
136
+ uri: http://admin:changeme@katello:3000/katello/api/organizations?per_page=999999
137
+ body:
138
+ encoding: US-ASCII
139
+ string: ''
140
+ headers:
141
+ Accept:
142
+ - application/json;version=2
143
+ Accept-Encoding:
144
+ - gzip, deflate
145
+ Content-Type:
146
+ - application/json
147
+ User-Agent:
148
+ - Ruby
149
+ response:
150
+ status:
151
+ code: 200
152
+ message: OK
153
+ headers:
154
+ X-Frame-Options:
155
+ - SAMEORIGIN
156
+ X-Xss-Protection:
157
+ - 1; mode=block
158
+ X-Content-Type-Options:
159
+ - nosniff
160
+ Foreman-Version:
161
+ - 1.13.0-develop
162
+ Foreman-Api-Version:
163
+ - '2'
164
+ Content-Type:
165
+ - application/json; charset=utf-8
166
+ Apipie-Checksum:
167
+ - e98945ba1db6bdbb4c25ce4988912344
168
+ Etag:
169
+ - W/"4334603e104dcf3bf9d4222dd9a77b6a"
170
+ Cache-Control:
171
+ - max-age=0, private, must-revalidate
172
+ Set-Cookie:
173
+ - _session_id=a4b3bd98b19a10fde96220956d287604; path=/; HttpOnly
174
+ X-Request-Id:
175
+ - 720c09f3-59a2-4afb-8286-348925ed8b40
176
+ X-Runtime:
177
+ - '0.239455'
178
+ Transfer-Encoding:
179
+ - chunked
180
+ body:
181
+ encoding: UTF-8
182
+ string: |
183
+ {
184
+ "total": 3,
185
+ "subtotal": 3,
186
+ "page": 1,
187
+ "per_page": 999999,
188
+ "search": null,
189
+ "sort": {
190
+ "by": null,
191
+ "order": null
192
+ },
193
+ "results": [{"label":"Default_Organization","created_at":"2016-08-10 12:38:23 UTC","updated_at":"2016-08-10 12:38:23 UTC","id":1,"name":"Default Organization","title":"Default Organization","description":null},{"label":"examplecorp","created_at":"2016-08-10 13:40:47 UTC","updated_at":"2016-08-10 13:40:47 UTC","id":3,"name":"Example Corporation","title":"Example Corporation","description":"The number one example company in the world!"},{"label":"testcorp","created_at":"2016-08-16 12:46:24 UTC","updated_at":"2016-08-16 12:46:24 UTC","id":4,"name":"Test Corporation","title":"Test Corporation","description":"Testing today for a better tomorrow"}]
194
+ }
195
+ http_version:
196
+ recorded_at: Tue, 16 Aug 2016 19:37:56 GMT
197
+ - request:
198
+ method: get
199
+ uri: http://admin:changeme@katello:3000/katello/api/organizations?per_page=999999&search=name=%22Test%20Corporation%22
200
+ body:
201
+ encoding: US-ASCII
202
+ string: ''
203
+ headers:
204
+ Accept:
205
+ - application/json;version=2
206
+ Accept-Encoding:
207
+ - gzip, deflate
208
+ Content-Type:
209
+ - application/json
210
+ User-Agent:
211
+ - Ruby
212
+ response:
213
+ status:
214
+ code: 200
215
+ message: OK
216
+ headers:
217
+ X-Frame-Options:
218
+ - SAMEORIGIN
219
+ X-Xss-Protection:
220
+ - 1; mode=block
221
+ X-Content-Type-Options:
222
+ - nosniff
223
+ Foreman-Version:
224
+ - 1.13.0-develop
225
+ Foreman-Api-Version:
226
+ - '2'
227
+ Content-Type:
228
+ - application/json; charset=utf-8
229
+ Apipie-Checksum:
230
+ - e98945ba1db6bdbb4c25ce4988912344
231
+ Etag:
232
+ - W/"dec57c653102523d2cd2de13cb7fee01"
233
+ Cache-Control:
234
+ - max-age=0, private, must-revalidate
235
+ Set-Cookie:
236
+ - _session_id=dcd352f24f9ca2b52d0a6bc2232a4736; path=/; HttpOnly
237
+ X-Request-Id:
238
+ - 8abaa1a4-4275-4a57-bb72-20bb956b7aa5
239
+ X-Runtime:
240
+ - '0.237906'
241
+ Transfer-Encoding:
242
+ - chunked
243
+ body:
244
+ encoding: UTF-8
245
+ string: |
246
+ {
247
+ "total": 3,
248
+ "subtotal": 1,
249
+ "page": 1,
250
+ "per_page": 999999,
251
+ "search": "name=\"Test Corporation\"",
252
+ "sort": {
253
+ "by": null,
254
+ "order": null
255
+ },
256
+ "results": [{"label":"testcorp","created_at":"2016-08-16 12:46:24 UTC","updated_at":"2016-08-16 12:46:24 UTC","id":4,"name":"Test Corporation","title":"Test Corporation","description":"Testing today for a better tomorrow"}]
257
+ }
258
+ http_version:
259
+ recorded_at: Tue, 16 Aug 2016 19:37:57 GMT
260
+ - request:
261
+ method: get
262
+ uri: http://admin:changeme@katello:3000/api/organizations/4/hosts?per_page=999999
263
+ body:
264
+ encoding: US-ASCII
265
+ string: ''
266
+ headers:
267
+ Accept:
268
+ - application/json;version=2
269
+ Accept-Encoding:
270
+ - gzip, deflate
271
+ Content-Type:
272
+ - application/json
273
+ User-Agent:
274
+ - Ruby
275
+ response:
276
+ status:
277
+ code: 200
278
+ message: OK
279
+ headers:
280
+ X-Frame-Options:
281
+ - SAMEORIGIN
282
+ X-Xss-Protection:
283
+ - 1; mode=block
284
+ X-Content-Type-Options:
285
+ - nosniff
286
+ Foreman-Version:
287
+ - 1.13.0-develop
288
+ Foreman-Api-Version:
289
+ - '2'
290
+ Content-Type:
291
+ - application/json; charset=utf-8
292
+ Apipie-Checksum:
293
+ - e98945ba1db6bdbb4c25ce4988912344
294
+ Etag:
295
+ - W/"a4c7cad8c39c0a80e0091f015157f090"
296
+ Cache-Control:
297
+ - max-age=0, private, must-revalidate
298
+ Set-Cookie:
299
+ - _session_id=73a9142e7dca4ed5c42c5bf28ebd5f3a; path=/; HttpOnly
300
+ X-Request-Id:
301
+ - f719b774-ef0d-4db1-b372-c3fa6837c101
302
+ X-Runtime:
303
+ - '1.282371'
304
+ Transfer-Encoding:
305
+ - chunked
306
+ body:
307
+ encoding: UTF-8
308
+ string: |
309
+ {
310
+ "total": 0,
311
+ "subtotal": 0,
312
+ "page": 1,
313
+ "per_page": 999999,
314
+ "search": null,
315
+ "sort": {
316
+ "by": null,
317
+ "order": null
318
+ },
319
+ "results": []
320
+ }
321
+ http_version:
322
+ recorded_at: Tue, 16 Aug 2016 19:37:58 GMT
323
+ recorded_with: VCR 3.0.3