You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@brooklyn.apache.org by "Sam Corbett (JIRA)" <ji...@apache.org> on 2017/01/06 15:36:58 UTC
[jira] [Updated] (BROOKLYN-422) Using AWS availability zone as
location region causes IllegalStateException during deployment
[ https://issues.apache.org/jira/browse/BROOKLYN-422?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sam Corbett updated BROOKLYN-422:
---------------------------------
Description:
A regression in 0.10.0 causes deployments that use specific AWS availability zones (e.g. us-east-1b) to fail. jclouds throws an IllegalStateException complaining that: "location id us-east-1b not found in: [{scope=PROVIDER, id=aws-ec2, description=https://ec2.us-east-1.amazonaws.com, iso3166Codes=[US-VA, US-CA, US-OR, BR-SP, IE, DE-HE, SG, AU-NSW, JP-13]}]".
The exception is thrown by {{org.jclouds.compute.domain.internal.TemplateBuilderImpl#locationId(String)}}. The fix is to remove the availability zone suffix when configuring {{org.jclouds.location.reference.LocationConstants#PROPERTY_REGIONS}}.
A simple blueprint that fails is:
{code}
location:
jclouds:aws-ec2:
region: us-east-1a
services:
- type: server
{code}
And a more complex one using DynamicCluster's availability zones features:
{code}
services:
- type: org.apache.brooklyn.entity.group.DynamicCluster
brooklyn.config:
initialSize: 2
memberSpec:
$brooklyn:entitySpec:
type: org.apache.brooklyn.entity.software.base.EmptySoftwareProcess
enableAvailabilityZones: true
availabilityZoneNames:
- us-east-1a
- us-east-1b
location: jclouds:aws-ec2:us-east-1
{code}
was:
A regression in 0.10.0 causes deployments that use specific AWS availability zones (e.g. us-east-1b) to fail. jclouds throws an IllegalStateException complaining that: "location id us-east-1b not found in: [{scope=PROVIDER, id=aws-ec2, description=https://ec2.us-east-1.amazonaws.com, iso3166Codes=[US-VA, US-CA, US-OR, BR-SP, IE, DE-HE, SG, AU-NSW, JP-13]}]".
The exception is thrown by {{org.jclouds.compute.domain.internal.TemplateBuilderImpl#locationId(String)}}. The fix is to remove the availability zone suffix when configuring {{org.jclouds.location.reference.LocationConstants#PROPERTY_REGIONS}}.
A simple blueprint that fails is:
{code}
location:
jclouds:aws-ec2:
region: us-east-1a
services:
- type: server
{code}
And a more complex one using DynamicCluster's availability zones features:
{code}
services:
- type: org.apache.brooklyn.entity.group.DynamicCluster
brooklyn.config:
initialSize: 2
memberSpec:
$brooklyn:entitySpec:
type: org.apache.brooklyn.entity.software.base.EmptySoftwareProcess
enableAvailabilityZones: true
availabilityZoneNames:
- us-east-1a
- us-east-1b
location: jclouds:aws-ec2:us-east-1
{code}
> Using AWS availability zone as location region causes IllegalStateException during deployment
> ---------------------------------------------------------------------------------------------
>
> Key: BROOKLYN-422
> URL: https://issues.apache.org/jira/browse/BROOKLYN-422
> Project: Brooklyn
> Issue Type: Bug
> Affects Versions: 0.10.0
> Reporter: Sam Corbett
>
> A regression in 0.10.0 causes deployments that use specific AWS availability zones (e.g. us-east-1b) to fail. jclouds throws an IllegalStateException complaining that: "location id us-east-1b not found in: [{scope=PROVIDER, id=aws-ec2, description=https://ec2.us-east-1.amazonaws.com, iso3166Codes=[US-VA, US-CA, US-OR, BR-SP, IE, DE-HE, SG, AU-NSW, JP-13]}]".
> The exception is thrown by {{org.jclouds.compute.domain.internal.TemplateBuilderImpl#locationId(String)}}. The fix is to remove the availability zone suffix when configuring {{org.jclouds.location.reference.LocationConstants#PROPERTY_REGIONS}}.
> A simple blueprint that fails is:
> {code}
> location:
> jclouds:aws-ec2:
> region: us-east-1a
> services:
> - type: server
> {code}
> And a more complex one using DynamicCluster's availability zones features:
> {code}
> services:
> - type: org.apache.brooklyn.entity.group.DynamicCluster
> brooklyn.config:
> initialSize: 2
> memberSpec:
> $brooklyn:entitySpec:
> type: org.apache.brooklyn.entity.software.base.EmptySoftwareProcess
> enableAvailabilityZones: true
> availabilityZoneNames:
> - us-east-1a
> - us-east-1b
> location: jclouds:aws-ec2:us-east-1
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)