Aled Sage created BROOKLYN-400:
----------------------------------

             Summary: Can't find ubuntu 16.04 image in aws-ec2: jclouds failed 
to extract version
                 Key: BROOKLYN-400
                 URL: https://issues.apache.org/jira/browse/BROOKLYN-400
             Project: Brooklyn
          Issue Type: Bug
    Affects Versions: 0.9.0
            Reporter: Aled Sage


jclouds fails to find an AMI for ubuntu version 16.04. For example, something 
like the code below will fail:
{noformat}
location:
  aws-ec2:us-east-1:
    osFamily: ubuntu
    osVersionRegex: 16.*
{noformat}

In contrast,  {{osVersionRegex: 14}} will work.

Looking at the log for the images it did find, jclouds has not been able to 
extract the OS version number correctly (note the blank string for the version):

{noformat}
2016-11-23 17:42:25,568 INFO  o.a.b.l.j.JcloudsLocation [main]:  Image: 
{id=us-east-1/ami-a05194cd, providerId=ami-a05194cd, 
name=ubuntu/images/ebs-ssd/ubuntu-xenial-16.04-amd64-server-20160610, 
location={scope=REGION, id=us-east-1, description=us-east-1, parent=aws-ec2, 
iso3166Codes=[US-VA]}, os={family=ubuntu, arch=paravirtual, version=, 
description=099720109477/ubuntu/images/ebs-ssd/ubuntu-xenial-16.04-amd64-server-20160610,
 is64Bit=true}, 
description=099720109477/ubuntu/images/ebs-ssd/ubuntu-xenial-16.04-amd64-server-20160610,
 version=20160610, status=AVAILABLE[available], loginUser=ubuntu, 
userMetadata={owner=099720109477, rootDeviceType=ebs, 
virtualizationType=paravirtual, hypervisor=xen}}
{noformat}

Digging into the jclouds code, 
{{ComputeServiceConstants.ReferenceData.osVersionMapJson}} defines the possible 
versions of each distro. There is no entry for 16.04 in jclouds 1.9.2 (or in 
jclouds 1.9.3, or 2.0.0) [1,2,3]. However, there is in jclouds master (added in 
[4]).

I believe that is the underlying cause.

Interesting, some CentOS versions are also (6.7, 6.8, 7.1, 7.2) but 
corresponding AMIs have not been released by RightScale (owner id 
"411009282317") so we wouldn't find any image for those versions anyway.

[1] 
https://github.com/jclouds/jclouds/blob/rel/jclouds-1.9.3/compute/src/main/java/org/jclouds/compute/reference/ComputeServiceConstants.java#L90
[2] 
https://github.com/jclouds/jclouds/blob/rel/jclouds-2.0.0/compute/src/main/java/org/jclouds/compute/reference/ComputeServiceConstants.java#L90
[3] 
https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/reference/ComputeServiceConstants.java#L90
[4] 
https://github.com/jclouds/jclouds/commit/301f6812afd46d7822b932ad04fecd660c09c950



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to