You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by "Ignasi Barrera (JIRA)" <ji...@apache.org> on 2014/06/03 23:01:02 UTC

[jira] [Comment Edited] (JCLOUDS-581) Method calls "startNodesMatching" and "stopNodesMatching" added to BaseComputeService

    [ https://issues.apache.org/jira/browse/JCLOUDS-581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14017143#comment-14017143 ] 

Ignasi Barrera edited comment on JCLOUDS-581 at 6/3/14 8:59 PM:
----------------------------------------------------------------

The portable {{ComputeService}} does not provide a {{start}} or {{stop}} operation. Instead, the available operations are [suspendNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L203-L229] and [resumeNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L178-L201].

jclouds maps the different provider specific states of the nodes to the portable [NodeMetadata#Status|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/domain/NodeMetadata.java#L34-L60] ones, and the operations the {{ComputeService}} exposes follow the semantics of these states. Each provider implements those methods according to the provider specific capabilities, so in some providers a "suspend" operation might be a real "stop" operation in the provider api, or a "pause", etc. It is up to the provider to provide the particular implementation.

In favor of portability, the ComputeService exposes only those two calls, tied to the semantics of the portable status enum. Aren't those enough for your use case?


was (Author: nacx):
The portable {{ComputeService}} does not provide a {{start}} or {{stop}} operation. Instead, the available operations are [suspendNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L203-L229] and [resumeNode|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/ComputeService.java#L178-L201].

jclouds maps the different provider specific states of the nodes to the portable [NodeMetadata#Status|https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/domain/NodeMetadata.java#L34-L60] ones, and the operations the {{ComputeService}} exposes follow the semantics of these states. Each provider implements those methods according to the provider specific capabilities, so in some providers a "suspend" operation might be a real "stop" operation in the provider api, or a "pause", etc. It is up to the provider to provide the particular implementation.

In favor of portability, the ComputeService exposes those two calls. Aren't those enough for your use case?

> Method calls "startNodesMatching" and "stopNodesMatching" added to BaseComputeService
> -------------------------------------------------------------------------------------
>
>                 Key: JCLOUDS-581
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-581
>             Project: jclouds
>          Issue Type: New Feature
>          Components: jclouds-compute
>    Affects Versions: 1.7.3
>            Reporter: Christopher Dancy
>              Labels: BaseComputeService, startNodesMatching, stopNodesMatching
>
> Addition of methods "startNodesMatching" and "stopNodesMatching" added to BaseComputeService. We are coding this very thing on our end for openstack/rackspace but seems a fairly common enough thing that all providers and/or users of jclouds could take advantage of.



--
This message was sent by Atlassian JIRA
(v6.2#6252)