diff --git a/devops-client/lib/devops-client/handler/stack.rb b/devops-client/lib/devops-client/handler/stack.rb index 503d9f3..a323669 100644 --- a/devops-client/lib/devops-client/handler/stack.rb +++ b/devops-client/lib/devops-client/handler/stack.rb @@ -30,7 +30,11 @@ class Stack < Handler output when :resources resources_handler - output(resource: @args[3]) + if @args[3] + output(format: 'json', resource: true) + else + output + end end end diff --git a/devops-service/providers/openstack.rb b/devops-service/providers/openstack.rb index a927741..011007d 100644 --- a/devops-service/providers/openstack.rb +++ b/devops-service/providers/openstack.rb @@ -184,7 +184,7 @@ module Provider end def compute - connection_compute(self.connection_options) + @compute ||= connection_compute(connection_options) end def network @@ -218,7 +218,8 @@ module Provider end def stack_resource(stack, resource_id) - fog_stack(stack).resources.get(resource_id) + physical_id = fog_stack(stack).resources.get(resource_id).physical_resource_id + compute.servers.get(physical_id).attributes end private