foreman_docker 2.0.1 → 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 (81) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/foreman_docker/image_step.js +17 -16
  3. data/app/assets/stylesheets/foreman_docker/autocomplete.css.scss +2 -2
  4. data/app/controllers/api/v2/containers_controller.rb +23 -15
  5. data/app/controllers/containers/steps_controller.rb +3 -3
  6. data/app/controllers/containers_controller.rb +17 -19
  7. data/app/helpers/container_steps_helper.rb +5 -1
  8. data/app/helpers/containers_helper.rb +5 -7
  9. data/app/models/concerns/fog_extensions/fogdocker/server.rb +1 -1
  10. data/app/models/docker_registry.rb +16 -4
  11. data/app/models/foreman_docker/docker.rb +2 -1
  12. data/app/models/service/containers.rb +1 -1
  13. data/app/overrides/remove_docker_from_compute_profiles.rb +14 -0
  14. data/app/overrides/rename_virtual_machines_containers.rb +10 -0
  15. data/app/services/foreman_docker/container_remover.rb +20 -0
  16. data/app/views/containers/index.html.erb +4 -7
  17. data/app/views/containers/show.html.erb +2 -2
  18. data/app/views/containers/steps/_image_hub_tab.html.erb +41 -40
  19. data/app/views/foreman_docker/common_parameters/_dns_entry.html.erb +2 -2
  20. data/app/views/foreman_docker/common_parameters/_environment_variable.html.erb +2 -2
  21. data/app/views/foreman_docker/common_parameters/_exposed_port.html.erb +1 -1
  22. data/app/views/registries/index.html.erb +7 -7
  23. data/config/routes.rb +1 -1
  24. data/db/migrate/20141209182008_remove_docker_tables.rb +8 -2
  25. data/lib/foreman_docker/engine.rb +1 -0
  26. data/lib/foreman_docker/version.rb +1 -1
  27. data/locale/Makefile +58 -4
  28. data/locale/de/LC_MESSAGES/foreman_docker.mo +0 -0
  29. data/locale/de/foreman_docker.edit.po +631 -0
  30. data/locale/de/foreman_docker.po +110 -78
  31. data/locale/de/foreman_docker.po.time_stamp +0 -0
  32. data/locale/es/LC_MESSAGES/foreman_docker.mo +0 -0
  33. data/locale/es/foreman_docker.edit.po +631 -0
  34. data/locale/es/foreman_docker.po +110 -78
  35. data/locale/es/foreman_docker.po.time_stamp +0 -0
  36. data/locale/foreman_docker.pot +414 -219
  37. data/locale/fr/LC_MESSAGES/foreman_docker.mo +0 -0
  38. data/locale/fr/foreman_docker.edit.po +632 -0
  39. data/locale/fr/foreman_docker.po +111 -84
  40. data/locale/fr/foreman_docker.po.time_stamp +0 -0
  41. data/locale/it/LC_MESSAGES/foreman_docker.mo +0 -0
  42. data/locale/it/foreman_docker.edit.po +630 -0
  43. data/locale/it/foreman_docker.po +110 -82
  44. data/locale/it/foreman_docker.po.time_stamp +0 -0
  45. data/locale/ja/LC_MESSAGES/foreman_docker.mo +0 -0
  46. data/locale/ja/foreman_docker.edit.po +634 -0
  47. data/locale/ja/foreman_docker.po +109 -64
  48. data/locale/ja/foreman_docker.po.time_stamp +0 -0
  49. data/locale/ko/LC_MESSAGES/foreman_docker.mo +0 -0
  50. data/locale/ko/foreman_docker.edit.po +629 -0
  51. data/locale/ko/foreman_docker.po +108 -65
  52. data/locale/ko/foreman_docker.po.time_stamp +0 -0
  53. data/locale/pt_BR/LC_MESSAGES/foreman_docker.mo +0 -0
  54. data/locale/pt_BR/foreman_docker.edit.po +631 -0
  55. data/locale/pt_BR/foreman_docker.po +109 -74
  56. data/locale/pt_BR/foreman_docker.po.time_stamp +0 -0
  57. data/locale/ru/LC_MESSAGES/foreman_docker.mo +0 -0
  58. data/locale/ru/foreman_docker.edit.po +630 -0
  59. data/locale/ru/foreman_docker.po +110 -72
  60. data/locale/ru/foreman_docker.po.time_stamp +0 -0
  61. data/locale/zanata.xml +3 -3
  62. data/locale/zh_CN/LC_MESSAGES/foreman_docker.mo +0 -0
  63. data/locale/zh_CN/foreman_docker.edit.po +628 -0
  64. data/locale/zh_CN/foreman_docker.po +108 -64
  65. data/locale/zh_CN/foreman_docker.po.time_stamp +0 -0
  66. data/locale/zh_TW/LC_MESSAGES/foreman_docker.mo +0 -0
  67. data/locale/zh_TW/foreman_docker.edit.po +628 -0
  68. data/locale/zh_TW/foreman_docker.po +108 -65
  69. data/locale/zh_TW/foreman_docker.po.time_stamp +0 -0
  70. data/test/factories/docker_registry.rb +4 -0
  71. data/test/functionals/api/v2/containers_controller_test.rb +18 -4
  72. data/test/functionals/api/v2/registries_controller_test.rb +2 -0
  73. data/test/functionals/containers_controller_test.rb +56 -8
  74. data/test/integration/container_steps_test.rb +1 -1
  75. data/test/integration/container_test.rb +1 -1
  76. data/test/units/container_remover_test.rb +31 -0
  77. data/test/units/container_test.rb +6 -0
  78. data/test/units/containers_service_test.rb +2 -0
  79. data/test/units/docker_registry_test.rb +20 -3
  80. data/test/units/foreman_docker/docker_test.rb +10 -0
  81. metadata +57 -6
@@ -1,4 +1,4 @@
1
- require 'test_helper'
1
+ require 'integration_test_helper'
2
2
 
3
3
  class ContainerStepsTest < ActionDispatch::IntegrationTest
4
4
  test 'shows a link to a new compute resource if none is available' do
@@ -1,4 +1,4 @@
1
- require 'test_helper'
1
+ require 'integration_test_helper'
2
2
 
3
3
  class ContainerIntegrationTest < ActionDispatch::IntegrationTest
4
4
  test 'redirects to a new compute resource if none is available' do
@@ -0,0 +1,31 @@
1
+ require 'test_plugin_helper'
2
+
3
+ module ForemanDocker
4
+ class ContainerRemoverTest < ActiveSupport::TestCase
5
+ describe '#remove_unmanaged' do
6
+ setup do
7
+ @docker_compute_resource = FactoryGirl.build_stubbed(:docker_cr)
8
+ ComputeResource.expects(:authorized).
9
+ with(:destroy_compute_resources_vms).
10
+ returns(stub(:find => @docker_compute_resource))
11
+
12
+ Fog.mock!
13
+ end
14
+
15
+ teardown { Fog.unmock! }
16
+
17
+ test 'remove_unmanaged makes call to the Docker API' do
18
+ @docker_compute_resource.expects(:destroy_vm).with('random-uuid')
19
+
20
+ assert ForemanDocker::ContainerRemover.remove_unmanaged(
21
+ @docker_compute_resource.id, 'random-uuid')
22
+ end
23
+
24
+ test 'remove_unmanaged returns deleted_identifier' do
25
+ assert_equal 'random-uuid',
26
+ ForemanDocker::ContainerRemover.remove_unmanaged(
27
+ @docker_compute_resource.id, 'random-uuid')
28
+ end
29
+ end
30
+ end
31
+ end
@@ -1,4 +1,10 @@
1
1
  require 'test_plugin_helper'
2
2
 
3
3
  class ContainerTest < ActiveSupport::TestCase
4
+ should belong_to(:compute_resource)
5
+ should belong_to(:registry)
6
+ should have_many(:environment_variables)
7
+ should have_many(:dns)
8
+ should have_many(:exposed_ports)
9
+ should validate_uniqueness_of(:name)
4
10
  end
@@ -19,7 +19,9 @@ class ContainersServiceTest < ActiveSupport::TestCase
19
19
  end
20
20
  ForemanDocker::Docker.any_instance.expects(:create_container)
21
21
  .returns(OpenStruct.new(:uuid => 1))
22
+ Fog.mock!
22
23
  Service::Containers.new.start_container!(@state)
24
+ Fog.unmock!
23
25
  assert_equal DockerContainerWizardState.where(:id => @state.id).count, 0
24
26
  end
25
27
  end
@@ -24,9 +24,26 @@ class DockerRegistryTest < ActiveSupport::TestCase
24
24
  assert registry.is_decryptable?(registry.password_in_db)
25
25
  end
26
26
 
27
- %w(name url).each do |property|
28
- test "registries need a #{property}" do
29
- refute FactoryGirl.build(:docker_registry, property.to_sym => '').valid?
27
+ should validate_presence_of(:name)
28
+ should validate_presence_of(:url)
29
+ should validate_uniqueness_of(:name)
30
+ should validate_uniqueness_of(:url)
31
+
32
+ context 'attempt to login' do
33
+ setup do
34
+ @registry = FactoryGirl.build(:docker_registry)
35
+ @registry.unstub(:attempt_login)
36
+ end
37
+
38
+ test 'before creating a registry' do
39
+ RestClient::Resource.any_instance.expects(:get)
40
+ assert @registry.valid?
41
+ end
42
+
43
+ test 'display errors in case authentication failed' do
44
+ RestClient::Resource.any_instance.expects(:get).
45
+ raises(Docker::Error::AuthenticationError)
46
+ refute @registry.valid?
30
47
  end
31
48
  end
32
49
  end
@@ -0,0 +1,10 @@
1
+ require 'test_plugin_helper'
2
+
3
+ module ForemanDocker
4
+ class DockerTest < ActiveSupport::TestCase
5
+ should allow_value('a@b.com').for(:email)
6
+ should allow_value('').for(:email)
7
+ should_not allow_value('abcb.com').for(:email)
8
+ should_not allow_value('a').for(:email)
9
+ end
10
+ end
metadata CHANGED
@@ -1,29 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foreman_docker
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Lobato, Amos Benari
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-15 00:00:00.000000000 Z
11
+ date: 2016-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: docker-api
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '='
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.18'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.18'
27
+ - !ruby/object:Gem::Dependency
28
+ name: deface
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "<"
18
32
  - !ruby/object:Gem::Version
19
- version: '1.17'
33
+ version: '2.0'
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - '='
38
+ - - "<"
25
39
  - !ruby/object:Gem::Version
26
- version: '1.17'
40
+ version: '2.0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: wicked
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -82,6 +96,9 @@ files:
82
96
  - app/models/foreman_docker/taxonomy_extensions.rb
83
97
  - app/models/service/containers.rb
84
98
  - app/models/service/registry_api.rb
99
+ - app/overrides/remove_docker_from_compute_profiles.rb
100
+ - app/overrides/rename_virtual_machines_containers.rb
101
+ - app/services/foreman_docker/container_remover.rb
85
102
  - app/services/foreman_docker/utility.rb
86
103
  - app/views/api/v1/compute_resources/docker.json
87
104
  - app/views/api/v2/compute_resources/docker.json
@@ -143,18 +160,48 @@ files:
143
160
  - lib/foreman_docker/tasks/test.rake
144
161
  - lib/foreman_docker/version.rb
145
162
  - locale/Makefile
163
+ - locale/de/LC_MESSAGES/foreman_docker.mo
164
+ - locale/de/foreman_docker.edit.po
146
165
  - locale/de/foreman_docker.po
166
+ - locale/de/foreman_docker.po.time_stamp
167
+ - locale/es/LC_MESSAGES/foreman_docker.mo
168
+ - locale/es/foreman_docker.edit.po
147
169
  - locale/es/foreman_docker.po
170
+ - locale/es/foreman_docker.po.time_stamp
148
171
  - locale/foreman_docker.pot
172
+ - locale/fr/LC_MESSAGES/foreman_docker.mo
173
+ - locale/fr/foreman_docker.edit.po
149
174
  - locale/fr/foreman_docker.po
175
+ - locale/fr/foreman_docker.po.time_stamp
176
+ - locale/it/LC_MESSAGES/foreman_docker.mo
177
+ - locale/it/foreman_docker.edit.po
150
178
  - locale/it/foreman_docker.po
179
+ - locale/it/foreman_docker.po.time_stamp
180
+ - locale/ja/LC_MESSAGES/foreman_docker.mo
181
+ - locale/ja/foreman_docker.edit.po
151
182
  - locale/ja/foreman_docker.po
183
+ - locale/ja/foreman_docker.po.time_stamp
184
+ - locale/ko/LC_MESSAGES/foreman_docker.mo
185
+ - locale/ko/foreman_docker.edit.po
152
186
  - locale/ko/foreman_docker.po
187
+ - locale/ko/foreman_docker.po.time_stamp
188
+ - locale/pt_BR/LC_MESSAGES/foreman_docker.mo
189
+ - locale/pt_BR/foreman_docker.edit.po
153
190
  - locale/pt_BR/foreman_docker.po
191
+ - locale/pt_BR/foreman_docker.po.time_stamp
192
+ - locale/ru/LC_MESSAGES/foreman_docker.mo
193
+ - locale/ru/foreman_docker.edit.po
154
194
  - locale/ru/foreman_docker.po
195
+ - locale/ru/foreman_docker.po.time_stamp
155
196
  - locale/zanata.xml
197
+ - locale/zh_CN/LC_MESSAGES/foreman_docker.mo
198
+ - locale/zh_CN/foreman_docker.edit.po
156
199
  - locale/zh_CN/foreman_docker.po
200
+ - locale/zh_CN/foreman_docker.po.time_stamp
201
+ - locale/zh_TW/LC_MESSAGES/foreman_docker.mo
202
+ - locale/zh_TW/foreman_docker.edit.po
157
203
  - locale/zh_TW/foreman_docker.po
204
+ - locale/zh_TW/foreman_docker.po.time_stamp
158
205
  - test/factories/compute_resources.rb
159
206
  - test/factories/containers.rb
160
207
  - test/factories/docker_registry.rb
@@ -166,9 +213,11 @@ files:
166
213
  - test/integration/container_steps_test.rb
167
214
  - test/integration/container_test.rb
168
215
  - test/test_plugin_helper.rb
216
+ - test/units/container_remover_test.rb
169
217
  - test/units/container_test.rb
170
218
  - test/units/containers_service_test.rb
171
219
  - test/units/docker_registry_test.rb
220
+ - test/units/foreman_docker/docker_test.rb
172
221
  - test/units/registry_api_test.rb
173
222
  - test/units/utility_service_test.rb
174
223
  homepage: http://github.com/theforeman/foreman-docker
@@ -208,7 +257,9 @@ test_files:
208
257
  - test/units/utility_service_test.rb
209
258
  - test/units/docker_registry_test.rb
210
259
  - test/units/registry_api_test.rb
260
+ - test/units/foreman_docker/docker_test.rb
211
261
  - test/units/containers_service_test.rb
262
+ - test/units/container_remover_test.rb
212
263
  - test/test_plugin_helper.rb
213
264
  - test/integration/container_steps_test.rb
214
265
  - test/integration/container_test.rb