foreman_docker 0.2.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +10 -3
- data/app/assets/javascripts/foreman_docker/image_step.js +44 -5
- data/app/controllers/concerns/foreman_docker/find_container.rb +19 -0
- data/app/controllers/containers/steps_controller.rb +25 -39
- data/app/controllers/containers_controller.rb +10 -43
- data/app/controllers/image_search_controller.rb +88 -0
- data/app/controllers/registries_controller.rb +47 -0
- data/app/helpers/container_steps_helper.rb +21 -4
- data/app/helpers/containers_helper.rb +19 -7
- data/app/models/concerns/foreman_docker/parameter_validators.rb +11 -0
- data/app/models/container.rb +20 -7
- data/app/models/docker_container_wizard_state.rb +30 -0
- data/app/models/docker_container_wizard_states/configuration.rb +7 -0
- data/app/models/docker_container_wizard_states/environment.rb +21 -0
- data/app/models/docker_container_wizard_states/environment_variable.rb +7 -0
- data/app/models/docker_container_wizard_states/image.rb +11 -0
- data/app/models/docker_container_wizard_states/preliminary.rb +11 -0
- data/app/models/docker_registry.rb +28 -0
- data/app/models/environment_variable.rb +5 -0
- data/app/models/foreman_docker/docker.rb +22 -3
- data/app/models/service/containers.rb +38 -0
- data/app/models/service/registry_api.rb +26 -0
- data/app/views/containers/_list.html.erb +19 -18
- data/app/views/containers/index.html.erb +11 -6
- data/app/views/containers/show.html.erb +26 -7
- data/app/views/containers/steps/_form_buttons.html.erb +1 -1
- data/app/views/containers/steps/configuration.html.erb +2 -2
- data/app/views/containers/steps/environment.html.erb +19 -6
- data/app/views/containers/steps/image.html.erb +58 -39
- data/app/views/containers/steps/preliminary.html.erb +21 -4
- data/app/views/foreman_docker/common_parameters/_environment_variable.html.erb +18 -0
- data/app/views/image_search/_repository_search_results.html.erb +12 -0
- data/app/views/registries/_form.html.erb +26 -0
- data/app/views/registries/edit.html.erb +3 -0
- data/app/views/registries/index.html.erb +28 -0
- data/app/views/registries/new.html.erb +3 -0
- data/config/routes.rb +11 -2
- data/db/migrate/20141024163003_create_docker_registries.rb +22 -0
- data/db/migrate/20141120123003_add_user_credentials_to_docker_registries.rb +6 -0
- data/db/migrate/20141209182008_remove_docker_tables.rb +72 -0
- data/db/migrate/20141222113313_create_wizard_states.rb +42 -0
- data/lib/foreman_docker/engine.rb +25 -5
- data/lib/foreman_docker/version.rb +1 -1
- data/test/factories/containers.rb +2 -0
- data/test/factories/docker_registry.rb +16 -0
- data/test/functionals/containers_steps_controller_test.rb +7 -40
- data/test/integration/container_steps_test.rb +24 -0
- data/test/integration/container_test.rb +18 -0
- data/test/units/container_test.rb +0 -7
- data/test/units/containers_service_test.rb +21 -0
- data/test/units/docker_registry_test.rb +24 -0
- metadata +45 -22
- data/app/models/docker_image.rb +0 -9
- data/app/models/docker_tag.rb +0 -8
- data/test/factories/docker_image.rb +0 -5
- data/test/factories/docker_tag.rb +0 -6
- data/test/units/docker_image_test.rb +0 -23
- data/test/units/docker_tag_test.rb +0 -35
data/app/models/docker_image.rb
DELETED
@@ -1,9 +0,0 @@
|
|
1
|
-
class DockerImage < ActiveRecord::Base
|
2
|
-
has_many :tags, :class_name => 'DockerTag', :foreign_key => 'docker_image_id',
|
3
|
-
:dependent => :destroy
|
4
|
-
has_many :containers
|
5
|
-
|
6
|
-
attr_accessible :image_id, :size
|
7
|
-
|
8
|
-
validates :image_id, :presence => true, :uniqueness => true
|
9
|
-
end
|
data/app/models/docker_tag.rb
DELETED
@@ -1,8 +0,0 @@
|
|
1
|
-
class DockerTag < ActiveRecord::Base
|
2
|
-
belongs_to :image, :class_name => 'DockerImage', :foreign_key => 'docker_image_id'
|
3
|
-
|
4
|
-
attr_accessible :tag, :image
|
5
|
-
|
6
|
-
validates :tag, :presence => true, :uniqueness => { :scope => :docker_image_id }
|
7
|
-
validates :image, :presence => true
|
8
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'test_plugin_helper'
|
2
|
-
|
3
|
-
class DockerImageTest < ActiveSupport::TestCase
|
4
|
-
test 'destroy docker image with tags is successful' do
|
5
|
-
tag = FactoryGirl.create(:docker_tag)
|
6
|
-
image = FactoryGirl.create(:docker_image)
|
7
|
-
image.tags << tag
|
8
|
-
assert image.destroy
|
9
|
-
refute DockerImage.exists?(image.id)
|
10
|
-
refute DockerTag.exists?(tag.id)
|
11
|
-
end
|
12
|
-
|
13
|
-
context 'validations' do
|
14
|
-
test 'without image_id is invalid' do
|
15
|
-
refute FactoryGirl.build(:docker_image, :image_id => '').valid?
|
16
|
-
end
|
17
|
-
|
18
|
-
test 'image_id has to be unique' do
|
19
|
-
old_image = FactoryGirl.create(:docker_image)
|
20
|
-
refute FactoryGirl.build(:docker_image, :image_id => old_image.image_id).valid?
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,35 +0,0 @@
|
|
1
|
-
require 'test_plugin_helper'
|
2
|
-
|
3
|
-
class DockerTagTest < ActiveSupport::TestCase
|
4
|
-
test 'creating fails if no image is provided' do
|
5
|
-
tag = FactoryGirl.build(:docker_tag, :image => nil)
|
6
|
-
refute tag.valid?
|
7
|
-
assert tag.errors.size >= 1
|
8
|
-
end
|
9
|
-
|
10
|
-
test 'creating succeeds if an image is provided' do
|
11
|
-
tag = FactoryGirl.build(:docker_tag)
|
12
|
-
tag.image = FactoryGirl.build(:docker_image)
|
13
|
-
|
14
|
-
assert tag.valid?
|
15
|
-
assert tag.save
|
16
|
-
end
|
17
|
-
|
18
|
-
context 'validations' do
|
19
|
-
test 'tag has to be present' do
|
20
|
-
refute FactoryGirl.build(:docker_tag, :tag => '').valid?
|
21
|
-
end
|
22
|
-
|
23
|
-
test 'tag is unique within image scope' do
|
24
|
-
image = FactoryGirl.create(:docker_image)
|
25
|
-
tag = FactoryGirl.create(:docker_tag, :image => image)
|
26
|
-
duplicated_tag = FactoryGirl.build(:docker_tag, :image => image, :tag => tag.tag)
|
27
|
-
refute duplicated_tag.valid?
|
28
|
-
end
|
29
|
-
|
30
|
-
test 'tag is not unique for different images' do
|
31
|
-
tag = FactoryGirl.create(:docker_tag)
|
32
|
-
assert FactoryGirl.build(:docker_tag, :tag => tag.tag).valid?
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|