Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
highlyunavailable 16de0a909b Remove unused DefaultSemaphoreRetryTime 10 years ago
..
README.md
acl.go
acl_test.go api: run tests in parallel 10 years ago
agent.go Allow specifying a status field in the agent/service/register and agent/check/register endpoints. 10 years ago
agent_test.go Fix tests after merge 10 years ago
api.go Read select environment variables when generating the default configuration 10 years ago
api_test.go api: run tests in parallel 10 years ago
catalog.go Add 'ServiceAddress' field to 'CatalogService's truct 10 years ago
catalog_test.go api: run tests in parallel 10 years ago
event.go
event_test.go api: improve test reliability 10 years ago
health.go
health_test.go api: run tests in parallel 10 years ago
kv.go
kv_test.go api: run tests in parallel 10 years ago
lock.go Reclaim locks 10 years ago
lock_test.go api: run tests in parallel 10 years ago
raw.go api: Refactoring into shared write logic 10 years ago
semaphore.go Remove unused DefaultSemaphoreRetryTime 10 years ago
semaphore_test.go api: run tests in parallel 10 years ago
session.go modify RenewPeriodic to retry failed Renews until TTL elapses 10 years ago
session_test.go api: run tests in parallel 10 years ago
status.go
status_test.go api: run tests in parallel 10 years ago

README.md

Consul API client

This package provides the api package which attempts to provide programmatic access to the full Consul API.

Currently, all of the Consul APIs included in version 0.3 are supported.

Documentation

The full documentation is available on Godoc

Usage

Below is an example of using the Consul client:

// Get a new client, with KV endpoints
client, _ := api.NewClient(api.DefaultConfig())
kv := client.KV()

// PUT a new KV pair
p := &api.KVPair{Key: "foo", Value: []byte("test")}
_, err := kv.Put(p, nil)
if err != nil {
    panic(err)
}

// Lookup the pair
pair, _, err := kv.Get("foo", nil)
if err != nil {
    panic(err)
}
fmt.Printf("KV: %v", pair)