This commit is contained in:
Anton Martynov 2015-09-16 14:07:46 +03:00
parent 0ce0207fdf
commit 21f66cbdf5
2 changed files with 32 additions and 1 deletions

View File

@ -37,5 +37,11 @@ module Provider
def unset_tags instance_id, tags def unset_tags instance_id, tags
end end
def set_server_tags server
end
def set_stack_tags stack
end
end end
end end

View File

@ -150,13 +150,24 @@ module Provider
end end
s.public_ip = details["ipAddress"] s.public_ip = details["ipAddress"]
s.private_ip = details["privateIpAddress"] s.private_ip = details["privateIpAddress"]
compute.create_tags(s.id, {"Name" => s.chef_node_name}) set_server_tags(s)
out << "\nDone\n\n" out << "\nDone\n\n"
out << s.info out << s.info
true true
end end
def set_server_tags s
tags = {
"Name" => s.chef_node_name,
"cid:project" => s.project,
"cid:deployEnv" => s.deploy_env,
"cid:user" => s.created_by,
"cid:remoteUser" => s.remote_user
}
compute.create_tags(s.id, tags)
end
def delete_server s def delete_server s
r = self.compute.terminate_instances(s.id) r = self.compute.terminate_instances(s.id)
i = r.body["instancesSet"][0] i = r.body["instancesSet"][0]
@ -220,6 +231,7 @@ module Provider
) )
stack.id = response.body['StackId'] stack.id = response.body['StackId']
out << "Stack id: #{stack.id}\n" out << "Stack id: #{stack.id}\n"
set_stack_tags(stack)
out.flush out.flush
rescue Excon::Errors::Conflict => e rescue Excon::Errors::Conflict => e
raise ProviderErrors::NameConflict raise ProviderErrors::NameConflict
@ -237,6 +249,19 @@ module Provider
end end
end end
def set_stack_tags stack
tags = {
"StackName" => stack.name,
"cid:project" => stack.project,
"cid:deployEnv" => stack.deploy_env,
"cid:user" => stack.created_by
# "cid:remoteUser" => s.remote_user
}
ids = stack_resource(stack).map {|resource| resource['PhysicalResourceId']}
ids << stack.id
compute.create_tags(ids, tags)
end
def validate_stack_template template def validate_stack_template template
r = cloud_formation.validate_template({'TemplateBody' => template}) r = cloud_formation.validate_template({'TemplateBody' => template})
pp r.body pp r.body