Return-Path: X-Original-To: apmail-brooklyn-commits-archive@minotaur.apache.org Delivered-To: apmail-brooklyn-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0382117A66 for ; Tue, 11 Aug 2015 01:40:00 +0000 (UTC) Received: (qmail 20090 invoked by uid 500); 11 Aug 2015 01:39:56 -0000 Delivered-To: apmail-brooklyn-commits-archive@brooklyn.apache.org Received: (qmail 20066 invoked by uid 500); 11 Aug 2015 01:39:56 -0000 Mailing-List: contact commits-help@brooklyn.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@brooklyn.incubator.apache.org Delivered-To: mailing list commits@brooklyn.incubator.apache.org Received: (qmail 20057 invoked by uid 99); 11 Aug 2015 01:39:56 -0000 Received: from Unknown (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Aug 2015 01:39:56 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 58C78DC0C1 for ; Tue, 11 Aug 2015 01:39:56 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.772 X-Spam-Level: * X-Spam-Status: No, score=1.772 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.009, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-us-west.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id Vvsukv6cDhhq for ; Tue, 11 Aug 2015 01:39:46 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-us-west.apache.org (ASF Mail Server at mx1-us-west.apache.org) with SMTP id 8A68E2156E for ; Tue, 11 Aug 2015 01:39:46 +0000 (UTC) Received: (qmail 19490 invoked by uid 99); 11 Aug 2015 01:39:46 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 11 Aug 2015 01:39:46 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 48EAFE0501; Tue, 11 Aug 2015 01:39:46 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: hadrian@apache.org To: commits@brooklyn.incubator.apache.org Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: incubator-brooklyn git commit: bump jclouds version to 1.9.1 Date: Tue, 11 Aug 2015 01:39:46 +0000 (UTC) Repository: incubator-brooklyn Updated Branches: refs/heads/master 2aac052fb -> 7d2359540 bump jclouds version to 1.9.1 remove EC2HardwareBuilder from locations/jclouds as merged into jclouds/jclouds Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/7d235954 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/7d235954 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/7d235954 Branch: refs/heads/master Commit: 7d23595404f9a13bc365fcb44b2d1235c06bb55e Parents: 2aac052 Author: Andrea Turli Authored: Mon Aug 10 14:47:39 2015 +0200 Committer: Andrea Turli Committed: Mon Aug 10 14:47:39 2015 +0200 ---------------------------------------------------------------------- .../ec2/compute/domain/EC2HardwareBuilder.java | 860 ------------------- parent/pom.xml | 2 +- 2 files changed, 1 insertion(+), 861 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/7d235954/locations/jclouds/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java ---------------------------------------------------------------------- diff --git a/locations/jclouds/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java b/locations/jclouds/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java deleted file mode 100644 index 8aa3bb3..0000000 --- a/locations/jclouds/src/main/java/org/jclouds/ec2/compute/domain/EC2HardwareBuilder.java +++ /dev/null @@ -1,860 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.jclouds.ec2.compute.domain; - -import static com.google.common.base.Preconditions.checkNotNull; -import static com.google.common.base.Predicates.not; -import static org.jclouds.compute.domain.Volume.Type.LOCAL; -import static org.jclouds.compute.predicates.ImagePredicates.any; -import static org.jclouds.compute.predicates.ImagePredicates.idIn; - -import java.net.URI; -import java.util.List; -import java.util.Map; - -import org.jclouds.compute.domain.Hardware; -import org.jclouds.compute.domain.HardwareBuilder; -import org.jclouds.compute.domain.Image; -import org.jclouds.compute.domain.Processor; -import org.jclouds.compute.domain.Volume; -import org.jclouds.compute.domain.VolumeBuilder; -import org.jclouds.compute.predicates.ImagePredicates; -import org.jclouds.domain.Location; -import org.jclouds.ec2.domain.InstanceType; -import org.jclouds.ec2.domain.RootDeviceType; -import org.jclouds.ec2.domain.VirtualizationType; - -import com.google.common.base.Preconditions; -import com.google.common.base.Predicate; -import com.google.common.base.Predicates; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableList.Builder; -import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Lists; - -/** - * BROOKLYN-SPECIFIC: - * TODO remove when we use jclouds cut which includes this. - * This is a copy of fixes for HVM/Paravirtual bug against AWS introduced in the first commit at - * https://github.com/jclouds/jclouds/pull/732. - * The Brooklyn bug is https://issues.apache.org/jira/browse/BROOKLYN-140. - * (Apart from these lines, and whitespace reformatted for cloudsoft standards, the code is identical.) - * - * @see - * - * and . - * - * Also note Windows only supports HVM, as per - * . - * On Windows you may have to constrain hardware appropriately. - */ -public class EC2HardwareBuilder extends HardwareBuilder { - private Predicate rootDeviceType = any(); - private Predicate virtualizationType = null; - private Predicate imageIds = any(); - private Predicate is64Bit = any(); - - public EC2HardwareBuilder() { - this.supportsImage = null; - } - - /** - * evaluates true if the Image has the following rootDeviceType - * - * @param type - * rootDeviceType of the image - * @return predicate - */ - public static class RequiresRootDeviceType implements Predicate { - final RootDeviceType type; - - public RequiresRootDeviceType(final RootDeviceType type) { - this.type = checkNotNull(type, "type must be defined"); - } - - @Override - public boolean apply(Image image) { - return image.getUserMetadata().containsKey("rootDeviceType") - && type == RootDeviceType.fromValue(image.getUserMetadata().get("rootDeviceType")); - } - - @Override - public String toString() { - return "requiresRootDeviceType(" + type + ")"; - } - - } - - /** - * evaluates true if the Image requires the following virtualizationType - * - * @param type - * virtualizationType of the image - * @return predicate - */ - public static class RequiresVirtualizationType implements Predicate { - final VirtualizationType type; - - public RequiresVirtualizationType(final VirtualizationType type) { - this.type = checkNotNull(type, "type must be defined"); - } - - @Override - public boolean apply(Image image) { - return image.getOperatingSystem() != null && image.getOperatingSystem().getArch() != null - && type == VirtualizationType.fromValue(image.getOperatingSystem().getArch()); - } - - @Override - public String toString() { - return "requiresVirtualizationType(" + type + ")"; - } - - } - - public EC2HardwareBuilder(String instanceType) { - ids(instanceType); - } - - public EC2HardwareBuilder virtualizationType(VirtualizationType virtualizationType) { - this.virtualizationType = new RequiresVirtualizationType(virtualizationType); - return this; - } - - public EC2HardwareBuilder virtualizationTypes(VirtualizationType ...virtualizationTypes) { - Preconditions.checkArgument(virtualizationTypes.length > 0, "At least one virtualization type is required."); - if (virtualizationTypes.length == 1) { - this.virtualizationType = new RequiresVirtualizationType(virtualizationTypes[0]); - } else { - List supportedVirtualizationTypes = Lists.newArrayList(); - for (VirtualizationType virtualizationType : virtualizationTypes) { - supportedVirtualizationTypes.add(new RequiresVirtualizationType(virtualizationType)); - } - this.virtualizationType = Predicates.or(supportedVirtualizationTypes); - } - return this; - } - - public EC2HardwareBuilder rootDeviceType(RootDeviceType rootDeviceType) { - this.rootDeviceType = new RequiresRootDeviceType(rootDeviceType); - return this; - } - - public EC2HardwareBuilder supportsImageIds(Iterable ids) { - this.imageIds = idIn(ids); - return this; - } - - public EC2HardwareBuilder ids(String id) { - return EC2HardwareBuilder.class.cast(super.ids(id)); - } - - public EC2HardwareBuilder ram(int ram) { - return EC2HardwareBuilder.class.cast(super.ram(ram)); - } - - public EC2HardwareBuilder processors(List processors) { - return EC2HardwareBuilder.class.cast(super.processors(processors)); - } - - public EC2HardwareBuilder volumes(List volumes) { - return EC2HardwareBuilder.class.cast(super.volumes(volumes)); - } - - public EC2HardwareBuilder supportsImage(Predicate supportsImage) { - return EC2HardwareBuilder.class.cast(super.supportsImage(supportsImage)); - } - - public EC2HardwareBuilder is64Bit(boolean is64Bit) { - this.is64Bit = is64Bit ? ImagePredicates.is64Bit() : not(ImagePredicates.is64Bit()); - return this; - } - - public EC2HardwareBuilder id(String id) { - return EC2HardwareBuilder.class.cast(super.id(id)); - } - - @Override - public EC2HardwareBuilder providerId(String providerId) { - return EC2HardwareBuilder.class.cast(super.providerId(providerId)); - } - - @Override - public EC2HardwareBuilder name(String name) { - return EC2HardwareBuilder.class.cast(super.name(name)); - } - - @Override - public EC2HardwareBuilder location(Location location) { - return EC2HardwareBuilder.class.cast(super.location(location)); - } - - @Override - public EC2HardwareBuilder uri(URI uri) { - return EC2HardwareBuilder.class.cast(super.uri(uri)); - } - - @Override - public EC2HardwareBuilder userMetadata(Map userMetadata) { - return EC2HardwareBuilder.class.cast(super.userMetadata(userMetadata)); - } - - private EC2HardwareBuilder t2() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder m3() { - virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder c3() { - virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder c4() { - virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL); - return this; - } - - // TODO include D2 (dense) types? - @SuppressWarnings("unused") - private EC2HardwareBuilder d2() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder r3() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder g2() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder i2() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder hs1() { - virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL); - return this; - } - - // TODO below this line are previous generation, discouraged - // http://aws.amazon.com/ec2/previous-generation/ - private EC2HardwareBuilder m1() { - virtualizationTypes(VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder c1() { - virtualizationTypes(VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder cc2() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder m2() { - virtualizationTypes(VirtualizationType.PARAVIRTUAL); - return this; - } - - // cr1 never included in jclouds, so skipped here - - private EC2HardwareBuilder hi1() { - virtualizationTypes(VirtualizationType.HVM, VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder t1() { - virtualizationTypes(VirtualizationType.PARAVIRTUAL); - return this; - } - - private EC2HardwareBuilder cg1() { - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - private EC2HardwareBuilder cc1() { - // often no longer available - not adding capacity (use cc2) - virtualizationTypes(VirtualizationType.HVM); - return this; - } - - - /** - * @see InstanceType#M1_SMALL - */ - public static EC2HardwareBuilder m1_small() { - return new EC2HardwareBuilder(InstanceType.M1_SMALL).m1() - .ram(1740) - .processors(ImmutableList.of(new Processor(1.0, 1.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(150.0f).device("/dev/sda2").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#M1_MEDIUM - */ - public static EC2HardwareBuilder m1_medium() { - return new EC2HardwareBuilder(InstanceType.M1_MEDIUM).m1() - .ram(3750) - .processors(ImmutableList.of(new Processor(1.0, 2.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdc").bootDevice(false).durable(false).build())); - } - - - /** - * @see InstanceType#T1_MICRO - */ - public static EC2HardwareBuilder t1_micro() { - return new EC2HardwareBuilder(InstanceType.T1_MICRO).t1() - .ram(630) - .processors(ImmutableList.of(new Processor(1.0, 1.0))).rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#T2_MICRO - */ - public static EC2HardwareBuilder t2_micro() { - return new EC2HardwareBuilder(InstanceType.T2_MICRO).t2() - .ram(1024) - .processors(ImmutableList.of(new Processor(1.0, 0.1))).rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#T2_SMALL - */ - public static EC2HardwareBuilder t2_small() { - return new EC2HardwareBuilder(InstanceType.T2_SMALL).t2() - .ram(2048) - .processors(ImmutableList.of(new Processor(1.0, 0.2))).rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#T2_MEDIUM - */ - public static EC2HardwareBuilder t2_medium() { - return new EC2HardwareBuilder(InstanceType.T2_MEDIUM).t2() - .ram(4096) - .processors(ImmutableList.of(new Processor(1.0, 0.4))).rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#M1_LARGE - */ - public static EC2HardwareBuilder m1_large() { - return new EC2HardwareBuilder(InstanceType.M1_LARGE).m1() - .ram(7680) - .processors(ImmutableList.of(new Processor(2.0, 2.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#M1_XLARGE - */ - public static EC2HardwareBuilder m1_xlarge() { - return new EC2HardwareBuilder(InstanceType.M1_XLARGE).m1() - .ram(15360) - .processors(ImmutableList.of(new Processor(4.0, 2.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdc").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdd").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sde").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#M2_XLARGE - */ - public static EC2HardwareBuilder m2_xlarge() { - return new EC2HardwareBuilder(InstanceType.M2_XLARGE).m2() - .ram(17510) - .processors(ImmutableList.of(new Processor(2.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sda1").bootDevice(true).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#M2_2XLARGE - */ - public static EC2HardwareBuilder m2_2xlarge() { - return new EC2HardwareBuilder(InstanceType.M2_2XLARGE).m2() - .ram(35020) - .processors(ImmutableList.of(new Processor(4.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdb").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#M2_4XLARGE - */ - public static EC2HardwareBuilder m2_4xlarge() { - return new EC2HardwareBuilder(InstanceType.M2_4XLARGE).m2() - .ram(70041) - .processors(ImmutableList.of(new Processor(8.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#M3_MEDIUM - */ - public static EC2HardwareBuilder m3_medium() { - return new EC2HardwareBuilder(InstanceType.M3_MEDIUM).m3() - .ram(3840) - .processors(ImmutableList.of(new Processor(1.0, 3.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(4.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#M3_LARGE - */ - public static EC2HardwareBuilder m3_large() { - return new EC2HardwareBuilder(InstanceType.M3_LARGE).m3() - .ram(7680) - .processors(ImmutableList.of(new Processor(2.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(32.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#M3_XLARGE - */ - public static EC2HardwareBuilder m3_xlarge() { - return new EC2HardwareBuilder(InstanceType.M3_XLARGE).m3() - .ram(15360) - .processors(ImmutableList.of(new Processor(4.0, 3.25))) - .is64Bit(true) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(40.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(40.0f).device("/dev/sdc").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#M3_2XLARGE - */ - public static EC2HardwareBuilder m3_2xlarge() { - return new EC2HardwareBuilder(InstanceType.M3_2XLARGE).m3() - .ram(30720) - .processors(ImmutableList.of(new Processor(8.0, 3.25))) - .is64Bit(true) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(80.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(80.0f).device("/dev/sdc").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#C1_MEDIUM - */ - public static EC2HardwareBuilder c1_medium() { - return new EC2HardwareBuilder(InstanceType.C1_MEDIUM).c1() - .ram(1740) - .processors(ImmutableList.of(new Processor(2.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(340.0f).device("/dev/sda2").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#C1_XLARGE - */ - public static EC2HardwareBuilder c1_xlarge() { - return new EC2HardwareBuilder(InstanceType.C1_XLARGE).c1() - .ram(7168) - .processors(ImmutableList.of(new Processor(8.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdc").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sdd").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(420.0f).device("/dev/sde").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C3_LARGE - */ - public static EC2HardwareBuilder c3_large() { - return new EC2HardwareBuilder(InstanceType.C3_LARGE).c3() - .ram(3750) - .processors(ImmutableList.of(new Processor(2.0, 3.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(16.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(16.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C3_XLARGE - */ - public static EC2HardwareBuilder c3_xlarge() { - return new EC2HardwareBuilder(InstanceType.C3_XLARGE).c3() - .ram(7168) - .processors(ImmutableList.of(new Processor(4.0, 3.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(40.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(40.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C3_2XLARGE - */ - public static EC2HardwareBuilder c3_2xlarge() { - return new EC2HardwareBuilder(InstanceType.C3_2XLARGE).c3() - .ram(15360) - .processors(ImmutableList.of(new Processor(8.0, 3.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(80.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(80.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C3_4XLARGE - */ - public static EC2HardwareBuilder c3_4xlarge() { - return new EC2HardwareBuilder(InstanceType.C3_4XLARGE).c3() - .ram(30720) - .processors(ImmutableList.of(new Processor(16.0, 3.4375))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(160.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(160.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C3_8XLARGE - */ - public static EC2HardwareBuilder c3_8xlarge() { - return new EC2HardwareBuilder(InstanceType.C3_8XLARGE).c3() - .ram(61440) - .processors(ImmutableList.of(new Processor(32.0, 3.375))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(320.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(320.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .is64Bit(true); - } - - /** - * @see InstanceType#C4_LARGE - */ - public static EC2HardwareBuilder c4_large() { - return new EC2HardwareBuilder(InstanceType.C4_LARGE).c4() - .ram(3840) - .processors(ImmutableList.of(new Processor(2.0, 3.5))) - .rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#C4_XLARGE - */ - public static EC2HardwareBuilder c4_xlarge() { - return new EC2HardwareBuilder(InstanceType.C4_XLARGE).c4() - .ram(7680) - .processors(ImmutableList.of(new Processor(4.0, 3.5))) - .rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#C4_2XLARGE - */ - public static EC2HardwareBuilder c4_2xlarge() { - return new EC2HardwareBuilder(InstanceType.C4_2XLARGE).c4() - .ram(15360) - .processors(ImmutableList.of(new Processor(8.0, 3.5))) - .rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#C4_4XLARGE - */ - public static EC2HardwareBuilder c4_4xlarge() { - return new EC2HardwareBuilder(InstanceType.C4_4XLARGE).c4() - .ram(30720) - .processors(ImmutableList.of(new Processor(16.0, 3.5))) - .rootDeviceType(RootDeviceType.EBS); - } - - /** - * @see InstanceType#C4_8XLARGE - */ - public static EC2HardwareBuilder c4_8xlarge() { - return new EC2HardwareBuilder(InstanceType.C4_8XLARGE).c4() - .ram(61440) - .processors(ImmutableList.of(new Processor(36.0, 3.5))) - .rootDeviceType(RootDeviceType.EBS); - } - - public static EC2HardwareBuilder cg1_4xlarge() { - return new EC2HardwareBuilder(InstanceType.CG1_4XLARGE).cg1() - .ram(22 * 1024) - .processors(ImmutableList.of(new Processor(4.0, 4.0), new Processor(4.0, 4.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - public static EC2HardwareBuilder cc1_4xlarge() { - return new EC2HardwareBuilder(InstanceType.CC1_4XLARGE).cc1() - .ram(23 * 1024) - .processors(ImmutableList.of(new Processor(4.0, 4.0), new Processor(4.0, 4.0))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - public static EC2HardwareBuilder cc2_8xlarge() { - return new EC2HardwareBuilder(InstanceType.CC2_8XLARGE).cc2() - .ram(60 * 1024 + 512) - .processors(ImmutableList.of(new Processor(8.0, 5.5), new Processor(8.0, 5.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdc").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sdd").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(840.0f).device("/dev/sde").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#G2_2XLARGE - */ - public static EC2HardwareBuilder g2_2xlarge() { - return new EC2HardwareBuilder(InstanceType.G2_2XLARGE).g2() - .ram(15 * 1024) - .processors(ImmutableList.of(new Processor(8.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(60.0f).device("/dev/sdb").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#I2_XLARGE - */ - public static EC2HardwareBuilder i2_xlarge() { - return new EC2HardwareBuilder(InstanceType.I2_XLARGE).i2() - .ram(30 * 1024 + 512) - .processors(ImmutableList.of(new Processor(4.0, 3.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdb").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#I2_2XLARGE - */ - public static EC2HardwareBuilder i2_2xlarge() { - return new EC2HardwareBuilder(InstanceType.I2_2XLARGE).i2() - .ram(61 * 1024) - .processors(ImmutableList.of(new Processor(8.0, 3.375))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdc").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#I2_4XLARGE - */ - public static EC2HardwareBuilder i2_4xlarge() { - return new EC2HardwareBuilder(InstanceType.I2_4XLARGE).i2() - .ram(122 * 1024) - .processors(ImmutableList.of(new Processor(16.0, 3.3125))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdc").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdd").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sde").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#I2_8XLARGE - */ - public static EC2HardwareBuilder i2_8xlarge() { - return new EC2HardwareBuilder(InstanceType.I2_8XLARGE).i2() - .ram(244 * 1024) - .processors(ImmutableList.of(new Processor(32.0, 3.25))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdc").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdd").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sde").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdf").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdg").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdh").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(800.0f).device("/dev/sdi").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - public static EC2HardwareBuilder hi1_4xlarge() { - return new EC2HardwareBuilder(InstanceType.HI1_4XLARGE).hi1() - .ram(60 * 1024 + 512) - .processors(ImmutableList.of(new Processor(16.0, 2.1875))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(1024.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(1024.0f).device("/dev/sdb").bootDevice(false).durable(false).build())) - .virtualizationType(VirtualizationType.HVM); - } - - public static EC2HardwareBuilder hs1_8xlarge() { - float twoTB = 2048.0f * 1024.0f; - Builder all24Volumes = ImmutableList.builder(); - all24Volumes.add(new VolumeBuilder().type(LOCAL).size(twoTB).device("/dev/sda1").bootDevice(true).durable(false).build()); - for (char letter : ImmutableSet.of('b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', - 'q', 'r', 's', 't', 'u', 'v', 'w', 'x')) { - all24Volumes.add(new VolumeBuilder().type(LOCAL).size(twoTB).device("/dev/sd" + letter).bootDevice(false).durable(false).build()); - } - return new EC2HardwareBuilder(InstanceType.HS1_8XLARGE).hs1() - .ram(117 * 1024) - .processors(ImmutableList.of(new Processor(16.0, 2.1875))) - .volumes(all24Volumes.build()) - .virtualizationType(VirtualizationType.HVM); - } - - /** - * @see InstanceType#R3_LARGE - */ - public static EC2HardwareBuilder r3_large() { - return new EC2HardwareBuilder(InstanceType.R3_LARGE).r3() - .ram(15616) - .processors(ImmutableList.of(new Processor(2.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(32.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#R3_XLARGE - */ - public static EC2HardwareBuilder r3_xlarge() { - return new EC2HardwareBuilder(InstanceType.R3_XLARGE).r3() - .ram(31232) - .processors(ImmutableList.of(new Processor(4.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(80.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#R3_2XLARGE - */ - public static EC2HardwareBuilder r3_2xlarge() { - return new EC2HardwareBuilder(InstanceType.R3_2XLARGE).r3() - .ram(62464) - .processors(ImmutableList.of(new Processor(8.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(160.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#R3_4XLARGE - */ - public static EC2HardwareBuilder r3_4xlarge() { - return new EC2HardwareBuilder(InstanceType.R3_4XLARGE).r3() - .ram(124928) - .processors(ImmutableList.of(new Processor(16.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(320.0f).device("/dev/sdb").bootDevice(false).durable(false).build())); - } - - /** - * @see InstanceType#R3_8XLARGE - */ - public static EC2HardwareBuilder r3_8xlarge() { - return new EC2HardwareBuilder(InstanceType.R3_8XLARGE).r3() - .ram(249856) - .processors(ImmutableList.of(new Processor(32.0, 2.5))) - .volumes(ImmutableList. of( - new VolumeBuilder().type(LOCAL).size(10.0f).device("/dev/sda1").bootDevice(true).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(320.0f).device("/dev/sdb").bootDevice(false).durable(false).build(), - new VolumeBuilder().type(LOCAL).size(320.0f).device("/dev/sdc").bootDevice(false).durable(false).build())); - } - - @SuppressWarnings("unchecked") - @Override - public Hardware build() { - Preconditions.checkNotNull(virtualizationType, "virtualizationType"); - boolean reset = false; - if (this.supportsImage == null) - reset = true; - try { - supportsImage = Predicates. and(rootDeviceType, virtualizationType, imageIds, is64Bit); - return super.build(); - } finally { - if (reset) - this.supportsImage = null; - } - - } - -} http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/7d235954/parent/pom.xml ---------------------------------------------------------------------- diff --git a/parent/pom.xml b/parent/pom.xml index b5dbbeb..6079e35 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -72,7 +72,7 @@ - 1.9.0 + 1.9.1 1.0.7 1.6.6 17.0