++ Role / User has to have ecs:ListClusters and ecs:ListServices permissions
README.md
++ added some comments around new configuration options
++ added Property based Java configuration code example
++ added usage of AwsEcsDiscoveryStrategyIT integration test as well as result example.
AwsEcsProperties
++ added cluster_name_regexp and service_name_regexp configuration properties
++ added get methods for cluster/services_name_regexp
+++ Behavior : If cluster or service name is available it will be used as full match,
+++ otherwise if null / empty-post-trim the set regexp is used. Defaults to ".*" if not available.
AwsEcsDiscoveryStrategy
++ Changed Processing :
++ 1) get a list of clusters matching the passed cluster name if available
++ defaulting to passed cluster_name_regexp pattern if available, otherwise all clusters aws profile has access to
++ 2) For every cluster get a list of services matching the passed service name if available
++ defaulting to passed service_name_regexp if available, otherwise all services aws profile has access to
++ 2.1) Remove/filter out ownTask
++ 2.2) collect all tasks found, determine addresses of tasks (no change of implementation here)
++ 2.3) add addresses to list of addresses.(Downstream Code not changed)
AwsEcsDiscoveryStrategyIT
++ Some sort of Integration Testing using available AWS parameters
++ (access key, secret key, region, cluster , cluster regexp, service, service regexp)
++ Role / User has to have ecs:ListClusters and ecs:ListServices permissions
README.md ++ added some comments around new configuration options ++ added Property based Java configuration code example ++ added usage of AwsEcsDiscoveryStrategyIT integration test as well as result example.
AwsEcsProperties ++ added cluster_name_regexp and service_name_regexp configuration properties ++ added get methods for cluster/services_name_regexp +++ Behavior : If cluster or service name is available it will be used as full match, +++ otherwise if null / empty-post-trim the set regexp is used. Defaults to ".*" if not available.
AwsEcsDiscoveryStrategy ++ Changed Processing : ++ 1) get a list of clusters matching the passed cluster name if available ++ defaulting to passed cluster_name_regexp pattern if available, otherwise all clusters aws profile has access to ++ 2) For every cluster get a list of services matching the passed service name if available ++ defaulting to passed service_name_regexp if available, otherwise all services aws profile has access to ++ 2.1) Remove/filter out ownTask ++ 2.2) collect all tasks found, determine addresses of tasks (no change of implementation here) ++ 2.3) add addresses to list of addresses.(Downstream Code not changed)
AwsEcsDiscoveryStrategyIT ++ Some sort of Integration Testing using available AWS parameters ++ (access key, secret key, region, cluster , cluster regexp, service, service regexp)
pom.xml ++ added UTF-8 source encoding property ++ added slf4j-simple depedency for testing purposes