Consul
Consul Namespace Write
Command: consul namespace write
Enterprise
This feature requires Consul Enterprise(opens in new tab).
This namespace write command creates or updates a namespace's configuration from its full definition. This was added in Consul Enterprise 1.7.0.
Usage
Usage: consul namespace write <namespace definition>
The <namespace definition> must either be a file path or - to indicate that
the definition should be read from stdin. The definition can be in either JSON
or HCL format. See here for a description of the namespace definition.
API Options
- -ca-file=<value>- Path to a CA file to use for TLS when communicating with Consul. This can also be specified via the- CONSUL_CACERTenvironment variable.
- -ca-path=<value>- Path to a directory of CA certificates to use for TLS when communicating with Consul. This can also be specified via the- CONSUL_CAPATHenvironment variable.
- -client-cert=<value>- Path to a client cert file to use for TLS when- verify_incomingis enabled. This can also be specified via the- CONSUL_CLIENT_CERTenvironment variable.
- -client-key=<value>- Path to a client key file to use for TLS when- verify_incomingis enabled. This can also be specified via the- CONSUL_CLIENT_KEYenvironment variable.
- -http-addr=<addr>- Address of the Consul agent with the port. This can be an IP address or DNS address, but it must include the port. This can also be specified via the- CONSUL_HTTP_ADDRenvironment variable. In Consul 0.8 and later, the default value is http://127.0.0.1:8500, and https can optionally be used instead. The scheme can also be set to HTTPS by setting the environment variable- CONSUL_HTTP_SSL=true. This may be a unix domain socket using- unix:///path/to/socketif the agent is configured to listen that way.
- -tls-server-name=<value>- The server name to use as the SNI host when connecting via TLS. This can also be specified via the- CONSUL_TLS_SERVER_NAMEenvironment variable.
- -token=<value>- ACL token to use in the request. This can also be specified via the- CONSUL_HTTP_TOKENenvironment variable. If unspecified, the query will default to the token of the Consul agent at the HTTP address.
- -token-file=<value>- File containing the ACL token to use in the request instead of one specified via the- -tokenargument or- CONSUL_HTTP_TOKENenvironment variable. This can also be specified via the- CONSUL_HTTP_TOKEN_FILEenvironment variable.
- -datacenter=<name>- Name of the datacenter to query. If unspecified, the query will default to the datacenter of the Consul agent at the HTTP address.
- -stale- Permit any Consul server (non-leader) to respond to this request. This allows for lower latency and higher throughput, but can result in stale data. This option has no effect on non-read operations. The default value is false.
Command Options
- -format=<string>- How to output the results. The choices are: pretty or json
- -meta- Indicates that namespace metadata such as the raft indices should be shown for the namespace
Examples
Create a new Namespace:
$ consul namespace write - <<< 'Name = "team-1"'
Name: team-1
Description:
Showing Raft Metadata:
$ consul namespace write -meta - <<< 'Name = "team-1"'
Name: team-1
Description:
Create Index: 339
Modify Index: 344
JSON Format:
$ cat ns.hcl
Name = "foo"
Description = "Example Namespace"
Meta {
   team-id = "574407f3-8b26-4c84-8e51-028bb8cbdd37"
}
$ consul namespace write -format=json ns.hcl
{
   "Name": "foo",
   "Description": "Example Namespace",
   "Meta": {
      "team-id": "574407f3-8b26-4c84-8e51-028bb8cbdd37"
   },
   "CreateIndex": 352,
   "ModifyIndex": 352
}