some fixes

This commit is contained in:
Anton Martynov 2015-02-19 13:26:14 +03:00
parent 249a9cd7b8
commit 9439840b3c
5 changed files with 21 additions and 12 deletions

View File

@ -2,7 +2,7 @@ require "providers/provider_factory"
module ImageCommands
def get_images mongo, provider
def get_available_provider_images mongo, provider
filters = mongo.available_images(provider)
if filters.empty?
[]

View File

@ -1,3 +1,5 @@
require "db/mongo/models/image"
module Connectors
class Image < Base
include Helpers::InsertCommand,

View File

@ -5,7 +5,7 @@ module Validators
include ImageCommands
def valid?
images = get_images(::Devops::Db.connector, @model.provider)
images = get_available_provider_images(::Devops::Db.connector, @model.provider)
images.map{|i| i["id"]}.include?(@model.id)
end

View File

@ -21,7 +21,7 @@ module Devops
lambda {
check_privileges("image", "r")
check_provider(params[:provider])
json get_images(settings.mongo, params[:provider])
json Image.get_available_provider_images(settings.mongo, params[:provider])
}
end
@ -36,7 +36,7 @@ module Devops
lambda {
check_privileges("image", "w")
image = create_object_from_json_body
settings.mongo.image_insert Image.new(image)
settings.mongo.image_insert ::Image.new(image)
create_response "Created", nil, 201
}
end
@ -45,7 +45,7 @@ module Devops
lambda {
check_privileges("image", "w")
settings.mongo.image params[:image_id]
image = Image.new(create_object_from_json_body)
image = ::Image.new(create_object_from_json_body)
image.id = params[:image_id]
settings.mongo.image_update image
create_response("Image '#{params[:image_id]}' has been updated")
@ -59,7 +59,7 @@ module Devops
unless projects.empty?
ar = []
projects.each do |p|
ar += p.deploy_envs.select{|e| e.image == params[:image_id]}.map{|e| "#{p.id}.#{e.identifier}"}
ar += p.deploy_envs.select{|e| e.respond_to?(:image)}.select{|e| e.image == params[:image_id]}.map{|e| "#{p.id}.#{e.identifier}"}
end
raise DependencyError.new "Deleting is forbidden: Image is used in #{ar.join(", ")}"
end

View File

@ -19,7 +19,7 @@ class Generator < OpenStruct
def configure!
c = {}
%w{host port username password path_prefix username_without_privileges password_without_privileges}.each do |key|
%w{host port username password path_prefix username_without_privileges password_without_privileges openstack ec2}.each do |key|
c[key] = @config[key]
end
File.open(TESTS_CONFIG, "w") {|f| f.write(c.to_yaml) }
@ -28,11 +28,17 @@ class Generator < OpenStruct
def generate!(templates)
templates.each do |input, output|
puts "Input: #{input}"
if File.exists?(input)
data = render(File.read(input))
dir = File.dirname(output)
FileUtils.mkdir_p(dir) unless File.exists?(dir)
File.open(output, "w") {|f| f.write(data)}
file_data = File.read(input)
if file_data.nil?
puts "Data of file '#{input}' is nil"
else
data = render(file_data)
dir = File.dirname(output)
FileUtils.mkdir_p(dir) unless File.exists?(dir)
File.open(output, "w") {|f| f.write(data)}
end
else
puts "WARN: file '#{input}' does not exist"
end
@ -52,7 +58,8 @@ class Generator < OpenStruct
private
def render(template)
ERB.new(template).result(binding)
puts template.size
ERB.new(template).result()
end
def load_fixtures