{"action":"closed","issue":{"url":"https://api.github.com/repos/aws/aws-sdk-core-ruby/issues/221","labels_url":"https://api.github.com/repos/aws/aws-sdk-core-ruby/issues/221/labels{/name}","comments_url":"https://api.github.com/repos/aws/aws-sdk-core-ruby/issues/221/comments","events_url":"https://api.github.com/repos/aws/aws-sdk-core-ruby/issues/221/events","html_url":"https://github.com/aws/aws-sdk-core-ruby/issues/221","id":97374533,"number":221,"title":"Inconsistent responses from ECS endpoints","user":{"login":"rafaelmagu","id":197444,"avatar_url":"https://avatars.githubusercontent.com/u/197444?v=3","gravatar_id":"","url":"https://api.github.com/users/rafaelmagu","html_url":"https://github.com/rafaelmagu","followers_url":"https://api.github.com/users/rafaelmagu/followers","following_url":"https://api.github.com/users/rafaelmagu/following{/other_user}","gists_url":"https://api.github.com/users/rafaelmagu/gists{/gist_id}","starred_url":"https://api.github.com/users/rafaelmagu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rafaelmagu/subscriptions","organizations_url":"https://api.github.com/users/rafaelmagu/orgs","repos_url":"https://api.github.com/users/rafaelmagu/repos","events_url":"https://api.github.com/users/rafaelmagu/events{/privacy}","received_events_url":"https://api.github.com/users/rafaelmagu/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-07-27T02:59:24Z","updated_at":"2015-07-27T03:21:40Z","closed_at":"2015-07-27T03:21:40Z","body":"I'm seeing inconsistent behaviour when using the SDK for talking to the ECS endpoints. The values returned by some methods are not accepted as values in others that, in theory, should accept them. This is exemplified below, where an attempt to discover the task definition ARN currently in use by a running service is made.\r\n\r\nInitial setup:\r\n```\r\nirb(main):001:0> require 'aws-sdk'\r\n=> true\r\nirb(main):002:0> require 'aws-sdk-core'\r\n=> false\r\nirb(main):003:0> require 'aws-sdk-resources'\r\n=> false\r\nirb(main):004:0>\r\nirb(main):005:0* client = Aws::ECS::Client.new(region: 'us-east-1')\r\n=> #<Aws::ECS::Client>\r\n```\r\n\r\nGet the service ARN from a given cluster:\r\n```\r\nirb(main):006:0> service_arn = client.list_services(cluster: 'my-cluster').service_arns[0]\r\n=> \"arn:aws:ecs:us-east-1:123456789012:service/my-service\"\r\n```\r\n\r\n(FAILURE) Describe service using ARN from above:\r\n```\r\nirb(main):007:0> cluster = client.describe_services(services: [service_arn])\r\n=> #<struct Aws::ECS::Types::DescribeServicesResponse services=[], failures=[#<struct Aws::ECS::Types::Failure arn=\"arn:aws:ecs:us-east-1:123456789012:service/my-service\", reason=\"MISSING\">]>\r\n```\r\n\r\nIn this response, I see the ARN I provided and the reason set to `MISSING`. But *what exactly* is missing from the query? API docs state `services:` is the only required param.\r\n\r\nAm I holding it the wrong way?\r\n\r\nUsing SDK 2.1.8."}}