Fix DigitalOcean DropletApiLiveTest

Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/a0f659fa
Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/a0f659fa
Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/a0f659fa

Branch: refs/heads/master
Commit: a0f659faedaeec05000effc99a4bb655b0cec0d1
Parents: 6f7e4b9
Author: Ignasi Barrera <[email protected]>
Authored: Tue Nov 28 11:58:51 2017 +0100
Committer: Ignasi Barrera <[email protected]>
Committed: Thu Nov 30 09:05:28 2017 +0100

----------------------------------------------------------------------
 providers/digitalocean2/pom.xml                           |  2 +-
 .../jclouds/digitalocean2/DigitalOcean2ApiMetadata.java   |  2 +-
 .../main/java/org/jclouds/digitalocean2/domain/Image.java | 10 +++++++---
 .../compute/DigitalOcean2TemplateBuilderLiveTest.java     |  2 +-
 .../compute/functions/DropletToNodeMetadataTest.java      |  4 ++--
 .../compute/functions/ImageInRegionToImageTest.java       |  2 +-
 .../digitalocean2/features/DropletApiLiveTest.java        |  2 +-
 .../internal/BaseDigitalOcean2ApiLiveTest.java            |  4 ++--
 8 files changed, 16 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/pom.xml
----------------------------------------------------------------------
diff --git a/providers/digitalocean2/pom.xml b/providers/digitalocean2/pom.xml
index fc81952..1a8e495 100644
--- a/providers/digitalocean2/pom.xml
+++ b/providers/digitalocean2/pom.xml
@@ -38,7 +38,7 @@
     <test.digitalocean2.api-version>2</test.digitalocean2.api-version>
     <test.digitalocean2.identity>FIXME</test.digitalocean2.identity>
     <test.digitalocean2.credential>FIXME</test.digitalocean2.credential>
-    
<test.digitalocean2.template>osFamily=UBUNTU,os64Bit=true,osVersionMatches=14.*</test.digitalocean2.template>
+    
<test.digitalocean2.template>osFamily=UBUNTU,os64Bit=true,osVersionMatches=16.*</test.digitalocean2.template>
     
<jclouds.osgi.export>org.jclouds.digitalocean2*;version="${project.version}"</jclouds.osgi.export>
     <jclouds.osgi.import>
       org.jclouds.compute.internal;version="${project.version}",

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/DigitalOcean2ApiMetadata.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/DigitalOcean2ApiMetadata.java
 
b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/DigitalOcean2ApiMetadata.java
index 9aedaaa..4630b52 100644
--- 
a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/DigitalOcean2ApiMetadata.java
+++ 
b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/DigitalOcean2ApiMetadata.java
@@ -68,7 +68,7 @@ public class DigitalOcean2ApiMetadata extends 
BaseHttpApiMetadata<DigitalOcean2A
       properties.put(AUDIENCE, 
"https://cloud.digitalocean.com/v1/oauth/token";);
       properties.put(CREDENTIAL_TYPE, BEARER_TOKEN_CREDENTIALS.toString());
       properties.put(PROPERTY_SESSION_INTERVAL, 3600);
-      properties.put(TEMPLATE, 
"osFamily=UBUNTU,os64Bit=true,osVersionMatches=14.*");
+      properties.put(TEMPLATE, 
"osFamily=UBUNTU,os64Bit=true,osVersionMatches=16.*");
       properties.put(POLL_INITIAL_PERIOD, 5000);
       properties.put(POLL_MAX_PERIOD, 20000);
       // Node operations in DigitalOcean can be quite slow. Use a 5 minutes

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/domain/Image.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/domain/Image.java
 
b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/domain/Image.java
index dd2c3b6..47bba71 100644
--- 
a/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/domain/Image.java
+++ 
b/providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/domain/Image.java
@@ -37,11 +37,15 @@ public abstract class Image {
    public abstract boolean isPublic();
    public abstract List<String> regions();
    public abstract Date createdAt();
+   public abstract float minDiskSize();
+   public abstract float sizeGBs();
 
-   @SerializedNames({ "id", "name", "type", "distribution", "slug", "public", 
"regions", "created_at" })
+   @SerializedNames({ "id", "name", "type", "distribution", "slug", "public", 
"regions", "created_at", "min_disk_size",
+         "size_gigabytes" })
    public static Image create(int id, String name, String type, String 
distribution, String slug, boolean isPublic,
-         List<String> regions, Date createdAt) {
-      return new AutoValue_Image(id, name, type, distribution, slug, isPublic, 
copyOf(regions), createdAt);
+         List<String> regions, Date createdAt, float minDiskSize, float 
sizeGBs) {
+      return new AutoValue_Image(id, name, type, distribution, slug, isPublic, 
copyOf(regions), createdAt, minDiskSize,
+            sizeGBs);
    }
 
    Image() {}

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/DigitalOcean2TemplateBuilderLiveTest.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/DigitalOcean2TemplateBuilderLiveTest.java
 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/DigitalOcean2TemplateBuilderLiveTest.java
index 698483a..b7738c0 100644
--- 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/DigitalOcean2TemplateBuilderLiveTest.java
+++ 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/DigitalOcean2TemplateBuilderLiveTest.java
@@ -40,7 +40,7 @@ public class DigitalOcean2TemplateBuilderLiveTest extends 
BaseTemplateBuilderLiv
    @Override
    public void testDefaultTemplateBuilder() throws IOException {
       Template defaultTemplate = 
view.getComputeService().templateBuilder().build();
-      assert 
defaultTemplate.getImage().getOperatingSystem().getVersion().startsWith("14.") 
: defaultTemplate
+      assert 
defaultTemplate.getImage().getOperatingSystem().getVersion().startsWith("16.") 
: defaultTemplate
             .getImage().getOperatingSystem().getVersion();
       assertEquals(defaultTemplate.getImage().getOperatingSystem().is64Bit(), 
true);
       
assertEquals(defaultTemplate.getImage().getOperatingSystem().getFamily(), 
OsFamily.UBUNTU);

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/DropletToNodeMetadataTest.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/DropletToNodeMetadataTest.java
 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/DropletToNodeMetadataTest.java
index ba6d3de..93f4bf4 100644
--- 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/DropletToNodeMetadataTest.java
+++ 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/DropletToNodeMetadataTest.java
@@ -79,7 +79,7 @@ public class DropletToNodeMetadataTest {
    @BeforeMethod
    public void setup() {
       image = org.jclouds.digitalocean2.domain.Image.create(1, "14.04 x64",
-            "distribution", "Ubuntu", "ubuntu-1404-x86", true, 
ImmutableList.of("sfo1"), new Date());
+            "distribution", "Ubuntu", "ubuntu-1404-x86", true, 
ImmutableList.of("sfo1"), new Date(), 20, 20);
       region = Region.create("sfo1", "San Francisco 1", 
ImmutableList.of("2gb"), true, ImmutableList.<String> of());
       
       images = ImmutableSet.of(new ImageBuilder()
@@ -146,7 +146,7 @@ public class DropletToNodeMetadataTest {
    public void testConvertDropletOldImage() throws ParseException {
       // Use an image id that is not in the list of images
       org.jclouds.digitalocean2.domain.Image image = 
org.jclouds.digitalocean2.domain.Image.create(2, "14.04 x64",
-            "distribution", "Ubuntu", "ubuntu2-1404-x86", true, 
ImmutableList.of("sfo1"), new Date());
+            "distribution", "Ubuntu", "ubuntu2-1404-x86", true, 
ImmutableList.of("sfo1"), new Date(), 20, 20);
       
       Droplet droplet = Droplet.create(
             1,

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/ImageInRegionToImageTest.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/ImageInRegionToImageTest.java
 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/ImageInRegionToImageTest.java
index f1072d6..38b4662 100644
--- 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/ImageInRegionToImageTest.java
+++ 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/compute/functions/ImageInRegionToImageTest.java
@@ -75,7 +75,7 @@ public class ImageInRegionToImageTest {
    @Test
    public void testConvertImage() {
       Image image = Image.create(1, "14.04 x64", "distribution", "Ubuntu", 
"ubuntu-1404-x86", true,
-            ImmutableList.of("sfo1", "lon1"), new Date());
+            ImmutableList.of("sfo1", "lon1"), new Date(), 20, 20);
       org.jclouds.compute.domain.Image expected = new ImageBuilder()
             .id("lon1/ubuntu-1404-x86") // Location scoped images have the 
location encoded in the id
             .providerId("1")

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/features/DropletApiLiveTest.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/features/DropletApiLiveTest.java
 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/features/DropletApiLiveTest.java
index f18a24f..62f40f4 100644
--- 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/features/DropletApiLiveTest.java
+++ 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/features/DropletApiLiveTest.java
@@ -57,8 +57,8 @@ public class DropletApiLiveTest extends 
BaseDigitalOcean2ApiLiveTest {
    @BeforeClass
    public void setupDroplet() {
       region = firstAvailableRegion();
-      size = cheapestSizeInRegion(region);
       image = ubuntuImageInRegion(region);
+      size = cheapestSizeInRegionForImage(region, image);
       
       Map<String, String> keyPair = SshKeys.generate();
       key = api.keyApi().create(prefix + "-droplet-livetest", 
keyPair.get("public"));

http://git-wip-us.apache.org/repos/asf/jclouds/blob/a0f659fa/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/internal/BaseDigitalOcean2ApiLiveTest.java
----------------------------------------------------------------------
diff --git 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/internal/BaseDigitalOcean2ApiLiveTest.java
 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/internal/BaseDigitalOcean2ApiLiveTest.java
index 722ef97..4b7b0ec 100644
--- 
a/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/internal/BaseDigitalOcean2ApiLiveTest.java
+++ 
b/providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/internal/BaseDigitalOcean2ApiLiveTest.java
@@ -104,11 +104,11 @@ public class BaseDigitalOcean2ApiLiveTest extends 
BaseApiLiveTest<DigitalOcean2A
       }).get();
    }
    
-   protected Size cheapestSizeInRegion(final Region region) {
+   protected Size cheapestSizeInRegionForImage(final Region region, final 
Image image) {
       return sizesByPrice().min(api.sizeApi().list().concat().filter(new 
Predicate<Size>() {
          @Override
          public boolean apply(Size input) {
-            return input.available() && 
input.regions().contains(region.slug());
+            return input.available() && 
input.regions().contains(region.slug()) && input.disk() >= image.minDiskSize();
          }
       }));
    }

Reply via email to