Rebased and pushed to
[master](https://git-wip-us.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=a7dd1933d8ca283e1118b538be8aa2e2ac5e8be7)
and
[1.8.x](https://git-wip-us.apache.org/repos/asf?p=jclouds-labs.git;a=commit;h=4c7c29897a2d4f8160a7f14bc0e4d575ccfec882)
(after fixing the versions
Closed #70.
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#event-184207626
[jclouds-labs-pull-requests
#329](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/329/)
FAILURE
Looks like there's a problem with this pull request
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-59972254
[jclouds » jclouds-labs
#1731](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1731/)
FAILURE
Looks like there's a problem with this pull request
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#330](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/330/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-59974418
[jclouds » jclouds-labs
#1732](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1732/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
@demobox I think all comments are addressed now.
The only remaining bit is the visibility of the maps in the module class, but
the option is to move them to their own class/function, which won't make it
less visible to users. They are already annotated as visible for testing, but
would be
super(uuid, name, resourceUri);
this.meta = meta;
this.owner = owner;
this.rules = rules == null ? new ArrayListFirewallRule() : rules;
+ this.tags = tags == null ? new ArrayListTag() : tags;
If I'm not wrong, this is because a single raw type in an
+ String uuid = 9001b532-857a-405a-8e50-54e342871e77;
+
+ CloudSigma2Api api = requestsSendResponses(
+deleteBuilder()
+ .endpoint(endpoint + fwpolicies/ + uuid + /)
+ .build(),
+responseBuilder()
+
Ok. I've addressed the remaining bits (which are basically the rollback of the
created resources, to make sure we don't leak them if something fails) and sent
a patch to the CloudSigma people. We've working together in this PR, so I hope
they can apply the patch and get it here soon.
---
@demobox I've been discussing with the people at CloudSigma the best approach
to get this pull request merged, and we've agreed to remove for now the
SecurityGroupExtension, and merge this just with the ComputeService.
The extension can be added later, but it presents some design challenges, as
+ .ServerStatus,
NodeMetadata.Statusbuilder().put(ServerStatus.RUNNING,
NodeMetadata.Status.RUNNING)
+ .put(ServerStatus.STARTING, NodeMetadata.Status.PENDING)
+ .put(ServerStatus.STOPPING, NodeMetadata.Status.PENDING)
+ .put(ServerStatus.STOPPED,
[jclouds-labs-pull-requests
#317](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/317/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-59383551
[jclouds » jclouds-labs
#1698](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1698/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#316](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/316/)
FAILURE
Looks like there's a problem with this pull request
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-59307882
[jclouds » jclouds-labs
#1697](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1697/)
FAILURE
Looks like there's a problem with this pull request
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
+
+ @Inject
+ public FirewallRuleToIpPermission(MapFirewallIpProtocol, IpProtocol
firewallIpProtocolToIpProtocol) {
+ this.firewallIpProtocolToIpProtocol =
checkNotNull(firewallIpProtocolToIpProtocol,
+firewallIpProtocolToIpProtocol);
+ }
+
+ @Override
+
+ destinationPort.length());
+ }
+ if (destinationPort.contains(:)) {
+int[] ports = parsePort(destinationPort);
+permissionBuilder.fromPort(ports[0]);
+permissionBuilder.toPort(ports[1]);
+ } else {
+
+
+ @Inject
+ public FirewallRuleToIpPermission(MapFirewallIpProtocol, IpProtocol
firewallIpProtocolToIpProtocol) {
+ this.firewallIpProtocolToIpProtocol =
checkNotNull(firewallIpProtocolToIpProtocol,
+firewallIpProtocolToIpProtocol);
+ }
+
+ @Override
+
+ destinationPort.length());
+ }
+ if (destinationPort.contains(:)) {
+int[] ports = parsePort(destinationPort);
+permissionBuilder.fromPort(ports[0]);
+permissionBuilder.toPort(ports[1]);
+ } else {
+
[jclouds » jclouds-labs
#1592](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1592/)
FAILURE
Looks like there's a problem with this pull request
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#284](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/284/)
FAILURE
Looks like there's a problem with this pull request
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57895958
+ this.driveCloned = checkNotNull(driveCloned, driveCloned);
+ this.serverStopped = checkNotNull(serverStopped, serverStopped);
+ this.destroyDrives = destroyDrives;
+ this.groupNamingConvention = checkNotNull(groupNamingConvention,
groupNamingConvention).create();
+ }
super(uuid, name, resourceUri);
this.meta = meta;
this.owner = owner;
this.rules = rules == null ? new ArrayListFirewallRule() : rules;
+ this.tags = tags == null ? new ArrayListTag() : tags;
@nacx, @demobox: hmm, it fails for me
this.rules = rules ==
super(uuid, name, resourceUri);
this.meta = meta;
this.owner = owner;
this.rules = rules == null ? new ArrayListFirewallRule() : rules;
+ this.tags = tags == null ? new ArrayListTag() : tags;
I guess it's due to how Java determines types. I think it's better
+ }).to(FirewallRuleToIpPermission.class);
+
+ bind(TemplateOptions.class).to(CloudSigma2TemplateOptions.class);
+
bind(TemplateOptionsToStatement.class).to(TemplateOptionsToStatementWithoutPublicKey.class);
+
+ bind(new TypeLiteralSecurityGroupExtension() {
+
[jclouds » jclouds-labs
#1580](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1580/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
+permissionBuilder.toPort(Integer.parseInt(destinationPort));
+ }
+ }
+ permissionBuilder.ipProtocol(input.getIpProtocol() != null ?
firewallIpProtocolToIpProtocol.get(input
+.getIpProtocol()) : IpProtocol.UNRECOGNIZED);
+ if
[jclouds-labs-pull-requests
#279](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/279/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57722477
+ private final CloudSigma2Api api;
+
+ @Inject
+ public ServerDriveToVolume(CloudSigma2Api api) {
+ this.api = checkNotNull(api, api);
+ }
+
+ @Override
+ public Volume apply(ServerDrive serverDrive) {
+ VolumeBuilder builder = new VolumeBuilder();
+
+ this.driveCloned = checkNotNull(driveCloned, driveCloned);
+ this.serverStopped = checkNotNull(serverStopped, serverStopped);
+ this.destroyDrives = destroyDrives;
+ this.groupNamingConvention = checkNotNull(groupNamingConvention,
groupNamingConvention).create();
+ }
[jclouds » jclouds-labs
#1581](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1581/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#280](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/280/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57726723
[jclouds-labs-pull-requests
#281](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/281/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57727284
[jclouds-labs-pull-requests
#282](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/282/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57728566
[jclouds » jclouds-labs
#1582](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1582/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#283](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/283/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-57729186
[jclouds » jclouds-labs
#1583](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1583/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds » jclouds-labs
#1584](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1584/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
+
firewallRuleBuilder.ipProtocol(ipProtocolToFirewallIpProtocol.get(protocol));
+ }
+ firewallRules.add(firewallRuleBuilder.build());
+ }
+
+ firewallPolicy = api.editFirewallPolicy(firewallPolicy.getUuid(),
+
+import org.jclouds.scriptbuilder.domain.StatementList;
+import org.jclouds.scriptbuilder.statements.ssh.InstallRSAPrivateKey;
+import org.jclouds.ssh.SshKeys;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+import static org.testng.Assert.assertEquals;
+import static
@@ -50,12 +54,10 @@ protected CloudSigma2ApiMetadata(Builder builder) {
public static Properties defaultProperties() {
Properties properties = BaseHttpApiMetadata.defaultProperties();
- properties.setProperty(CloudSigma2Properties.PROPERTY_VNC_PASSWORD,
IL9vs34d);
-
+import org.jclouds.scriptbuilder.domain.StatementList;
+import org.jclouds.scriptbuilder.statements.ssh.InstallRSAPrivateKey;
+import org.jclouds.ssh.SshKeys;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+import static org.testng.Assert.assertEquals;
+import static
@@ -50,12 +54,10 @@ protected CloudSigma2ApiMetadata(Builder builder) {
public static Properties defaultProperties() {
Properties properties = BaseHttpApiMetadata.defaultProperties();
- properties.setProperty(CloudSigma2Properties.PROPERTY_VNC_PASSWORD,
IL9vs34d);
-
+
Template template) {
+ CloudSigma2TemplateOptions options =
template.getOptions().as(CloudSigma2TemplateOptions.class);
+ Image image = template.getImage();
+ Hardware hardware =
+import org.jclouds.scriptbuilder.domain.StatementList;
+import org.jclouds.scriptbuilder.statements.ssh.InstallRSAPrivateKey;
+import org.jclouds.ssh.SshKeys;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+import static org.testng.Assert.assertEquals;
+import static
@@ -50,12 +54,10 @@ protected CloudSigma2ApiMetadata(Builder builder) {
public static Properties defaultProperties() {
Properties properties = BaseHttpApiMetadata.defaultProperties();
- properties.setProperty(CloudSigma2Properties.PROPERTY_VNC_PASSWORD,
IL9vs34d);
-
+import org.jclouds.scriptbuilder.domain.StatementList;
+import org.jclouds.scriptbuilder.statements.ssh.InstallRSAPrivateKey;
+import org.jclouds.ssh.SshKeys;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+import static org.testng.Assert.assertEquals;
+import static
+
Template template) {
+ CloudSigma2TemplateOptions options =
template.getOptions().as(CloudSigma2TemplateOptions.class);
+ Image image = template.getImage();
+ Hardware hardware =
It looks that there are some [checkstyle
violations](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/254/org.apache.jclouds.labs$cloudsigma2/violations/)
that are making the build to fail. Could you fix them?
You'll find the details, if the Jenkins ones are not enough, in the
+ * (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
@@ -574,6 +578,17 @@ void
startServerInSeparateAvailabilityGroup(@PathParam(uuid) String uuid,
PaginatedCollectionFirewallPolicy
listFirewallPoliciesInfo(PaginationOptions options);
/**
+* Gets a detailed list of firewall policy
[minor] Does this get a _list_ or simply a
@@ -50,12 +54,10 @@ protected CloudSigma2ApiMetadata(Builder builder) {
public static Properties defaultProperties() {
Properties properties = BaseHttpApiMetadata.defaultProperties();
- properties.setProperty(CloudSigma2Properties.PROPERTY_VNC_PASSWORD,
IL9vs34d);
-
+ }).to(FirewallRuleToIpPermission.class);
+
+ bind(TemplateOptions.class).to(CloudSigma2TemplateOptions.class);
+
bind(TemplateOptionsToStatement.class).to(TemplateOptionsToStatementWithoutPublicKey.class);
+
+ bind(new TypeLiteralSecurityGroupExtension() {
+
+ .ServerStatus,
NodeMetadata.Statusbuilder().put(ServerStatus.RUNNING,
NodeMetadata.Status.RUNNING)
+ .put(ServerStatus.STARTING, NodeMetadata.Status.PENDING)
+ .put(ServerStatus.STOPPING, NodeMetadata.Status.PENDING)
+ .put(ServerStatus.STOPPED,
+ }
+
+ @VisibleForTesting
+ public static final MapDriveStatus, Image.Status
driveStatusToImageStatus = ImmutableMap
+ .DriveStatus, Image.Statusbuilder().put(DriveStatus.MOUNTED,
Image.Status.AVAILABLE)
+ .put(DriveStatus.UNMOUNTED,
+ @Override
+ public SecurityGroup getSecurityGroupById(String id) {
+ return firewallPolicyToSecurityGroup.apply(api.getFirewallPolicy(id));
+ }
+
+ @Override
+ public SecurityGroup createSecurityGroup(String name, Location location) {
+ FirewallPolicy firewallPolicy =
+
+ @Override
+ public boolean removeSecurityGroup(String id) {
+ FirewallPolicy firewallPolicy = api.getFirewallPolicy(id);
+ if (firewallPolicy == null) {
+ throw new IllegalArgumentException(There is no SecurityGroup with
+ id + id);
+ }
+
+ if
+
firewallRuleBuilder.ipProtocol(ipProtocolToFirewallIpProtocol.get(protocol));
+ }
+ firewallRules.add(firewallRuleBuilder.build());
+ }
+
+ firewallPolicy = api.editFirewallPolicy(firewallPolicy.getUuid(),
+
+
+ @Override
+ public IpPermission apply(FirewallRule input) {
+ IpPermission.Builder permissionBuilder = new IpPermission.Builder();
+ String destinationPort = input.getDestinationPort();
+ if (destinationPort != null) {
+ if (destinationPort.contains(!)) {
+
+@Singleton
+public class FirewallRuleToIpPermission implements FunctionFirewallRule,
IpPermission {
+
+ private final MapFirewallIpProtocol, IpProtocol
firewallIpProtocolToIpProtocol;
+
+ @Inject
+ public FirewallRuleToIpPermission(MapFirewallIpProtocol, IpProtocol
+permissionBuilder.toPort(Integer.parseInt(destinationPort));
+ }
+ }
+ permissionBuilder.ipProtocol(input.getIpProtocol() != null ?
firewallIpProtocolToIpProtocol.get(input
+.getIpProtocol()) : IpProtocol.UNRECOGNIZED);
+ if
+ private final CloudSigma2Api api;
+
+ @Inject
+ public ServerDriveToVolume(CloudSigma2Api api) {
+ this.api = checkNotNull(api, api);
+ }
+
+ @Override
+ public Volume apply(ServerDrive serverDrive) {
+ VolumeBuilder builder = new VolumeBuilder();
+
+public class TemplateOptionsToStatementWithoutPublicKey extends
TemplateOptionsToStatement {
+
+ @Override
+ public Statement apply(TemplateOptions options) {
+ ImmutableList.BuilderStatement builder = ImmutableList.builder();
+ if (options.getRunScript() != null) {
+
+ if (options.getRunScript() != null) {
+ builder.add(options.getRunScript());
+ }
+ if (options.getPrivateKey() != null) {
+ builder.add(new InstallRSAPrivateKey(options.getPrivateKey()));
+ }
+
+ ImmutableListStatement bootstrap = builder.build();
+ this.driveCloned = checkNotNull(driveCloned, driveCloned);
+ this.serverStopped = checkNotNull(serverStopped, serverStopped);
+ this.destroyDrives = destroyDrives;
+ this.groupNamingConvention = checkNotNull(groupNamingConvention,
groupNamingConvention).create();
+ }
+
Template template) {
+ CloudSigma2TemplateOptions options =
template.getOptions().as(CloudSigma2TemplateOptions.class);
+ Image image = template.getImage();
+ Hardware hardware =
+ .cpu((int) hardware.getProcessors().get(0).getSpeed())
+
.memory(BigInteger.valueOf(hardware.getRam()).multiply(BigInteger.valueOf(1024
* 1024)))
+ .drives(ImmutableList.of(drive.toServerDrive(1, 0:1,
options.getDeviceEmulationType(
+
+ if (serverInfo != null) {
+logger.debug( rolling back the server...);
+api.deleteServer(serverInfo.getUuid());
+ }
+ if (destroyDrives) {
+logger.debug( rolling back the cloned drive...);
+
+ private ListTag configureTags(CloudSigma2TemplateOptions options) {
+ ImmutableList.BuilderTag builder = ImmutableList.builder();
+ for (String tagName : options.getTags()) {
+ String nameWithPrefix =
groupNamingConvention.sharedNameForGroup(tagName);
+
*/
public static final String PROPERTY_VNC_PASSWORD =
jclouds.cloudsigma.vnc-password;
-
+
+ /**
+* Time in milliseconds to wait for a drive to be cloned
+* Default: 6
+*/
+ public static final String TIMEOUT_DRIVE_CLONED =
super(uuid, name, resourceUri);
this.meta = meta;
this.owner = owner;
this.rules = rules == null ? new ArrayListFirewallRule() : rules;
+ this.tags = tags == null ? new ArrayListTag() : tags;
We're on Java 7, so use the diamond operator here?
---
Reply to
@@ -163,6 +185,13 @@ public URI getResourceUri() {
}
/**
+* @return Many related resources. Can be either a list of URIs or list
of individually nested resource data.
Confusing comment? This returns tags set on the instance, or not..?
---
Reply to this email directly or view
+ String uuid = 9001b532-857a-405a-8e50-54e342871e77;
+
+ CloudSigma2Api api = requestsSendResponses(
+deleteBuilder()
+ .endpoint(endpoint + fwpolicies/ + uuid + /)
+ .build(),
+responseBuilder()
+
@@ -460,7 +508,7 @@ public void testEditIP() throws Exception {
.meta(meta)
.build();
- if (api.listIPs().size() 0) {
+ if (api.listIPs().concat().size() 0) {
See above comment
---
Reply to this email directly or view it on GitHub:
@@ -429,7 +477,7 @@ public void testEditVLAN() throws Exception {
.meta(meta)
.build();
- if (api.listVLANs().size() 0) {
+ if (api.listVLANs().concat().size() 0) {
Can we check this using `isEmpty` instead?
---
Reply to this email directly or view
+import org.jclouds.scriptbuilder.domain.StatementList;
+import org.jclouds.scriptbuilder.statements.ssh.InstallRSAPrivateKey;
+import org.jclouds.ssh.SshKeys;
+import org.testng.annotations.Test;
+
+import java.util.Map;
+
+import static org.testng.Assert.assertEquals;
+import static
+
+import static com.google.common.base.Preconditions.checkNotNull;
+
+@Singleton
+public class FirewallRuleToIpPermission implements FunctionFirewallRule,
IpPermission {
+
+ private final MapFirewallIpProtocol, IpProtocol
firewallIpProtocolToIpProtocol;
+
+ @Inject
+ public
@nacx Issue with `testAddIpPermission` should be addressed now.
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-56286616
[jclouds-labs-pull-requests
#254](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/254/)
FAILURE
Looks like there's a problem with this pull request
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-56286770
Code LGTM. I've rebased the branch to the latest master and fixed a couple
minor checkstyle violations, but there are 2 failures in the live tests (and 5
tests skipped as a consequence). Could you have a look to them?
/cc @shevchenator
```bash
@nacx / @demobox Please take a look at this. We have customer waiting for this.
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-55882697
Is there anything holding this back, @nacx?
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-55107533
I just want someone else to have a look at the changes. @demobox could you have
a look a this?
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-55111328
* Added the ComputeService implementation
* Added the SecurityGroup extension
* Added the San Jose region
You can merge this Pull Request by running:
git pull https://github.com/cloudsigma/jclouds-labs
cloudsigma2-compute-service-rebased
Or you can view, comment on it, or merge it online at:
[jclouds » jclouds-labs
#1465](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs/1465/)
SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)
---
Reply to this email directly or view it on GitHub:
[jclouds-labs-pull-requests
#235](https://jclouds.ci.cloudbees.com/job/jclouds-labs-pull-requests/235/)
SUCCESS
This pull request looks good
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-53927338
This PR basically adds the missing compute stuff so the `cloudsigma2` provider
can be used with the jclouds portable interface. This provider should be the
replacement for the one in the main repo once the v1 is deprecated.
I've assisted a bit in the development, and I can say the compute
@POST
@Path(/servers/{uuid}/action/?do=start)
- @Fallback(Fallbacks.NullOnNotFoundOr404.class)
+ @Fallback(Fallbacks.VoidOnNotFoundOr404.class)
There has been [a recent
discussion](https://github.com/jclouds/jclouds-labs-openstack/pull/135/files#r16700137)
about the convenience
@POST
@Path(/servers/{uuid}/action/?do=start)
- @Fallback(Fallbacks.NullOnNotFoundOr404.class)
+ @Fallback(Fallbacks.VoidOnNotFoundOr404.class)
Could add an issue for this at
https://github.com/GreatFruitOmsk/jclouds-labs/issues ?
---
Reply to this email directly or view it on
This PR fixes: https://issues.apache.org/jira/browse/JCLOUDS-292
---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/70#issuecomment-53936749
@POST
@Path(/servers/{uuid}/action/?do=start)
- @Fallback(Fallbacks.NullOnNotFoundOr404.class)
+ @Fallback(Fallbacks.VoidOnNotFoundOr404.class)
Let's better use the jclouds JIRA to track this. I've just opened
[JCLOUDS-690](https://issues.apache.org/jira/browse/JCLOUDS-690).
---
92 matches
Mail list logo