This project is mirrored from https://gitee.com/mirrors/nomad.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
- 06 Apr, 2020 5 commits
-
-
Tim Gross authored
-
Tim Gross authored
The `Job.Deregister` call will block on the client CSI controller RPCs while the alloc still exists on the Nomad client node. So we need to make the volume claim reaping async from the `Job.Deregister`. This allows `nomad job stop` to return immediately. In order to make this work, this changeset changes the volume GC so that the GC jobs are on a by-volume basis rather than a by-job basis; we won't have to query the (possibly deleted) job at the time of volume GC. We smuggle the volume ID and whether it's a purge into the GC eval ID the same way we smuggled the job ID previously.
-
Tim Gross authored
The CSI plugins uses the external volume ID for all operations, but the Client CSI RPCs uses the Nomad volume ID (human-friendly) for the mount paths. Pass the External ID as an arg in the RPC call so that the unpublish workflows have it without calling back to the server to find the external ID. The controller CSI plugins need the CSI node ID (or in other words, the storage provider's view of node ID like the EC2 instance ID), not the Nomad node ID, to determine how to detach the external volume.
-
Tim Gross authored
-
Mahmood Ali authored
Authenticate alloc/exec websocket requests
-
- 03 Apr, 2020 28 commits
-
-
Michael Lange authored
UI Configurable Page Sizes
-
Lang Martin authored
* nomad/state/state_store: error message copy/paste error * nomad/structs/structs: add a VolumeEval to the JobDeregisterResponse * nomad/job_endpoint: synchronously, volumeClaimReap on job Deregister * nomad/core_sched: make volumeClaimReap available without a CoreSched * nomad/job_endpoint: Deregister return early if the job is missing * nomad/job_endpoint_test: job Deregistion is idempotent * nomad/core_sched: conditionally ignore alloc status in volumeClaimReap * nomad/job_endpoint: volumeClaimReap all allocations, even running * nomad/core_sched_test: extra argument to collectClaimsToGCImpl * nomad/job_endpoint: job deregistration is not idempotent
-
Mahmood Ali authored
tests: deflake TestAutopilot_RollingUpdate
-
Mahmood Ali authored
I hypothesize that the flakiness in rolling update is due to shutting down s3 server before s4 is properly added as a voter. The chain of the flakiness is as follows: 1. Bootstrap with s1, s2, s3 2. Add s4 3. Wait for servers to register with 3 voting peers * But we already have 3 voters (s1, s2, and s3) * s4 is added as a non-voter in Raft v3 and must wait until autopilot promots it 4. Test proceeds without s4 being a voter 5. s3 shutdown 6. cluster changes stall due to leader election and too many pending configuration changes (e.g. removing s3 from raft, promoting s4). Here, I have the test wait until s4 is marked as a voter before shutting down s3, so we don't have too many configuration changes at once. In https://circleci.com/gh/hashicorp/nomad/57092, I noticed the following events: ``` TestAutopilot_RollingUpdate: autopilot_test.go:204: adding server s4 TestAutopilot_RollingUpdate: testlog.go:34: 2020-04-03T20:08:19.789Z [INFO] nomad/serf.g...
-
Tim Gross authored
When `nomad job inspect` encodes the response, if the decoded JSON from the API doesn't exactly match the API struct, the field value will be omitted even if it has a value. We only want the JSON struct tag to `omitempty`.
-
Tim Gross authored
This changeset: * adds eval status to the error messages emitted when we have placement failure in tests. The implementation here isn't quite perfect but it's a lot better than "condition not met". * enforces the ordering of teardown of the CSI test * doesn't pass the purge flag to one of the two CSI tests, so that we exercise both code paths.
-
Mahmood Ali authored
-
Mahmood Ali authored
-
Buck Doyle authored
-
Buck Doyle authored
-
Buck Doyle authored
These are more things that are already covered elsewhere.
-
Buck Doyle authored
This only needs to check that the token is sent, the rest of the assertions were covered by the previous test.
-
Buck Doyle authored
-
Buck Doyle authored
Most tests bypass setting the token via the UI, instead choosing to set it in localStorage directly, because the acceptance tests for the token UI are sufficient to exercise that part of the UI, so this speeds up the test a bit.
-
Buck Doyle authored
-
Buck Doyle authored
This is a minimal implementation that closes #7463. It doesn’t include true support for moving around within the command to edit using arrow keys because it gets too complex when managing wrapping at the edge of the terminal. Instead, arrow keys are ignored. It also ignores ^A and ^E, which are cursor manipulations that pose similar problems to arrow keys. It does support ^U, which deletes the entire command. It also allows a command to be pasted, which was previously unsupported. This is accomplished by migrating from Xterm.js’s onKey handler to onData, which is recommended here: https://github.com/xtermjs/xterm.js/issues/2673#issuecomment-574897733 onData is a higher-level handler that issues events with the final interpreted data instead of the individual key events. That means the processing in this PR has changed from inspecting DOM key events to inspecting their ASCII equivalents, which I’ve extracted into a utility dicti...
-
Mahmood Ali authored
Have the UI send the authentication websocket handshake message.
-
Mahmood Ali authored
The javascript Websocket API doesn't support setting custom headers (e.g. `X-Nomad-Token`). This change adds support for having an authentication handshake message: clients can set `ws_handshake` URL query parameter to true and send a single handshake message with auth token first before any other mssage. This is a backward compatible change: it does not affect nomad CLI path, as it doesn't set `ws_handshake` parameter.
-
Seth Hoenig authored
docs: add connect with TLS consul in changelog
-
Seth Hoenig authored
-
Seth Hoenig authored
connect: set consul TLS options on envoy bootstrap
-
Tim Gross authored
-
Drew Bailey authored
make placement of filter and sinks stanzas clearer
-
Mahmood Ali authored
Tweak declared hcl key casing in structs
-
Drew Bailey authored
Co-Authored-By:
Mahmood Ali <mahmood@hashicorp.com>
-
Drew Bailey authored
-
Mahmood Ali authored
This is not a change in behavior, hcl key matching is case insensitive as desmonstrated in `command.agent/TestConfig_Parse`
-
Mahmood Ali authored
-
- 02 Apr, 2020 7 commits
-
-
Michael Lange authored
-
Seth Hoenig authored
docs: add documentation for proxy.expose configuration
-
Seth Hoenig authored
-
Michael Lange authored
This effectively overrides Bulma's default field layout tweaks at different breakpoints. This includes going from flex to block and different font-sizes.
-
Michael Lange authored
The "default" order values as set by Bulma are different for different breakpoints. Since this wasn't considering breakpoints, it resulted in the unexpected reordering of pagination elements as different page widths. Turns out removing this property gives us what we want.
-
Tim Gross authored
Summarizes the internal RFCs for plugins and volume lifecycles.
-
Tim Gross authored
If a volume-claiming alloc stops and the CSI Node plugin that serves that alloc's volumes is missing, there's no way for the allocrunner hook to send the `NodeUnpublish` and `NodeUnstage` RPCs. This changeset addresses this issue with a redesign of the client-side for CSI. Rather than unmounting in the alloc runner hook, the alloc runner hook will simply exit. When the server gets the `Node.UpdateAlloc` for the terminal allocation that had a volume claim, it creates a volume claim GC job. This job will made client RPCs to a new node plugin RPC endpoint, and only once that succeeds, move on to making the client RPCs to the controller plugin. If the node plugin is unavailable, the GC job will fail and be requeued.
-