GitHub user supertom opened a pull request:

    https://github.com/apache/libcloud/pull/842

    [GCE] Support Managed Instance Groups

    ## [GCE] Support for Managed Instance Groups
    
    ### Description
    
    This PR aims to add support for Instance Groups on GCE.
    
    The following methods have been added (with supporting classes).
    
    * gce.ex_get_instancetemplate(template)
    * gce.ex_list_instancetemplates()
    * gce.ex_get_instancegroupmgr(name, zone)
    * gce.ex_list_instancegroupmgrs()
    * gce.ex_create_instancegroupmgr(name, zone, template, size)
    * gce.ex_destroy_instancegroupmgr(instance_group)
    
    Tests and fixtures have also been added.
    
    #### Useful Links
    * [Creating Groups of Instances on 
GCE](https://cloud.google.com/compute/docs/instance-groups)
    * [API 
docs](https://cloud.google.com/compute/docs/reference/latest/instanceGroupManagers)
    
    ### Example Usage
    ```
    print gce.ex_list_instancetemplates()
    print gce.ex_list_instancegroupmgrs()
    
    # Create an Instance Group
    ig_name = 'my-instance-group-foo7'
    ig_zone = 'us-central1-c'
    it_name = 'my-instance-template-1'
    
    template = gce.ex_get_instancetemplate(it_name)
    instance_group = gce.ex_create_instancegroupmgr(ig_name, ig_zone, template, 
5, 'base-foo', "my description")
    print instance_group
    # Delete the Instance Group.  VMs are also deleted.
    deleted = gce.ex_destroy_instancegroupmgr(instance_group)
    print deleted # returns True
    ```
    
    
    
    ### Status
    - work in progress
    
    ### Checklist (tick everything that applies)
    
    - [X] [Code 
linting](http://libcloud.readthedocs.org/en/latest/development.html#code-style-guide)
 (required, can be done after the PR checks)
    - [X] Documentation
    - [X] [Tests](http://libcloud.readthedocs.org/en/latest/testing.html)
    - [ ] 
[ICLA](http://libcloud.readthedocs.org/en/latest/development.html#contributing-bigger-changes)
 (required for bigger changes)
    


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/supertom/libcloud 
libcloud_gce-group-instance-support

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/libcloud/pull/842.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #842
    
----
commit c18e55d3b72ee037d1c5c37a15a2a5603711a5ef
Author: Tom Melendez <[email protected]>
Date:   2016-07-19T23:57:48Z

    Prelimary support (create, delete, list and get) for Managed Instance 
Groups in libcloud.
    
    The following methods have been added (with supporting classes).
    
    * gce.ex_get_instancetemplate(template)
    * gce.ex_list_instancetemplates()
    * gce.ex_get_instancegroupmgr(name, zone)
    * gce.ex_list_instancegroupmgrs()
    * gce.ex_create_instancegroupmgr(name, zone, template, size)
    * gce.ex_destroy_instancegroupmgr(instance_group)
    
    Tests and fixtures have also been added.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to