Commit Graph

1024 Commits

Author SHA1 Message Date
Diptanu Choudhury 0a9a3918d6 Not reset-ing the list of pids if they don't change 2016-06-11 01:19:50 +02:00
Diptanu Choudhury 01054db4fa Calculating total ticks consumed in the nomad client 2016-06-10 23:14:33 +02:00
Diptanu Choudhury d9d5a95160 Using humanize to convert memory usage to MB 2016-06-10 22:24:33 +02:00
Diptanu Choudhury 2d3798b076 Calculating the cpu ticks in nomad client 2016-06-10 22:22:32 +02:00
Sean Chittenden d99467ef5e
Always create a consul.Syncer. Use a default Consul Config if necessary. 2016-06-10 15:55:27 -04:00
Sean Chittenden f6a0459ae5
Always create a consul.Syncer. Use a default Consul Config if necessary. 2016-06-10 15:55:27 -04:00
Sean Chittenden e69232dd73
Commit miss, bump to 5s 2016-06-10 15:54:39 -04:00
Sean Chittenden 26b1e826d7
golint(1) police 2016-06-10 15:54:39 -04:00
Sean Chittenden c92306f020
Stash client and server registration behind consul.auto_register 2016-06-10 15:54:39 -04:00
Sean Chittenden 68aebff84d
Only return the Client's server addresses, never mix-in server peers 2016-06-10 15:54:39 -04:00
Sean Chittenden 447fe59fd2
Hand wave over the syncer tests atm, these will be fixed shortly. 2016-06-10 15:54:39 -04:00
Sean Chittenden fa7285cb5b
Don't spam the consul if Consul is not available.
Log once when Consul goes away, and log when Consul comes back.
2016-06-10 15:54:39 -04:00
Sean Chittenden a1a0c313de
Skip nil check for agent's consulSyncer is always not nil 2016-06-10 15:54:39 -04:00
Sean Chittenden a2109af862
Properly cover Syncer attributes with the registryLock.
trackedServices, delegateChecks, trackedChecks, and checkRunners
should all be covered.  This lock needs to be reasonably narrow and
can't use defer due to possible recursive locking concerns further
downstream from the call sites.
2016-06-10 15:54:39 -04:00
Sean Chittenden f9b561b52f
On Syncer Shutdown, remove all services that match a Syncer's prefix. 2016-06-10 15:54:39 -04:00
Sean Chittenden 57e084e4df
Sync checks with Consul by comparing the AgentCheckReg w/ ConsulService
The source of truth is the local Nomad Agent.  Any checks are not local that
have a matching prefix are removed.  Changed checks are re-registered
and missing checks are re-added.
2016-06-10 15:54:39 -04:00
Sean Chittenden 197feae679
Sync services with Consul by comparing the AgentServiceReg w/ ConsulService
The source of truth is the local Nomad Agent.  Any services not local that
have a matching prefix are removed.  Changed services are re-registered
and missing services are re-added.
2016-06-10 15:54:39 -04:00
Sean Chittenden 9a223936bb
Generate and sync Consul ServiceIDs consistently 2016-06-10 15:54:39 -04:00
Sean Chittenden bcad11cc2a
Rename runChecks to consulAvailable
Apologies in advance for the variable thrash, the fingerprinter is
no longer used to gate whether or not Consul is available any more.
2016-06-10 15:54:39 -04:00
Sean Chittenden efe00d2ccd
Update Syncer.Run() to call SyncServices(). 2016-06-10 15:54:39 -04:00
Sean Chittenden 83775c5c8b
Add "Service Groups" to the Syncer.
Now the right way to register services with the Syncer is to call
`SetServices(groupName, []*services)`.  This was required to allow
the Syncer to sync either the Client, Server, or Both using a
single Syncer.
2016-06-10 15:54:39 -04:00
Sean Chittenden c54539b860
Initialize Consul for the Nomad Agent in a more uniform way.
Decompose Client and Server registration into `setupClient()` and
`setupServer()`, respectively.
2016-06-10 15:54:39 -04:00
Sean Chittenden 06e5e615a8
Rename command/agent/consul/sync.go to syncer.go 2016-06-10 15:54:39 -04:00
Sean Chittenden d307ca2c28
Begin leveraging the Agent-level consul.Syncer 2016-06-10 15:54:39 -04:00
Sean Chittenden 7956eb0c80
Rename structs.Task's `Service` attribute to `ConsulService` 2016-06-10 15:54:39 -04:00
Sean Chittenden 05a2b9528c
Remove Syncer.registerService()
This call is obsolete by a future commit that changes the canonical
source of truth to be consul.AgentServiceRegistration structs, which
means it is not necessary to construct AgentServiceRegistration
objects every time a registration is made, we just reuse the existing
object.
2016-06-10 15:54:39 -04:00
Sean Chittenden 8c813630e6
Move package client/consul/sync to command/agent/consul.
This has been done to allow the Server and Client to reuse the same
Syncer because the Agent may be running Client, Server, or both
simultaneously and we only want one Syncer object alive in the agent.
2016-06-10 15:54:39 -04:00
Sean Chittenden 6b126ce488
Change the API signature of Syncer.SyncServices().
SyncServices() immediately attempts to sync whatever information
the process has with Consul.  Previously this method would take an
argument of the exclusive list of services that should exist,
however this is not condusive to having a Nomad Client and Nomad
Server share the same consul.Syncer.
2016-06-10 15:54:39 -04:00
Sean Chittenden e24de53ead
Refine Nomad's Consul `port` handling.
Previously this would immediately default to '127.0.0.1' if the
config was set to `:some-port-number`.  Now it uses the BindAddr
if available.  Also, if the `port` option is set to just a port`
number (e.g. '1234'), attempt to parse the port number by itself
to allow statically configured ports to work, even when no host is
specified.
2016-06-10 15:54:39 -04:00
Sean Chittenden 555f4fe135
Change client/consul.NewSyncer() to accept a shutdown channel
In addition to the API changing, consul.Syncer can now be signaled
to shutdown via the Shutdown() method, which will call the Run()'ing
sync task to exit gracefully.
2016-06-10 15:54:39 -04:00
Sean Chittenden e2a561204a
Fix typo in comment 2016-06-10 15:50:11 -04:00
Sean Chittenden f671dac6cc
Fix test TestClientConfigCommand_UpdateServers()
Now that hostnames are validated on input, switch to IPs since they
bypass DNS resolution.
2016-06-10 15:50:11 -04:00
Sean Chittenden b199743b8a
Add some trace-level logging for /v1/agent/servers when writing
This endpoint shouldn't be hit often, but this could be useful in
logs down the road.
2016-06-10 15:50:11 -04:00
Sean Chittenden 07fa89d2a5
Fix config_parse_test to reflect that `consul.addr` does not exist.
`consul.address` does, but not `consul.addr`.
2016-06-10 15:50:11 -04:00
Sean Chittenden 7fe1944bc5
Fix tests for client.TestAgent_ServerConfig
Add similar logic in Agent `serverConfig()` to set up the
`serverSerfAddr` the same as `serverHttpAddr` and `serverRpcAddr`.
2016-06-10 15:50:11 -04:00
Sean Chittenden 39fb0f2469
Change the endpoint for `/v1/agent/servers` and fix tests.
When an agent is running a server, the list of servers includes the
Raft peers.  When the agent is running a client (which is always the
case?), include a list of the servers found in the Client's RpcProxy.
Dedupe and provide a unique list back to the caller.
2016-06-10 15:50:11 -04:00
Sean Chittenden cb80e93a6b
Move client.DefaultConfig() to client/config.DefaultConfig()
Resolves an import cycle in testing and is more appropriate because
the default should reside next to its struct definition.
2016-06-10 15:50:11 -04:00
Sean Chittenden b3fd455b1f
Register the serf service with the Nomad server service.
This will be unused in this PR.
2016-06-10 15:50:11 -04:00
Sean Chittenden 82d537fbd9
Update the `nomad_server_service` default from `nomad-server` to just `nomad`. 2016-06-10 15:50:11 -04:00
Sean Chittenden 7c3838373b
Create a weak decoder to parse time.Duration.
Hat tip to Alex for pointing this out (vs patching mapstructure)
2016-06-10 15:50:11 -04:00
Sean Chittenden 6cd01d7567
Nuke a.consulConfig in favor of a.consul.Config 2016-06-10 15:50:11 -04:00
Sean Chittenden 1fe979a5e4
Remove types.ShutdownChannel and replace with `chan struct{}` 2016-06-10 15:50:11 -04:00
Sean Chittenden 9fb0104def
Teach Client to reuse an Agent's consulSyncer.
"There can be only one."
2016-06-10 15:50:11 -04:00
Sean Chittenden 47891fb559
Register two services each for clients and servers, http and rpc.
In order to give clients a fighting chance to talk to the right port,
differentiate RPC services from HTTP services by registering two
services with different tags.  This yields
`rpc.nomad-server.service.consul` and
`http.nomad-server.service.consul` which is immensely more useful to
clients attempting to bootstrap their world.
2016-06-10 15:50:11 -04:00
Sean Chittenden ac7881226c
Advertise the server's RPC endpoint, not its HTTP endpoint.
Rename c.serverRpcAddr to serverRpcAddr.  This will be broken out
into in additional set of services in a subsequent commit.
2016-06-10 15:50:11 -04:00
Sean Chittenden 410d85cc78
Rename the package from `client/rpc_proxy` to `client/rpcproxy`
Also rename `NewRpcProxy()` to just `New()` to avoid package stutter.
2016-06-10 15:50:11 -04:00
Sean Chittenden 10d1b6ba9b
Reduce all forms of ConsulConfig down to a single struct
nomad/structs/config/consul.go's ConsulConfig is the canonical definition
for all things Consul now.
2016-06-10 15:50:11 -04:00
Sean Chittenden 520fcb99de
Rename consulConfig to consulAgentConfig 2016-06-10 15:50:11 -04:00
Sean Chittenden e6c78274c8
Rename client/config/config's ConsulConfig to ConsulAgentConfig
A follow up commit to the previous rename.  More to come.
2016-06-10 15:50:11 -04:00
Sean Chittenden e727fd8c3c
Centralize the creation of a consul/api.Config struct.
While documented, the consul.timeout parameter wasn't ever set
except one-off in the Consul fingerprinter.
2016-06-10 15:50:11 -04:00
Sean Chittenden f695d6d70d
Reconcile consul's address configuration section.
There were conflicting directives previously, both consul.addr and
consul.address were required to achieve the desired behavior.  The
documentation said `consul.address` was the canonical name for the
parameter, so consolidate configuration parameters to `consul.address`.
2016-06-10 15:50:11 -04:00
Sean Chittenden bd779c3719
Reconcile renamed structures during rebase 2016-06-10 15:50:11 -04:00
Sean Chittenden 882364f4d9
An Agent's consulSyncer is always not nil now. 2016-06-10 15:50:11 -04:00
Sean Chittenden 98cea9ba07
Revise Agent.syncAgentServicesWithConsul()'s interface
Reduce down to its lowest common helper function denominator.
2016-06-10 15:50:11 -04:00
Sean Chittenden b5c70f3729
Alpha sort config keys for Consul 2016-06-10 15:50:11 -04:00
Sean Chittenden d1442dc317
Reduce all forms of ConsulConfig down to a single struct
nomad/structs/config/consul.go's ConsulConfig is the canonical definition
for all things Consul now.
2016-06-10 15:50:11 -04:00
Sean Chittenden e60580b279
Define a type for the PeriodicCallback handlers and ShutdownChannel 2016-06-10 15:50:11 -04:00
Sean Chittenden 17116fc5a7
Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
2016-06-10 15:50:11 -04:00
Sean Chittenden 88f3422d7c
Rename NewConsulService to NewSyncer 2016-06-10 15:49:37 -04:00
Sean Chittenden b9789e0cf7
Rename client/consul/sync.PeriodicSync to Run 2016-06-10 15:49:37 -04:00
Sean Chittenden 768aab015d
Rename client/consul/sync.ConsulService to client/consul/sync.Syncer
Syncer describes the responsibility and actions of the type.
2016-06-10 15:49:37 -04:00
Sean Chittenden b509da2d0c
Create a `nomad/structs/config` to break an import cycle.
Flattening and normalizing the various Consul config structures and
services has led to an import cycle.  Break this by creating a new package
that is intended to be terminal in the import DAG.
2016-06-10 15:48:36 -04:00
Sean Chittenden 840b49a720
Distill config.Config.ConsulConfig down to config.Config.Consul
The enclosed struct provides the necessary context
2016-06-10 15:48:36 -04:00
Sean Chittenden c7a680c28f
Rename consulConfig to consulAgentConfig 2016-06-10 15:48:36 -04:00
Sean Chittenden 73e173673e
Rename client/config/config's ConsulConfig to ConsulAgentConfig
A follow up commit to the previous rename.  More to come.
2016-06-10 15:48:36 -04:00
Sean Chittenden e97652bbfb
Rename consul.ConsulConfig to consul.AgentConfig
There were two `ConsulConfig` structs running around, one of them
needed to go away.  Rely on the package's path to provide context
for the type of AgentConfig.
2016-06-10 15:48:36 -04:00
Sean Chittenden e36686a17d
Use consul/lib's RandomStagger
Removes four redundant copies of the method in the process.
2016-06-10 15:48:36 -04:00
Alex Dadgar b4fa34a854 Merge pull request #1252 from hashicorp/f-blocked-eval-text
Better placement failure text for blocked evals
2016-06-10 11:41:41 -07:00
Alex Dadgar f006aeeb20 helper 2016-06-10 11:02:15 -07:00
Alex Dadgar 93a8af1422 better placement failure text for blocked evals 2016-06-10 10:56:32 -07:00
Alex Dadgar 3cf74e7fd8 Alloc-status only shows measured statistics and fixes to CPU calculations 2016-06-10 10:38:29 -07:00
Diptanu Choudhury 872957e015 Merge pull request #1246 from hashicorp/fix-node-cpu-usage
Changed the logic of calculation of node cpu usage
2016-06-09 19:29:12 -07:00
Diptanu Choudhury ef2d630ea4 Changed the logic of calculation of node cpu usage 2016-06-10 03:24:42 +01:00
Alex Dadgar 5d181d203c Add check-index flag to nomad run 2016-06-08 17:56:32 -07:00
Alex Dadgar 2102855ae7 Merge pull request #1237 from hashicorp/b-regions
CLI can forward request to different regions
2016-06-08 11:00:23 -07:00
Diptanu Choudhury 66052700ca Moving the stats error to the bottom of alloc status 2016-06-08 12:28:41 -04:00
Diptanu Choudhury 843d7e224e Moving the stats error to the bottom of node status 2016-06-08 12:21:20 -04:00
Diptanu Choudhury 5074121e70 Fixed the formating of % in nomad alloc status 2016-06-08 08:53:33 -04:00
Alex Dadgar 77dd3af134 docs 2016-06-07 11:33:55 -07:00
Alex Dadgar a0557e766e Run and plan automatically sets the region 2016-06-07 11:28:07 -07:00
Alex Dadgar 86e368cdb8 Add region flag and environment variable 2016-06-07 11:16:04 -07:00
Alex Dadgar 08b16573a9 Merge pull request #1227 from hashicorp/upstream-scada-provider
Use upstream high-level SCADA provider
2016-06-07 09:47:24 -07:00
Diptanu Choudhury 4a35ffa1ef Indicating which values are percentages 2016-06-06 16:10:34 -07:00
Diptanu Choudhury c21d606ebb Getting inodes used percent back 2016-06-06 16:10:34 -07:00
Diptanu Choudhury 9db3b002b0 Showing detailed resource usage stats in alloc-stats 2016-06-06 16:10:34 -07:00
Diptanu Choudhury 5ca21b2906 Showing task resource usage in alloc status 2016-06-06 16:10:34 -07:00
Diptanu Choudhury 1bf3280f95 Showing actual resource usage 2016-06-06 16:10:34 -07:00
Diptanu Choudhury 10b9eeef56 Added the stats flag 2016-06-06 16:10:34 -07:00
Diptanu Choudhury d928d02d85 Removing inode percent since it doesn't work in some cases 2016-06-06 16:10:34 -07:00
Jeff Mitchell b4f25e0b04 Use upstream high-level SCADA provider 2016-06-01 18:25:09 -04:00
Alex Dadgar 0f84d8968b Merge pull request #1221 from hashicorp/b-nil-wait
fix wait result being nil and some panics in the cli
2016-05-31 16:50:38 -07:00
Alex Dadgar 4e15611339 fix wait result being nil and some panics in the cli 2016-05-31 23:09:05 +00:00
Alex Dadgar b1298bb658 plan shows failure reasons and ordered annotations 2016-05-31 21:51:23 +00:00
Alex Dadgar 4dd7b621f0 Merge pull request #1206 from hashicorp/f-eval-status
Introduce eval-status and deprecate eval-monitor
2016-05-31 11:19:44 -07:00
Alex Dadgar 8b7d3e90a9 Clean failed placement output 2016-05-31 18:18:58 +00:00
Diptanu Choudhury fd1b0dfd49 Fixed a test 2016-05-31 01:58:32 +02:00
Diptanu Choudhury f95b1d00c3 Renamed error message in alloc endpoint 2016-05-28 20:03:52 -07:00
Diptanu Choudhury f0c381e7d7 Added a test for alloc stats api endpoint 2016-05-28 19:59:20 -07:00
Diptanu Choudhury eb5d831099 Added a test for the clients stats endpoint 2016-05-28 19:59:20 -07:00
Diptanu Choudhury c0dc6cfbf2 Changing the api of the stats endpoints 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 9499759013 Fixed the docs for the stats command 2016-05-28 19:59:20 -07:00
Diptanu Choudhury a0c279f3b2 comments 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 37e8e0dc35 Fixed the node status cli command 2016-05-28 19:59:20 -07:00
Diptanu Choudhury a64062d6a6 Fixed the compilation on linux 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 0b0d0764e4 Changed signature of Allocation Stats Reporter 2016-05-28 19:59:20 -07:00
Diptanu Choudhury c46400597e Making the stats collection interval and number of data points to keep in memory configurable 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 464812ea3b Changed the stats endpoints 2016-05-28 19:59:20 -07:00
Diptanu Choudhury ecf2492138 Making task a flag in the stats command 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 05c221186b Added disk usage to node status 2016-05-28 19:59:20 -07:00
Diptanu Choudhury cf247c1309 Added uptime to node stats 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 73fa700a88 Showing host resource usage stats 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 313c61b9db Added pidstats in task resource usage struct 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 22c3f6fee0 Implemented nomad cpu percentage calculator 2016-05-28 19:59:03 -07:00
Diptanu Choudhury 2f06fa8e63 Using humanize for showing memory 2016-05-28 19:59:03 -07:00
Diptanu Choudhury 510eb14245 Reporting percentage usage of cpu in nomad stats 2016-05-28 19:59:03 -07:00
Diptanu Choudhury 63166d0e46 Adding a query param to return time series of stats 2016-05-28 19:42:34 -07:00
Diptanu Choudhury 9a96dddc07 Added some docs to resource stats endpoint 2016-05-28 19:42:34 -07:00
Diptanu Choudhury 7569b1af2e Collecting host stats 2016-05-28 19:42:34 -07:00
Diptanu Choudhury f3d0aecafe Reporting time series of stats 2016-05-28 19:42:34 -07:00
Diptanu Choudhury 13825f434e Added the nomad stats command 2016-05-28 19:42:34 -07:00
Diptanu Choudhury 0fb0e0237f Added a client API to display resource usage of an allocation 2016-05-28 19:42:34 -07:00
Alex Dadgar 12ecd061e1 test fix 2016-05-27 11:50:15 -07:00
Alex Dadgar 55d48196b2 eval-status website docs 2016-05-27 11:50:15 -07:00
Alex Dadgar d92bf1e1a5 Handle the no allocation case in status 2016-05-27 11:50:15 -07:00
Alex Dadgar 9651b2551b Fix check of completed next eval 2016-05-27 11:50:15 -07:00
Alex Dadgar 10c2e8449f Show failure reason in status 2016-05-27 11:50:15 -07:00
Alex Dadgar 57770de1fc Add eval-status and remove eval-monitor 2016-05-27 11:50:15 -07:00
Diptanu Choudhury 5b1a2100c6 Merge pull request #1204 from hashicorp/fix-server-address
Use Bind Addr as server's IP while registering with consul in the absence of other configuration.
2016-05-24 22:30:35 -07:00
Diptanu Choudhury bf5b78b77e Added a test for generation of the server addr 2016-05-24 21:29:13 -07:00
Alex Dadgar 1a4f25031c Merge pull request #1181 from hashicorp/f-plan-cli
cli: nomad plan command
2016-05-24 20:09:12 -07:00
Alex Dadgar 3cbb89c61e Merge pull request #1188 from hashicorp/f-no-failed-allocs
Failed Allocation Metrics stored in Evaluation
2016-05-24 20:06:28 -07:00
Alex Dadgar d7d9ecad59 meta flag test 2016-05-24 18:53:46 -07:00
Alex Dadgar b7ca0669b8 output and test fix 2016-05-24 18:42:05 -07:00
Alex Dadgar fcc57fbc66 rename SpawnedBlockedEval and simplify map safety check 2016-05-24 18:12:59 -07:00
Diptanu Choudhury 227477533c Using the bind addr as server's IP if advertise addr and addresses.HTTP is not specified 2016-05-24 17:27:09 -07:00
Alex Dadgar 2a4d5f0ef9 Compress HTTP API responses and have the api client utilize this 2016-05-24 10:26:53 -07:00
Alex Dadgar 120ff47cd1 Merge pull request #1182 from hashicorp/f-json-encoder
Use codegen for json marshalling
2016-05-20 14:30:25 -07:00
Alex Dadgar e4cb2d400b print spawned eval in monitor 2016-05-19 13:16:10 -07:00
Alex Dadgar 16353c48a7 Show task group failures in eval-monitor 2016-05-18 22:02:51 -07:00
Alex Dadgar 636f886e30 Use codegen for json marshalling: 20% faster, 12% less bytes allocated, 85% less allocations 2016-05-18 09:45:46 -07:00
Diptanu Choudhury bf27cc1261 Merge pull request #1174 from hashicorp/f-config-consul-block
Using the auto-register flag
2016-05-18 04:16:38 +02:00
Alex Dadgar d7bb9c58ed tests 2016-05-17 13:33:48 -07:00
Alex Dadgar fca7db1a9f comments, refactor and help string 2016-05-17 13:33:48 -07:00
Alex Dadgar df653b5f1d Alligned properly 2016-05-17 13:33:48 -07:00
Alex Dadgar db3dfec715 better colors and verify help text 2016-05-17 13:33:48 -07:00
Alex Dadgar 93cf38b1ca verbose output 2016-05-17 13:33:48 -07:00
Alex Dadgar 3f7615c6a1 little better output 2016-05-17 13:33:48 -07:00
Alex Dadgar 5d6b83fd2e initial implementation of nomad plan 2016-05-17 13:33:48 -07:00
Dara Kong 9b2b39c7d6 Fix "http_api_response_headers" config not working
On startup, the agent starts with either a dev or default config.  Extra
config files are merged into final config.

The HTTPAPIResponseHeaders config was missing from the merge logic
therefore it would always result in empty value (regardlesss of any
config files specified).
2016-05-16 20:57:54 -07:00
Alex Dadgar a5ab96d40e Merge pull request #1168 from hashicorp/f-plan-endpoint
Job.Plan endpoint
2016-05-16 13:15:40 -07:00
Alex Dadgar a231f6f998 Switch to using the harness 2016-05-16 12:49:18 -07:00
Alex Dadgar 312c51fc2d improve help message for fs missing input 2016-05-16 11:08:28 -07:00
Alex Dadgar 157833b3a1 Merge pull request #1150 from hashicorp/f-fs-command
Refactor fs subcommands into fs command
2016-05-16 11:05:29 -07:00
Jake Champlin 5412c29edb
Update per comments 2016-05-16 13:17:37 -04:00
Diptanu Choudhury c07770fd4d Using the auto-register flag 2016-05-16 18:23:01 +02:00
Sean Chittenden dc28ab0cb5
Speling police 2016-05-15 09:41:34 -07:00
Diptanu Choudhury 6521f3fa5f Testing if stats is present and it is a map 2016-05-14 01:20:51 -07:00
Diptanu Choudhury 1b3356375d Using advertise addr for the http address 2016-05-14 01:09:05 -07:00
Diptanu Choudhury ecd995b283 Added some docs 2016-05-14 00:36:26 -07:00
Diptanu Choudhury d94e651c6e Merge branches 'master' and 'f-config-consul-block' of github.com:hashicorp/nomad into f-config-consul-block 2016-05-13 13:05:11 -07:00
Diptanu Choudhury df9d256132 Making Nomad register services with consul in dev mode 2016-05-13 10:19:49 -07:00
Alex Dadgar b634486ebd Plan api 2016-05-11 18:51:48 -07:00
Diptanu Choudhury 439d7bf326 Fixed an agent test 2016-05-11 17:26:53 -07:00
Diptanu Choudhury 347cb890d2 Removed allocID and task name from consul service 2016-05-11 16:26:41 -07:00
Diptanu Choudhury 83fed62a0a Implemented registering client and server services 2016-05-11 16:07:02 -07:00
Sean Chittenden 7b8a5dcc15
Fix the unit tests for TestPrettyPrintOff
A different failing test masked that this wasn't even being run.

Pointy Hat: sean- for testing first on Travis in a branch vs verifying locally
2016-05-11 15:48:43 -07:00
Alex Dadgar 81f0286dd8 Merge branch 'master' into f-plan-endpoint 2016-05-11 15:39:36 -07:00
Diptanu Choudhury d9497632ed Added tests for parsing consul client configuration 2016-05-11 15:22:58 -07:00
Diptanu Choudhury a4092a7a35 Adding logic for checking health of client 2016-05-11 15:22:58 -07:00
Diptanu Choudhury 4ff76424cb Added a check command 2016-05-11 15:22:58 -07:00
Diptanu Choudhury 075a1379c0 Added parsing logic for config block 2016-05-11 15:22:58 -07:00
Sean Chittenden 693e1c6ea9
Fix unit tests for TestPrettyPrintBare 2016-05-11 15:20:57 -07:00
Alex Dadgar ccc3caae4a Merge branch 'f-job-diff2' into f-plan-endpoint 2016-05-11 11:25:25 -07:00
Sean Chittenden 36a50e0f15
Update tests for pretty printing that includes a newline.
Add a test verifying that pretty printing can be disabled, too.
2016-05-11 10:55:01 -07:00
Sean Chittenden 2fe9b6e97a
Append a newline when pretty-printing the response
Instead of typing `curl http://foo/v1/nodes?pretty; echo` to inject a
newline into your terminal, now pretty will provide its own newline.
2016-05-10 15:46:20 -07:00
Alex Dadgar ab0b57a9a1 Initial plan endpoint implementation - WIP 2016-05-05 11:21:58 -07:00
Jake Champlin 6d3c76ceb3
Refactor fs subcommands into fs command
Refactors `nomad fs` command to eliminate `fs` subcommands.
Automatically displays the file, if the path specified is a file; lists
the directory if the path is a directory; or displays stat information
if the `-stat` flag is set.

Currently running `nomad fs ls` to find a file, then running the exact
same command with the exception of `cat` instead of `ls` is time
consuming and awkward. This allows operational testing to be greatly
enhanced, and makes our lives so much better.
2016-05-04 23:59:38 -07:00
Sean Chittenden 09729cf706 When checkpoint emits a log message indicating an agent is out of
date, include the current version along with the available version
according to checkpoint.

Inspired by: log output in hashicorp/consul#993
2016-05-04 23:56:37 -07:00
Alex Dadgar 8f16473c6e Better error handling 2016-04-22 15:59:56 -07:00
Alex Dadgar 6c6dacd042 Fix missing format variable 2016-04-18 18:53:05 -07:00
Alex Dadgar e8bb0ab864 Merge pull request #1090 from hashicorp/f-inspect-submittable
Make inspect output submittable via HTTP API
2016-04-13 17:18:54 -07:00
Alex Dadgar 7b41cfec7b Merge pull request #1089 from hashicorp/f-validate-driver-on-submit
Validate driver config on job register
2016-04-13 16:54:59 -07:00
Alex Dadgar 538389c056 Make inspect output submittable 2016-04-13 16:53:39 -07:00
Alex Dadgar 3c9e0c9c47 Lower number of submitted jobs 2016-04-13 16:33:30 -07:00
Alex Dadgar 1a8024a59b check for exact match on job for inspect/stop 2016-04-13 16:05:58 -07:00
Alex Dadgar f38ed64938 Validate driver config on job register 2016-04-13 15:55:46 -07:00
Alex Dadgar 273dfaf2c7 Periodic jobs always are evaluated in UTC TZ 2016-04-12 09:47:25 -07:00
Alex Dadgar 60153ed845 Add -self flag to node-drain 2016-04-11 15:20:49 -07:00
Diptanu Choudhury 953127fff7 Merge pull request #1053 from hashicorp/remove-interfaces
removing interfaces from config
2016-04-09 09:18:17 -07:00
Alex Dadgar 42924b9037 Merge pull request #1052 from iverberk/b-fix-panic-on-fs-job-parameter
Fixes a panic when fs commands with a job parameter return zero allocations
2016-04-08 11:27:20 -07:00
Alex Dadgar b6e1057974 Sort the task resources in alloc-status 2016-04-07 14:55:48 -07:00
Ivo Verberk b5beb70fbd Make sure we exit on errors 2016-04-07 22:56:17 +02:00
Diptanu Choudhury 891b201eef removing interfaces from config 2016-04-07 13:25:38 -07:00
Ivo Verberk a7b1842824 Fixes a panic when fs commands with a job parameter return zero allocations 2016-04-07 20:22:09 +02:00
Diptanu Choudhury 102d1065a7 Showing the status of the first job when it's prefixed matched and the user input matched exact 2016-03-30 22:17:41 -07:00
Alex Dadgar 9a1b1f01c8 run -output adds job key 2016-03-29 15:02:14 -07:00
Alex Dadgar 7bee675b6c node-status -self command and docs 2016-03-29 12:36:24 -07:00
Alex Dadgar ec89e77316 Merge pull request #997 from hashicorp/fs-cat-api
Added the /fs/cat/ api
2016-03-28 14:14:47 -07:00
Diptanu Choudhury 9d495a4be4 Added the /fs/cat/ api 2016-03-28 11:06:22 -07:00
Diptanu Choudhury 946ccfc512 Fixes the logic for job-stop confirmation prompt 2016-03-27 19:21:23 -07:00
Diptanu Choudhury b45387c03c Fixes the logic for node drain confirmation prompt 2016-03-27 19:17:29 -07:00
Alex Dadgar f9a48e23f9 nomad run -output emits the JSON representation of the job 2016-03-25 18:24:51 -07:00
Alex Dadgar 25dc8a0dcb Explain restart decision and display in alloc-status 2016-03-25 12:47:14 -07:00
Alex Dadgar 647c20e465 Merge pull request #978 from hashicorp/f-enforce-user
Operator specifiable blacklist for task's using certain users
2016-03-25 12:44:05 -07:00
Alex Dadgar 69d432a5a0 Merge pull request #983 from hashicorp/f-destroy-conf
Confirmation on destructive commands
2016-03-25 10:31:38 -07:00
Alex Dadgar 5d48a2bc71 Confirmation on destructive commands 2016-03-24 14:43:20 -07:00
Pete Shima 73879faa9d Move update servers cli output to the correct commands location 2016-03-24 13:31:23 -07:00
Alex Dadgar 45dfae8f6f Operator specifiable blacklist for task's using certain users 2016-03-24 10:55:14 -07:00
Alex Dadgar 74971e0e90 Merge pull request #965 from hashicorp/f-nomad-fingerprinter
client: add nomad fingerprinter
2016-03-22 17:55:42 -07:00
Alex Dadgar aefa4b9207 add nomad fingerprinter 2016-03-22 17:12:30 -07:00
Alex Dadgar e2c0ca48b8 node-status fix panic 2016-03-22 16:25:25 -07:00
Alex Dadgar 1e67be4c6f Fix indentation of init file 2016-03-21 18:16:57 -07:00
Alex Dadgar f5aa697da8 Merge pull request #952 from hashicorp/f-nomad-inspect
cli: Add nomad inspect command
2016-03-21 13:01:48 -07:00
Alex Dadgar 9cfb4ee633 inspect/stop uses prefix search 2016-03-21 13:00:14 -07:00
Alex Dadgar 90a61172b4 Add nomad inspect command 2016-03-21 12:46:35 -07:00
Diptanu Choudhury 82908d5fa9 Merge pull request #941 from hashicorp/f-interface-name
Use an interface name to find the bind addr for rpc, http and serf components
2016-03-20 23:57:44 -07:00
Diptanu Choudhury acd016c7c0 Overriding the device configuration if addresses is present 2016-03-20 23:41:16 -07:00
Diptanu Choudhury 98fd0b889a Added a comment about iteration of ips in a network device 2016-03-20 23:22:16 -07:00
Alex Dadgar d8d1447f8c less verbose output and show node's total resources 2016-03-20 17:36:40 -07:00
Alex Dadgar 7b36d7ec55 Reduce verbosity of alloc-status 2016-03-20 16:52:24 -07:00
Diptanu Choudhury cfb9ae91a1 Using the interfaces for configuring bind addrs for nomad servers 2016-03-19 00:54:19 -07:00
Diptanu Choudhury 6e6f2940f0 Setting the ip from the network interface to Addresses 2016-03-18 22:26:13 -07:00
Diptanu Choudhury e72faaa1c0 Parsing interfaces from the config file 2016-03-18 22:05:57 -07:00
Diptanu Choudhury 4f689d1a38 Using the interface name to find bind address for network services 2016-03-18 21:44:22 -07:00
Diptanu Choudhury 601008706d Added an interfaces config 2016-03-18 13:50:29 -07:00
Jake Champlin 4f01d2f8bf Allow fs commands to use job-id
Adds `-job` flag argument to `nomad fs` commands to randomly lookup a
job's allocation-id to use in an `fs` command.

Can be used when debugging a job, where a specific allocation ID is not
a strict requirement.
2016-03-18 15:05:35 -04:00
Diptanu Choudhury a3991ad866 Merge pull request #936 from hashicorp/always-prefix-match
Always defaulting to prefix match
2016-03-17 17:26:52 -07:00
Diptanu Choudhury 7ed107d04e Always defaulting to prefix match 2016-03-17 17:25:38 -07:00
Alex Dadgar bf74e2f790 display server leaders per region 2016-03-17 16:04:09 -07:00
Diptanu Choudhury cbca7addb4 Fixes example.init 2016-03-15 21:21:49 -07:00
Alex Dadgar 719f5d34ed Merge pull request #910 from hashicorp/f-reserved-resources
Reserve Client Resources + Config Validation
2016-03-15 21:09:13 -07:00
Alex Dadgar 4288d3b7d7 Add artifact to init 2016-03-15 20:28:33 -07:00
Alex Dadgar 9f878a16bf Download artifacts and remove old code for drivers 2016-03-15 13:28:57 -07:00
Dmitry Smirnov 7c3bb51cfa codespell: minor spelling corrections
Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
2016-03-16 05:28:31 +11:00
Alex Dadgar 9bfcd47398 Remove unused configs 2016-03-13 19:22:57 -07:00
Alex Dadgar 7d4c19ed99 reserve resources on the node 2016-03-13 19:05:41 -07:00
Alex Dadgar 979a0d07f9 Get rid of individual network resources 2016-03-11 19:02:44 -08:00
Alex Dadgar 363b6fea51 Custom parsing of Nomad config with validation + Reserved resources block (not used yet) 2016-03-11 18:24:58 -08:00
Diptanu Choudhury 7276bd5e84 Merge pull request #907 from hashicorp/f-task-resources
Showing Task Resources in alloc status
2016-03-11 15:14:49 -08:00
Diptanu Choudhury b07c23fd5e Showing Task Resources in alloc status 2016-03-11 14:28:51 -08:00
Diptanu Choudhury 4589798ade Simplified the logic of limit 2016-03-10 19:02:39 -08:00
Diptanu Choudhury c96e909e43 Merge pull request #902 from hashicorp/f-fs-error
Improved the error related to fs commands
2016-03-10 14:08:33 -08:00
Diptanu Choudhury a9904c9187 Improved the error related to fs commands 2016-03-10 14:07:33 -08:00
Diptanu Choudhury 512d0c317a Merge pull request #897 from hashicorp/syslog-addr
Using unix domain sockets for docker syslog collector
2016-03-10 11:49:21 -08:00
Ivo Verberk 318352cc0f Validate config keys 2016-03-10 19:16:35 +01:00
Diptanu Choudhury b18cbaa416 Using unix domain sockets for docker syslog collector 2016-03-09 23:28:26 -08:00
Diptanu Choudhury a5d5919664 Fixed an issue around parsing client max and min ports 2016-03-09 12:25:30 -08:00
Alex Dadgar da984cb4d2 Guard client/ api to ensure the client is running 2016-03-07 11:26:54 -08:00
Jake Champlin 3852aa4ae4 Cleanup style, and make cleaner 2016-03-07 09:58:35 -05:00
Jake Champlin edd60b4fb1 Print resource usage w/ alloc-status + node-status
When alloc-status is called, in it's long form only, print the resource
utilization for that single allocation.

When node-status is called, in it's long form only, print the TOTAL
resource utilization that is occurring on that single node.

Nomad Alloc Status:

```
% nomad alloc-status 195d3bf2
ID              = 195d3bf2
Eval ID         = c917e3ee
Name            = example.cache[1]
Node ID         = 1b2520a7
Job ID          = example
Client Status   = running
Evaluated Nodes = 1
Filtered Nodes  = 0
Exhausted Nodes = 0
Allocation Time = 17.73µs
Failures        = 0

==> Task "redis" is "running"
Recent Events:
Time                   Type      Description
04/03/16 21:20:45 EST  Started   Task started by client
04/03/16 21:20:42 EST  Received  Task received by client

==> Status
Allocation "195d3bf2" status "running" (0/1 nodes filtered)
  * Score "1b2520a7-6714-e78d-a8f7-68467dda6db7.binpack" = 1.209464
  * Score "1b2520a7-6714-e78d-a8f7-68467dda6db7.job-anti-affinity" = -10.000000

==> Resources
CPU  MemoryMB  DiskMB  IOPS
500  256       300     0
```

Nomad Node Status:

```
% nomad node-status 57b3a55a
ID         = 57b3a55a
Name       = biscuits
Class      = <none>
DC         = dc1
Drain      = false
Status     = ready
Attributes = arch:amd64, cpu.frequency:3753.458875, cpu.modelname:Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz, cpu.numcores:8, cpu.totalcompute:30027.671000, driver.docker:1, driver.docker.version:1.10.2, driver.exec:1, driver.raw_exec:1, hostname:biscuits, kernel.name:linux, kernel.version:4.4.0-9-generic, memory.totalbytes:25208934400, os.name:ubuntu, os.version:16.04, unique.cgroup.mountpoint:/sys/fs/cgroup, unique.network.ip-address:127.0.0.1, unique.storage.bytesfree:219781419008, unique.storage.bytestotal:246059892736, unique.storage.volume:/dev/sdb3

==> Allocations
ID        Eval ID   Job ID   Task Group  Desired Status  Client Status
2c236883  aa11aca8  example  cache       run             running
32f6e3d6  aa11aca8  example  cache       run             running

==> Resource Utilization
CPU   MemoryMB  DiskMB  IOPS
1000  512       600     0
```
2016-03-07 09:58:35 -05:00
Alex Dadgar 30482f1cd6 fix test 2016-03-06 18:41:33 -08:00
Alex Dadgar 89e3de7784 agent: Configurable heartbeat 2016-03-04 15:44:12 -08:00
Alex Dadgar 82d8210287 Remove documentation about assigning node-id 2016-03-04 10:36:30 -08:00
Jake Champlin ce27b1e8ea Add -allocs to help output 2016-03-03 14:46:24 -05:00
Jake Champlin 4e6737651a Only fetch running allocs, use args, add docs
Only fetch running allocations, not total allocated ids, add
documentation, and cleanup things.
2016-03-03 14:09:07 -05:00
Jake Champlin c4a3f5047b Include number of allocations in node-status
We recently ran into an issue on a small percentage of nomad-clients
where the nomad-client was running successfully, but due to a race
condition, could not correctly bind to the docker socket. This caused
all of our nomad jobs to be allocated to a single nomad-client instead
of being spread evenly across our clients. The only way to discover this
was to run `nomad node-status <node>` and count each job allocation per
node.

This can lead to a fairly long debugging process if there are several
nomad-clients. Including the number of allocations for each node in the
`node-status` command would save a large amount of debug time.

```
jake@biscuits [12:08:41] [~]
-> % nomad node-status
ID        Datacenter  Name      Class   Drain  Status  Allocations
2b0aabc5  dc1         biscuits  <none>  false  ready   0
```

```
jake@biscuits [12:08:55] [~]
-> % nomad node-status
ID        Datacenter  Name      Class   Drain  Status  Allocations
2b0aabc5  dc1         biscuits  <none>  false  ready   1
```
2016-03-03 12:19:56 -05:00
Alex Dadgar 61972c9ddc Refactor task runner to include driver starting into restart policy and add recoverable errors 2016-02-28 16:56:05 -08:00
Diptanu Choudhury e3d6c4a9dd Adding version information to snapshots 2016-02-24 19:06:30 -08:00
Alex Dadgar cc1b35a90c client: standardize error logging format 2016-02-24 15:57:58 -08:00
Alex Dadgar 143972b6d9 Job GC endpoint 2016-02-20 15:50:41 -08:00
Alex Dadgar 70b07f7ad6 Make the client only reserve 512 ports. 2016-02-20 11:43:02 -08:00
Alex Dadgar d1011c9668 Fixes 2016-02-19 15:49:32 -08:00
Diptanu Choudhury 72c52e3158 Testing default http port is being set 2016-02-16 17:54:17 -08:00
Diptanu Choudhury f33a010f8d Added a test for testing that http addr is set properly 2016-02-16 13:42:48 -08:00
Diptanu Choudhury 0e7a2d68c1 fixing the logic of addr resolution 2016-02-16 13:13:40 -08:00
Alex Dadgar c000dce72b Add human readable output to fs 2016-02-12 15:36:52 -08:00
Diptanu Choudhury d34a74371a Merge pull request #797 from hashicorp/reserve-ports
Reserving ports for client in every platform
2016-02-12 14:33:13 -08:00
Diptanu Choudhury fe66b8b928 Adding comments 2016-02-12 14:25:32 -08:00
Diptanu Choudhury 772ed1eb7e Reserving ports for client in every platform 2016-02-12 13:21:56 -08:00
Diptanu Choudhury 92103c9091 Merging the value of http advertise addr if user is providing one 2016-02-12 09:40:28 -08:00
Diptanu Choudhury c84a000416 Fixed some more tests 2016-02-11 22:33:41 -08:00
Diptanu Choudhury c6e395fa0e Fixed tests 2016-02-11 17:34:46 -08:00
Diptanu Choudhury 0016b2f82d Setting the output for default logger to nomad's logoutput 2016-02-11 16:05:31 -08:00
Diptanu Choudhury d2fa769514 Added the log config to init example 2016-02-11 12:21:19 -08:00
Diptanu Choudhury 9e994cb8d0 Fixed some tests 2016-02-11 10:42:56 -08:00
Diptanu Choudhury 1e4c42f29d Starting the syslog collector along with a docker container 2016-02-09 18:24:30 -08:00
Diptanu Choudhury 4644f8a9d4 Added a test for merge 2016-02-08 16:27:31 -08:00
Diptanu Choudhury e89bcf52b8 Moving code to mount and unmount chroot into allocdir 2016-02-08 14:11:53 -08:00
Diptanu Choudhury e53ebc9e3c Extracted the cgroup info into isolation struct 2016-02-08 13:48:26 -08:00
Diptanu Choudhury 21677468cf Setting defaults for client max and min port 2016-02-08 13:29:53 -08:00
Diptanu Choudhury fa45e0b8ca Using net.IsLoopback to determine if ifc is a loopback device 2016-02-08 07:57:31 -08:00
Diptanu Choudhury 4527410e33 Fixed merged conflict 2016-02-07 17:58:31 -05:00
Alex Dadgar d2d59905a2 Shorted eval id and only print waiting if time > 0 2016-02-06 16:09:39 -08:00
Diptanu Choudhury d2eeba213c Reserving ports on windows 2016-02-05 15:17:15 -08:00
Alex Dadgar 76a11b4613 Display fs in nomad help and list the subcommands when called 2016-02-05 11:01:29 -08:00
Diptanu Choudhury ff714703e6 Fixing merge conflicts 2016-02-04 22:55:38 -08:00
Diptanu Choudhury 30d5bba131 Not syncing stdout and stderr of pluging with client 2016-02-04 17:36:31 -08:00
Alex Dadgar 5018f5dd1e Only interpret vars wrapped in braces 2016-02-04 17:26:46 -08:00
Diptanu Choudhury f95b973c2c Moved packages around 2016-02-04 17:00:41 -08:00
Diptanu Choudhury 57453086a7 Fixed the executor command 2016-02-04 17:00:37 -08:00
Diptanu Choudhury 4ed85d0ab2 Using a plugin to create the executor 2016-02-04 17:00:37 -08:00
Alex Dadgar 6f20d3f435 Restart on-success shouldn't be user specifiable 2016-02-02 17:35:06 -08:00
Alex Dadgar 4748bfd869 Tests 2016-02-02 13:50:30 -08:00
Alex Dadgar 54aebfd329 Merge pull request #731 from hashicorp/f-reduce-client-alloc-pulls
Client only pulls update allocations from server
2016-02-02 13:26:36 -08:00
Diptanu Choudhury a7906020dd Updated the time stamp style 2016-02-01 17:41:47 -08:00
Alex Dadgar 2d98c0eadd Fix double pull with introduction of AllocModifyIndex 2016-02-01 15:43:59 -08:00
Ranjib Dey 38d1685fff fix typo in fs-* command usage text 2016-01-31 11:11:06 -08:00
Alex Dadgar f8b99e7da3 Merge pull request #722 from iverberk/f-double-alloc-update
Add new RPC call to fetch a lightweight list of allocation information.
2016-01-30 16:39:09 -08:00
Ivo Verberk 2dd3ff6d81 Add additional API endpoint for requesting client specific node allocations. 2016-01-29 20:01:21 +01:00
Jake Champlin e2f0244776 Update agent_endpoint_test 2016-01-28 23:33:01 -05:00
Diptanu Choudhury 9e85ce3cc1 Not wrapping the stat errors 2016-01-27 22:08:06 -08:00
Diptanu Choudhury a3140cff3f Changing an error message 2016-01-27 21:43:52 -08:00
Diptanu Choudhury 17b6db4465 Moving to subcommands for fs commands 2016-01-27 16:29:29 -08:00
Diptanu Choudhury 7878899cc4 Changed to fs-ls 2016-01-27 14:58:55 -08:00
Diptanu Choudhury f4e891b0c1 Formatting time to RFC822 2016-01-27 14:56:17 -08:00
Diptanu Choudhury 980bc19d10 Added more information about files 2016-01-27 14:20:10 -08:00
Diptanu Choudhury 0736f45937 Simplified the logic of detecting addrs 2016-01-27 13:34:01 -08:00
Diptanu Choudhury 4f28050d65 Removing the short option flag 2016-01-27 13:26:12 -08:00
Diptanu Choudhury cfea32067f Limiting the alloc and eval ids based on short/verbose flags 2016-01-27 12:56:38 -08:00
Diptanu Choudhury 82b2e24ff6 Added the short and verbose options 2016-01-27 12:53:25 -08:00
Diptanu Choudhury 2351f70590 Changed some comments, cli instructions etc 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 4a1d4ff69a Changed the api of the ReadAt API 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 69a17e2a29 Added the advertise http option to the client 2016-01-27 12:53:24 -08:00
Diptanu Choudhury e83130934d Using the bindAddr only when user hasn't overrident it 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 26d9554d02 Added some comments 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 2956f71519 Implemented prefix matching 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 68c2164088 Added the cli for fs-cat 2016-01-27 12:53:23 -08:00
Diptanu Choudhury a70e5dbdc7 Added an impl for stating a file 2016-01-27 12:53:23 -08:00
Diptanu Choudhury edd3194a16 Added some comments 2016-01-27 12:53:23 -08:00
Diptanu Choudhury 1e9c817a52 Added the cli for listing alloc dir 2016-01-27 12:53:23 -08:00
Alex Dadgar 4332263048 standardize on <> for required flags 2016-01-27 12:00:31 -08:00
Alex Dadgar 837ca9ab86 limit length of string, taking into account its length 2016-01-27 10:42:10 -08:00
Diptanu Choudhury b86e60b9de Allow users to configure arbitrary headers in config 2016-01-22 11:00:43 -08:00
Alex Dadgar 436c13d26a Merge pull request #692 from iverberk/f-detect-half-byte-prefix
Detect a half-byte prefix
2016-01-21 14:12:27 -08:00
Ivo Verberk 9ab2135b38 Provide a consistent user experience with prefix based lookups.
* Require at least two characters for identifier
* Automatically strip off the last character in case of uneven length
2016-01-21 22:21:35 +01:00
Alex Dadgar ab6de99472 Remove non-standard CLI element 2016-01-21 13:13:36 -08:00
Ivo Verberk c44b4c8aa9 Do not use the exact internal field names in the CLI output 2016-01-21 21:35:56 +01:00
Ivo Verberk d8ac284bdd Detect a half-byte prefix and display a user-friendly error. 2016-01-21 20:53:05 +01:00
Alex Dadgar 248b20ae24 Merge pull request #675 from nautsio/f-cli-short-ids
Shorten CLI identifiers
2016-01-19 15:11:41 -08:00
Ivo Verberk 9c46eceeac Cleanup code and add comments 2016-01-20 00:02:17 +01:00
Alex Dadgar 041bcc36c5 Merge pull request #668 from hashicorp/f-force-spawn
Force spawn periodic jobs
2016-01-19 11:37:18 -08:00
Alex Dadgar cffc04fa91 Missing forward slash 2016-01-19 11:18:03 -08:00
Alex Dadgar 5e900b94d0 Move endpoint to be under job 2016-01-19 11:09:36 -08:00
Ivo Verberk 427d3d650d Refactoring of full-id argument and id length constants
* full-id argument is now called verbose to be more future-proof
* constants for identifier length are a little more concise
2016-01-15 23:32:38 +01:00
Ivo Verberk 149c55252d Merge branch 'master' into f-cli-short-ids 2016-01-15 09:19:53 +01:00
Diptanu Choudhury 39b263ed7f Refactoring some comments and test names 2016-01-14 15:07:24 -08:00
Alex Dadgar 59a31704c3 Merge branch 'master' of https://github.com/hashicorp/nomad 2016-01-14 14:38:08 -08:00
Alex Dadgar 0d30e57f56 Fix test 2016-01-14 14:38:02 -08:00
Diptanu Choudhury 6d491e3e19 Merge pull request #669 from hashicorp/f-fs-api
Introduce FS API
2016-01-14 14:34:30 -08:00
Diptanu Choudhury 95a9408e7d Renamed the tests 2016-01-14 13:39:30 -08:00
Diptanu Choudhury 08d8a7d527 changed the API of the client 2016-01-14 13:35:42 -08:00
Ivo Verberk 91a9f2c4ce Shorten CLI identifiers
* Truncate all UUID identifiers to eight characters by default
* Refactor the node identifier to an auto-generated UUID
* Created and updated tests and mocks
2016-01-14 21:57:43 +01:00
Alex Dadgar 3348a0328b Add message to nomad status when there are no jobs 2016-01-14 11:56:06 -08:00
Diptanu Choudhury b80418f159 Fixed the query for extracting path from stat 2016-01-13 13:21:03 -08:00
Diptanu Choudhury 7a93da0d3e Refactored the tests 2016-01-13 11:49:39 -08:00
Diptanu Choudhury 155845a46d Added a test for the readat api endpoint 2016-01-13 11:37:29 -08:00
Diptanu Choudhury 4f6dd60f3c Fixed the logic of extracting alloc 2016-01-13 11:19:45 -08:00
Alex Dadgar 80dd30b03d Add force spawn endpoint 2016-01-13 10:19:53 -08:00
Diptanu Choudhury 2e03843670 Refactored the code 2016-01-12 22:25:12 -08:00
Diptanu Choudhury 9e5d6d7fe8 Implemeted readAt 2016-01-12 22:06:42 -08:00
Diptanu Choudhury 74af0da4cd Implemented the Stat API 2016-01-12 21:28:07 -08:00
Diptanu Choudhury a1453e6180 Added the Stat API 2016-01-12 15:25:51 -08:00
Diptanu Choudhury e3d7e693dc Added methods for listing directories inside an alloc 2016-01-12 15:03:53 -08:00
Alex Dadgar 4a75075a03 Change status message 2016-01-08 10:32:08 -08:00
Alex Dadgar 3ff5e98d25 commnet 2016-01-07 15:43:30 -08:00
Alex Dadgar dca1a9ad85 Make monitoring based on prefix optional 2016-01-07 15:25:08 -08:00
Alex Dadgar f843e95cbf Check parent id of prefix jobs and special case the output if no child job has been launched 2016-01-07 14:43:55 -08:00
Alex Dadgar ce5a7b73ed periodic status 2016-01-07 14:25:17 -08:00
Alex Dadgar 68a5877c91 Change multiple match cli output 2016-01-06 15:08:47 -08:00
Alex Dadgar ce22c049db Merge pull request #575 from nautsio/f-short-ids
Allow lookups based on short identifiers
2016-01-06 14:36:19 -08:00
Ivo Verberk 9527fc254d Improvements for short identifiers
* Fix tests
* Update documentation
2016-01-06 22:46:57 +01:00
Alex Dadgar c0721e45f6 Fix bug, add tests, and cli output 2016-01-04 14:23:06 -08:00
Alex Dadgar 1e5c776e40 Merge pull request #624 from hashicorp/f-adjustable-timeout
User specifiable kill timeout and operator configurable max
2016-01-04 11:44:22 -08:00
Alex Dadgar 571adabac2 Add to nomad init 2016-01-04 11:36:57 -08:00
Ivo Verberk fd177f4c6f Bring up-to-date with master 2015-12-24 21:16:32 +01:00
Ivo Verberk 0c01ca49e6 Refactoring continued
* Refactor other cli commands to new design
* Add PrefixList method to api package
* Add more tests
2015-12-24 20:53:37 +01:00
Alex Dadgar 8b76a0718c Make nomad status id aware of periodic jobs 2015-12-23 18:26:39 -08:00
Alex Dadgar bd4eda0b05 Fix nomad run 2015-12-23 18:26:39 -08:00
Alex Dadgar ddf392c6be User specifiable kill timeout and operator configurable max 2015-12-22 16:10:30 -08:00
Ivo Verberk 7838b2a57c Refactoring
* Reverted changes to get methods
* Added prefix query parameter
* Updated node status to use prefix based searching
* Fixed tests
* Removed truncation logic
2015-12-22 23:44:33 +01:00
Alex Dadgar 2d16cb86ce Enforce absolute paths for alloc/state/data directories 2015-12-22 11:14:41 -08:00
Ivo Verberk 47e001d31a Revert "On cli node status list print the short Node ID when possible"
This reverts commit 5d3bd1b6f04bb3c0367798d9bb21729f2cf82247.
2015-12-22 10:18:58 +01:00
Ivo Verberk bf968a04cc Bring up-to-date with master 2015-12-22 10:15:53 +01:00
Alex Dadgar ce1f79e8dd Fix append issue 2015-12-21 15:10:49 -08:00
Alex Dadgar 91bf9e3790 Merge branch 'agent-info-sort' of https://github.com/zytek/nomad into zytek-agent-info-sort 2015-12-21 15:07:13 -08:00
Ivo Verberk a3d015c278 Allow short identifiers for node-drain command 2015-12-20 18:02:10 +01:00
Armin 05b495b8be On cli node status list print the short Node ID when possible 2015-12-20 17:33:27 +01:00
Ivo Verberk a11c38c6ca Allow short job identifiers for stop command 2015-12-20 12:14:59 +01:00
Ivo Verberk 33f73a1e8e Short identifiers functionality
* Use go-memdb prefix indexer for lookups
* Add Job lookups
* Update state store with new ByIDPrefix get methods
* Call new methods when exact lookup fails or is not applicable
2015-12-19 21:55:28 +01:00
Ivo Verberk 1d294df9ec Bring up-to-date with master 2015-12-19 21:55:10 +01:00
Alex Dadgar 55cc8c61b3 fix 2015-12-18 12:17:50 -08:00
Alex Dadgar 31c3e12957 merge 2015-12-18 12:17:13 -08:00
Alex Dadgar 06e84205da Fix retry interval not applying sleep duration 2015-12-17 16:33:09 -08:00
Jakub Paweł Głazik a5954e1369 small refactor 2015-12-17 23:53:33 +01:00
Chris Hines 8483a0dd40 Sort config files as documented. 2015-12-15 02:05:25 -05:00
Alex Dadgar af0e9b1477 Merge pull request #585 from hashicorp/b-config-oboe
Check length 0 (no configs) instead of 1 (some configs)
2015-12-14 17:58:55 -08:00
Chris Bednarski 40d2eb0628 Check length 0 (no configs) instead of 1 (some configs) 2015-12-14 17:46:52 -08:00
Chris Hines e600f4ef19 Use minimum OS specific path.
This change ensures LoadConfig and LoadConfigDir report consistent paths to files and those paths use the appropriate path separator for the target OS. Note that LoadConfigDir constructs paths with filepath.Join, which calls filepath.Clean, which calls filepath.FromSlash.
2015-12-14 14:59:19 -05:00
Ivo Verberk acbbaf3e78 Allow lookups based on short identifiers
This change introduces the ability to specify identifiers for jobs,
allocs, evals and nodes on the command line with as little as one
character, provided that it uniquely identifies the resource. An error
with the possible results will be provided when the short identifier
has multiple results.
2015-12-12 18:28:20 +01:00
Jakub Paweł Głazik fb961939ae Sort output of agent-info 2015-12-12 13:39:16 +01:00
Alex Dadgar b943c6e278 Remove all calls to the default logger 2015-12-11 15:02:13 -08:00
Chris Bednarski 188b495ffe Merge pull request #557 from hashicorp/b-config-test-windows
Fix a failing test on windows because of / vs. \ in string comparison
2015-12-10 15:29:40 -08:00
Chris Bednarski 545f0ff120 Move raw_exec enabled into the DevMode config block 2015-12-10 15:24:21 -08:00
Chris Bednarski a86e62b6cc Use filepath.FromSlash so the test uses platform-specific path separators 2015-12-10 12:22:41 -08:00
Chris Bednarski b85b5dbf9d Added message when no configuration files are loaded 2015-12-09 15:50:18 -08:00
Alex Dadgar 7c76e8eca3 Merge pull request #527 from asteris-llc/master
Add cluster join command line options and configuration options
2015-12-09 13:14:00 -08:00
Chris Bednarski ed4160f6fe Merge pull request #536 from hashicorp/f-log-config-files
Log the list of config files loaded when starting the nomad agent
2015-12-09 12:18:46 -08:00
Chris Bednarski 3a8a30c7d8 Merge pull request #535 from hashicorp/f-warn-unused-config
Warn the user when they specify a config file / folder that doesn't add any configuration options
2015-12-09 12:10:19 -08:00
Chris Aubuchon e13dc345be Indicate which configuration option failed to parse properly 2015-12-09 13:07:36 -06:00
Chris Aubuchon 157baabb67 Move retryJoin error channel to Command structure 2015-12-09 09:57:54 -06:00
Alex Dadgar f8dff3bab0 Merge pull request #526 from ChrisHines/windows-agent
command/agent: fix tests on Windows
2015-12-08 19:11:08 -08:00
Diptanu Choudhury aeb68bb9e6 Merge pull request #548 from hooklift/x-code-clean-up
Cleans up some code.
2015-12-09 01:26:37 +01:00
Camilo Aguilar 225db55be6 Addresses Go lint suggestions 2015-12-08 19:05:15 -05:00
Camilo Aguilar 2b2777d2fd Sets default syslog facility
As advertised by documentation.
2015-12-08 18:57:06 -05:00
Chris Bednarski 02be0eeb36 Add test to verify order 2015-12-04 17:12:47 -08:00
Chris Bednarski c2a52270a7 Rename ConfigFiles field to Files so there's less stutter when used as config.Files 2015-12-04 16:59:04 -08:00
Chris Bednarski 4b52a370f9 Log the list of config files loaded when starting the nomad agent 2015-12-04 16:52:17 -08:00
Chris Bednarski e5fd0d1d62 Warn the user when they specify a config file / folder that doesn't add any configuration options 2015-12-02 23:22:18 -08:00
Chris Aubuchon 3a58bae865 Restore AtlasConfig 2015-12-02 18:40:30 -06:00
Chris Aubuchon baf0b54037 `30 * time.Second` -> `"30s"` in DefaultConfig 2015-12-02 16:05:05 -06:00
Chris Aubuchon ad9971cc02 Set defaults for `retry_max` and `retry_interval` options 2015-12-02 15:50:57 -06:00
Chris Aubuchon 62e11bddd7 Add cluster join command line options and configuration options 2015-12-02 13:55:29 -06:00
Chris Hines c20e9bff26 Do not leak listeners in test. 2015-12-02 13:59:27 -05:00
Chris Hines b05610a24d Work around bugs in package `net` in Go < 1.6. 2015-12-02 13:57:40 -05:00
Ryan Uber deba4009b4 Merge pull request #520 from hashicorp/f-atlas
agent: apply merges for atlas config
2015-11-30 15:33:07 -08:00
Ryan Uber 4d0322de99 agent: apply merges for atlas config 2015-11-30 15:21:50 -08:00
Diptanu Choudhury 9139078241 Updated the example nomad job spec to use task group name in the service name 2015-11-26 23:27:33 -08:00
Ryan Uber 714450c6a5 website: document regions endpoint 2015-11-24 09:38:07 -08:00
Ryan Uber a230a70cc7 nomad: testing region list 2015-11-23 22:27:07 -08:00
Ryan Uber ad6b55a37a nomad: support listing regions 2015-11-23 22:27:03 -08:00
Alex Dadgar f84fc88b60 Register gob type and remove slicetype 2015-11-18 15:26:38 -08:00
Diptanu Choudhury 1672252226 Autogenerating names of service 2015-11-17 16:05:03 -08:00
Diptanu Choudhury eb19967ce4 Added the parsling logic for service blocks 2015-11-17 15:13:25 -08:00
Diptanu Choudhury f8ce6fb901 Added the example for service block 2015-11-17 15:13:25 -08:00
Diptanu Choudhury 03ec9e980c Merge pull request #415 from hashicorp/f-port-labels
Implemented Port Labeling and Driver Configurations
2015-11-16 22:37:21 -05:00
Alex Dadgar fcdca39c5e fix arg check 2015-11-16 18:44:37 -08:00
Alex Dadgar 1f0022ce75 Review fixes 2015-11-16 18:37:38 -08:00
Alex Dadgar 907d3c2bb6 Add docs 2015-11-16 18:36:13 -08:00
Alex Dadgar 5b41f0bbf0 Get rid of incorrect length check 2015-11-16 18:21:51 -08:00
Alex Dadgar 86f30492ec Display task information 2015-11-16 18:09:00 -08:00
Diptanu Choudhury b083a3f307 Fixed the parsing and encoding logic 2015-11-16 13:10:57 -08:00
Diptanu Choudhury 0126c80961 Adding the port hcl object to example 2015-11-16 13:10:57 -08:00
Mitchell Hashimoto 9b2b6cd44f command/agent: use new HCL API 2015-11-09 11:49:27 -08:00
Alex Dadgar f210fcd1a6 Merge pull request #380 from hashicorp/f-daemonize
Improve spawn-daemon and Nomad Client usage of it
2015-11-04 16:44:50 -08:00
Alex Dadgar 81140f8787 Check if the PID is alive instead of heartbeating through modify time 2015-11-04 14:50:44 -08:00
Alex Dadgar 5562fc7672 Create Spawn pkg that handles IPC with the spawn-daemon and update exec_linux to use that 2015-11-02 20:28:37 -08:00
Diptanu Choudhury 1f4593c4d3 Fixed the restart policy syntax 2015-11-02 17:30:41 -08:00
Diptanu Choudhury 8133aa413a Fixed grammer of comment 2015-10-30 21:06:56 -07:00
Diptanu Choudhury c883f9496a Added support for parsing restart blocks 2015-10-30 15:51:39 -07:00
Diptanu Choudhury c0d37ce58c Setting the default network interface for dev mode only in Linux and Darwin 2015-10-29 17:03:54 -07:00
Alex Dadgar f2bbc0dd6b Merge pull request #362 from gregory-m/node-gc-conf
Configure Node GC Threshold
2015-10-29 15:45:57 -07:00
Alex Dadgar ec2367baec Cleanup exec_linux, force cgroups, check for systemd and update the Open() api 2015-10-29 15:26:35 -07:00
Gregory Man 8f178b54d3 Added node_gc_threshold configuration option
Close #333
2015-10-29 15:58:21 +02:00
Gregory Man af4e123a89 Fix local interface name on OS X 2015-10-29 14:30:26 +02:00
Alex Dadgar 5b1d6ed985 Refactor spawn-daemon so it can be used by all OSes and make it write exit code to a file 2015-10-28 16:23:33 -07:00
Kenjiro Nakayama e688dc3826 Set default network interface rather than eth0 for non-dev mode, and use loopback device for dev mode by default 2015-10-28 02:03:48 +09:00
Gregory Man 1af62592c1 Sort server-members output using name and tags 2015-10-23 21:33:18 +03:00
Abhishek Chanda 70dab4ba6a Show node attribute in node-status
Adds node attributes to the node-status command when a single
node ID is passed
2015-10-22 10:34:21 +00:00
Ivo Verberk c6e1b13b51 Fix vet warnings 2015-10-07 12:26:58 +02:00
Chris Bednarski c479e76da5 Merge pull request #203 from hashicorp/b-init-redis-port
Change to the default redis port and use docker port mapping
2015-10-06 00:36:38 -07:00