github.com/infobloxopen/infoblox-go-client@v1.1.1/README.md (about)

     1  # Infoblox Go Client
     2  
     3  An Infoblox NIOS WAPI client library in Golang.
     4  The library enables us to do a CRUD oprations on NIOS Objects.
     5  
     6  This library is compatible with Go 1.2+
     7  
     8  - [Prerequisites](#Prerequisites)
     9  - [Installation](#Installation)
    10  - [Usage](#Usage)
    11  
    12  ## Build Status
    13  
    14  | Master                                                                                                                                          | Develop                                                                                                                                                           |
    15  | ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    16  | [![Build Status](https://travis-ci.org/infobloxopen/infoblox-go-client.svg?branch=master)](https://travis-ci.org/infobloxopen/infoblox-go-client) | [![Build Status](https://travis-ci.org/infobloxopen/infoblox-go-client.svg?branch=develop)](https://travis-ci.org/infobloxopen/infoblox-go-client) |
    17  
    18  
    19  ## Prerequisites
    20     * Infoblox GRID with 2.5 or above WAPI support
    21     * Go 1.2 or above
    22  
    23  ## Installation
    24     go get github.com/infobloxopen/infoblox-go-client
    25  
    26  ## Usage
    27  
    28     The following is a very simple example for the client usage:
    29  
    30         package main
    31         import (
    32     	    "fmt"
    33     	    ibclient "github.com/infobloxopen/infoblox-go-client"
    34         )
    35  
    36         func main() {
    37     	    hostConfig := ibclient.HostConfig{
    38     		    Host:     "<NIOS grid IP>",
    39     		    Version:  "<WAPI version>",
    40     		    Port:     "PORT",
    41     		    Username: "username",
    42     		    Password: "password",
    43     	    }
    44     	    transportConfig := ibclient.NewTransportConfig("false", 20, 10)
    45     	    requestBuilder := &ibclient.WapiRequestBuilder{}
    46     	    requestor := &ibclient.WapiHttpRequestor{}
    47     	    conn, err := ibclient.NewConnector(hostConfig, transportConfig, requestBuilder, requestor)
    48     	    if err != nil {
    49     		    fmt.Println(err)
    50     	    }
    51     	    defer conn.Logout()
    52     	    objMgr := ibclient.NewObjectManager(conn, "myclient", "")
    53     	    //Fetches grid information
    54     	    fmt.Println(objMgr.GetLicense())
    55         }
    56  
    57  ## Supported NIOS operations
    58  
    59     * AllocateIP
    60     * AllocateNetwork
    61     * CreateARecord
    62     * CreateZoneAuth
    63     * CreateCNAMERecord
    64     * CreateDefaultNetviews
    65     * CreateEADefinition
    66     * CreateHostRecord
    67     * CreateNetwork
    68     * CreateNetworkContainer
    69     * CreateNetworkView
    70     * CreatePTRRecord
    71     * DeleteARecord
    72     * DeleteZoneAuth
    73     * DeleteCNAMERecord
    74     * DeleteFixedAddress
    75     * DeleteHostRecord
    76     * DeleteNetwork
    77     * DeleteNetworkView
    78     * DeletePTRRecord
    79     * GetAllMembers
    80     * GetARecordByRef
    81     * GetCapacityReport
    82     * GetCNAMERecordByRef
    83     * GetEADefinition
    84     * GetFixedAddress
    85     * GetFixedAddressByRef
    86     * GetHostRecord
    87     * GetHostRecordByRef
    88     * GetIpAddressFromHostRecord
    89     * GetNetwork
    90     * GetNetworkContainer
    91     * GetNetworkView
    92     * GetPTRRecordByRef
    93     * GetUpgradeStatus (2.7 or above)
    94     * GetZoneAuthByRef
    95     * ReleaseIP
    96     * UpdateFixedAddress
    97     * UpdateHostRecord
    98     * UpdateNetworkViewEA
    99     * UpdateARecord
   100     * UpdateCNAMERecord
   101  
   102  The newly developed features will be available under `develop` branch. After validation they would be merged to `master`.