Documentation

Index

Constants

View Source
const (
	Endpoints     = "endpoints"
	PathPrefix    = "path_prefix"
	CoreDNSPath   = "coredns_path"
	ClientCert    = "client_cert"
	ClientCertKey = "client_cert_key"

	EnvEtcdEndpoints     = "MINIO_ETCD_ENDPOINTS"
	EnvEtcdPathPrefix    = "MINIO_ETCD_PATH_PREFIX"
	EnvEtcdCoreDNSPath   = "MINIO_ETCD_COREDNS_PATH"
	EnvEtcdClientCert    = "MINIO_ETCD_CLIENT_CERT"
	EnvEtcdClientCertKey = "MINIO_ETCD_CLIENT_CERT_KEY"
)

    etcd environment values

    Variables

    View Source
    var (
    	DefaultKVS = config.KVS{
    		config.KV{
    			Key:   Endpoints,
    			Value: "",
    		},
    		config.KV{
    			Key:   PathPrefix,
    			Value: "",
    		},
    		config.KV{
    			Key:   CoreDNSPath,
    			Value: "/skydns",
    		},
    		config.KV{
    			Key:   ClientCert,
    			Value: "",
    		},
    		config.KV{
    			Key:   ClientCertKey,
    			Value: "",
    		},
    	}
    )

      DefaultKVS - default KV settings for etcd.

      View Source
      var (
      	Help = config.HelpKVS{
      		config.HelpKV{
      			Key:         Endpoints,
      			Description: `comma separated list of etcd endpoints e.g. "http://localhost:2379"`,
      			Type:        "csv",
      		},
      		config.HelpKV{
      			Key:         PathPrefix,
      			Description: `namespace prefix to isolate tenants e.g. "customer1/"`,
      			Optional:    true,
      			Type:        "path",
      		},
      		config.HelpKV{
      			Key:         CoreDNSPath,
      			Description: `shared bucket DNS records, default is "/skydns"`,
      			Optional:    true,
      			Type:        "path",
      		},
      		config.HelpKV{
      			Key:         ClientCert,
      			Description: `client cert for mTLS authentication`,
      			Optional:    true,
      			Type:        "path",
      		},
      		config.HelpKV{
      			Key:         ClientCertKey,
      			Description: `client cert key for mTLS authentication`,
      			Optional:    true,
      			Type:        "path",
      		},
      		config.HelpKV{
      			Key:         config.Comment,
      			Description: config.DefaultComment,
      			Optional:    true,
      			Type:        "sentence",
      		},
      	}
      )

        etcd config documented in default config

        Functions

        func Enabled

        func Enabled(kvs config.KVS) bool

          Enabled returns if etcd is enabled.

          func New

          func New(cfg Config) (*clientv3.Client, error)

            New - initialize new etcd client.

            Types

            type Config

            type Config struct {
            	Enabled     bool   `json:"enabled"`
            	PathPrefix  string `json:"pathPrefix"`
            	CoreDNSPath string `json:"coreDNSPath"`
            	clientv3.Config
            }

              Config - server etcd config.

              func LookupConfig

              func LookupConfig(kvs config.KVS, rootCAs *x509.CertPool) (Config, error)

                LookupConfig - Initialize new etcd config.

                Source Files