-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Backport of Multiple instances of a periodic job are run simultaneously, when prohibit_overlap is true into release/1.3.x #16659
Commits on Jan 30, 2023
-
Rename fields on proxyConfig (#15541)
* Change api Fields for expose and paths * Add changelog entry * changelog: add deprecation notes about connect fields * api: minor style tweaks --------- Co-authored-by: Seth Hoenig <shoenig@duck.com>
Configuration menu - View commit details
-
Copy full SHA for 340ad2d - Browse repository at this point
Copy the full SHA 340ad2dView commit details -
Ensure infra_image gets proper label used for reconciliation (#15898)
* Ensure infra_image gets proper label used for reconciliation Currently infra containers are not cleaned up as part of the dangling container cleanup routine. The reason is that Nomad checks if a container is a Nomad owned container by verifying the existence of the: `com.hashicorp.nomad.alloc_id` label. Ensure we set this label on the infra container as well. * fix unit test * changelog: add entry --------- Co-authored-by: Seth Hoenig <shoenig@duck.com>
Configuration menu - View commit details
-
Copy full SHA for f9d835f - Browse repository at this point
Copy the full SHA f9d835fView commit details -
docs: Add info about variable item key name restrictions (#15966)
While you can use any string value for a variable Item's key name using characters that are outside of the set [unicode.Letter, unicode.Number,`_`] will require the `index` function for direct access.
Configuration menu - View commit details
-
Copy full SHA for ef3a42c - Browse repository at this point
Copy the full SHA ef3a42cView commit details -
Configuration menu - View commit details
-
Copy full SHA for a5f568a - Browse repository at this point
Copy the full SHA a5f568aView commit details -
Configuration menu - View commit details
-
Copy full SHA for ca597f7 - Browse repository at this point
Copy the full SHA ca597f7View commit details
Commits on Jan 31, 2023
-
Configuration menu - View commit details
-
Copy full SHA for ecf5a51 - Browse repository at this point
Copy the full SHA ecf5a51View commit details -
docker: set force=true on remove image to handle images referenced by…
… multiple tags (#15962) * docker: set force=true on remove image to handle images referenced by multiple tags This PR changes our call of docker client RemoveImage() to RemoveImageExtended with the Force=true option set. This fixes a bug where an image referenced by more than one tag could never be garbage collected by Nomad. The Force option only applies to stopped containers; it does not affect running workloads. * docker: add note about image_delay and multiple tags
Configuration menu - View commit details
-
Copy full SHA for 7f3bdd4 - Browse repository at this point
Copy the full SHA 7f3bdd4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a7a721 - Browse repository at this point
Copy the full SHA 4a7a721View commit details -
GC: ensure no leakage of evaluations for batch jobs. (#15097)
Prior to 2409f72 the code compared the modification index of a job to itself. Afterwards, the code compared the creation index of the job to itself. In either case there should never be a case of re-parenting of allocs causing the evaluation to trivially always result in false, which leads to unreclaimable memory. Prior to this change allocations and evaluations for batch jobs were never garbage collected until the batch job was explicitly stopped. The new `batch_eval_gc_threshold` server configuration controls how often they are collected. The default threshold is `24h`.
Configuration menu - View commit details
-
Copy full SHA for 2285432 - Browse repository at this point
Copy the full SHA 2285432View commit details -
Configuration menu - View commit details
-
Copy full SHA for c2491e9 - Browse repository at this point
Copy the full SHA c2491e9View commit details -
docs: removed extra 'end' in one of the code blocks in template stanz…
…a documentation (#15963)
Configuration menu - View commit details
-
Copy full SHA for 813fd6e - Browse repository at this point
Copy the full SHA 813fd6eView commit details -
* refact: add conditional error handling * test: test conditional logic
Configuration menu - View commit details
-
Copy full SHA for b8bd6bb - Browse repository at this point
Copy the full SHA b8bd6bbView commit details -
Configuration menu - View commit details
-
Copy full SHA for e23e366 - Browse repository at this point
Copy the full SHA e23e366View commit details -
e2e: remove unused consulacls directory (#15995)
This pile was deprecated when we starting using HCP Consul for e2e instead of standing up our own cluster and managing Consuls at test runtime.
Configuration menu - View commit details
-
Copy full SHA for d375f60 - Browse repository at this point
Copy the full SHA d375f60View commit details
Commits on Feb 1, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 0052596 - Browse repository at this point
Copy the full SHA 0052596View commit details -
acl: fix a bug in token creation when parsing expiration TTLs. (#15999)
The ACL token decoding was not correctly handling time duration syntax such as "1h" which forced people to use the nanosecond representation via the HTTP API. The change adds an unmarshal function which allows this syntax to be used, along with other styles correctly.
Configuration menu - View commit details
-
Copy full SHA for e4e4dc1 - Browse repository at this point
Copy the full SHA e4e4dc1View commit details -
consul: restore consul token when reverting a job (#15996)
* consul: reset consul token on job during registration of a reversion * e2e: add test for reverting a job with a consul service * cl: fixup cl entry
Configuration menu - View commit details
-
Copy full SHA for fcc6cfa - Browse repository at this point
Copy the full SHA fcc6cfaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 67f8f22 - Browse repository at this point
Copy the full SHA 67f8f22View commit details -
Configuration menu - View commit details
-
Copy full SHA for 00d5749 - Browse repository at this point
Copy the full SHA 00d5749View commit details -
Configuration menu - View commit details
-
Copy full SHA for 41065ef - Browse repository at this point
Copy the full SHA 41065efView commit details
Commits on Feb 2, 2023
-
Allow wildcard datacenters to be specified in job file (#11170)
Also allows for default value of `datacenters = ["*"]`
Configuration menu - View commit details
-
Copy full SHA for 46f3977 - Browse repository at this point
Copy the full SHA 46f3977View commit details -
client: Add option to enable hairpinMode on Nomad bridge (#15961)
* Add `bridge_network_hairpin_mode` client config setting * Add node attribute: `nomad.bridge.hairpin_mode` * Changed format string to use `%q` to escape user provided data * Add test to validate template JSON for developer safety Co-authored-by: Daniel Bennett <dbennett@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 55df5af - Browse repository at this point
Copy the full SHA 55df5afView commit details -
[feat] Nomad Job Templates (#15746)
* Extend variables under the nomad path prefix to allow for job-templates (#15570) * Extend variables under the nomad path prefix to allow for job-templates * Add job-templates to error message hinting * RadioCard component for Job Templates (#15582) * chore: add * test: component API * ui: component template * refact: remove bc naming collission * styles: remove SASS var causing conflicts * Disallow specific variable at nomad/job-templates (#15681) * Disallows variables at exactly nomad/job-templates * idiomatic refactor * Expanding nomad job init to accept a template flag (#15571) * Adding a string flag for templates on job init * data-down actions-up version of a custom template editor within variable * Dont force grid on job template editor * list-templates flag started * Correctly slice from end of path name * Pre-review cleanup * Variable form acceptance test for job template editing * Some review cleanup * List Job templates test * Example from template test * Using must.assertions instead of require etc * ui: add choose template button (#15596) * ui: add new routes * chore: update file directory * ui: add choose template button * test: button and page navigation * refact: update var name * ui: use `Button` component from `HDS` (#15607) * ui: integrate buttons * refact: remove helper * ui: remove icons on non-tertiary buttons * refact: update normalize method for key/value pairs (#15612) * `revert`: `onCancel` for `JobDefinition` The `onCancel` method isn't included in the component API for `JobEditor` and the primary cancel behavior exists outside of the component. With the exception of the `JobDefinition` page where we include this button in the top right of the component instead of next to the `Plan` button. * style: increase button size * style: keep lime green * ui: select template (#15613) * ui: deprecate unused component * ui: deprecate tests * ui: jobs.run.templates.index * ui: update logic to handle templates * refact: revert key/value changes * style: padding for cards + buttons * temp: fixtures for mirage testing * Revert "refact: revert key/value changes" This reverts commit 124e95d. * ui: guard template for unsaved job * ui: handle reading template variable * Revert "refact: update normalize method for key/value pairs (#15612)" This reverts commit 6f5ffc9. * revert: remove test fixtures * revert: prettier problems * refact: test doesnt need filter expression * styling: button sizes and responsive cards * refact: remove route guarding * ui: update variable adapter * refact: remove model editing behavior * refact: model should query variables to populate editor * ui: clear qp on exit * refact: cleanup deprecated API * refact: query all namespaces * refact: deprecate action * ui: rely on collection * refact: patch deprecate transition API * refact: patch test to expect namespace qp * styling: padding, conditionals * ui: flashMessage on 404 * test: update for o(n+1) query * ui: create new job template (#15744) * refact: remove unused code * refact: add type safety * test: select template flow * test: add data-test attrs * chore: remove dead code * test: create new job flow * ui: add create button * ui: create job template * refact: no need for wildcard * refact: record instead of delete * styling: spacing * ui: add error handling and form validation to job create template (#15767) * ui: handle server side errors * ui: show error to prevent duplicate * refact: conditional namespace * ui: save as template flow (#15787) * bug: patches failing tests associated with `pretender` (#15812) * refact: update assertion * refact: test set-up * ui: job templates manager view (#15815) * ui: manager list view * test: edit flow * refact: deprecate column-helper * ui: template edit and delete flow (#15823) * ui: manager list view * refact: update title * refact: update permissions * ui: template edit page * bug: typo * refact: update toast messages * bug: clear selections on exit (#15827) * bug: clear controllers on exit * test: mirage config changes (#15828) * refact: deprecate column-helper * style: update z-index for HDS * Revert "style: update z-index for HDS" This reverts commit d3d87ce. * refact: update delete button * refact: edit redirect * refact: patch reactivity issues * styling: fixed width * refact: override defaults * styling: edit text causing overflow * styling: add inline text Co-authored-by: Phil Renaud <phil.renaud@hashicorp.com> * bug: edit `text` to `template` Co-authored-by: Phil Renaud <phil.renaud@hashicorp.com> Co-authored-by: Phil Renaud <phil.renaud@hashicorp.com> * test: delete flow job templates (#15896) * refact: edit names * bug: set correct ref to store * chore: trim whitespace: * test: delete flow * bug: reactively update view (#15904) * Initialized default jobs (#15856) * Initialized default jobs * More jobs scaffolded * Better commenting on a couple example job specs * Adapter doing the work * fall back to epic config * Label format helper and custom serialization logic * Test updates to account for a never-empty state * Test suite uses settled and maintain RecordArray in adapter return * Updates to hello-world and variables example jobspecs * Parameterized job gets optional payload output * Formatting changes for param and service discovery job templates * Multi-group service discovery job * Basic test for default templates (#15965) * Basic test for default templates * Percy snapshot for manage page * Some late-breaking design changes * Some copy edits to the header paragraphs for job templates (#15967) * Added some init options for job templates (#15994) * Async method for populating default job templates from the variable adapter --------- Co-authored-by: Jai <41024828+ChaiWithJai@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 697bd87 - Browse repository at this point
Copy the full SHA 697bd87View commit details -
bootstrap: upgrade golangci-lint in prep for go1.20 (#16024)
This PR updates golangci-lint to work better with go1.20 - the previous version would cause in oom on 'make check'.
Configuration menu - View commit details
-
Copy full SHA for d881b23 - Browse repository at this point
Copy the full SHA d881b23View commit details -
cli: Fix a panic in
deployment status
when scheduling is slow (#16011)If a deployment fails, the `deployment status` command can get a nil deployment when it checks for a rollback deployment if there isn't one (or at least not one at the time of the query). Fix the panic.
Configuration menu - View commit details
-
Copy full SHA for 89f4f2b - Browse repository at this point
Copy the full SHA 89f4f2bView commit details -
Change
job init
default to example.nomad.hcl
and recommend in docs (#15997) recommend .nomad.hcl for job files instead of .nomad (without .hcl) * nomad job init -> example.nomad.hcl * update docs
Configuration menu - View commit details
-
Copy full SHA for 9f583f5 - Browse repository at this point
Copy the full SHA 9f583f5View commit details -
Add option to expose workload token to task (#15755)
Add `identity` jobspec block to expose workload identity tokens to tasks. --------- Co-authored-by: Anders <mail@anars.dk> Co-authored-by: Tim Gross <tgross@hashicorp.com> Co-authored-by: Michael Schurter <mschurter@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for fe4ff5b - Browse repository at this point
Copy the full SHA fe4ff5bView commit details -
Update networking_bridge_linux.go (#16025)
* Removed line from previous implementation * remove import Co-authored-by: Luiz Aoqui <luiz@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 3225e5c - Browse repository at this point
Copy the full SHA 3225e5cView commit details -
docs: how to troubleshoot consul connect envoy (#15908)
* largely a doc-ification of this commit message: d476780 this doesn't spell out all the possible failure modes, but should be a good starting point for folks. * connect: add doc link to envoy bootstrap error * add Unwrap() to RecoverableError mainly for easier testing
Configuration menu - View commit details
-
Copy full SHA for fad28e4 - Browse repository at this point
Copy the full SHA fad28e4View commit details -
System and sysbatch jobs always have zero index (#16030)
Service jobs should have unique allocation Names, derived from the Job.ID. System jobs do not have unique allocation Names because the index is intended to indicated the instance out of a desired count size. Because system jobs do not have an explicit count but the results are based on the targeted nodes, the index is less informative and this was intentionally omitted from the original design. Update docs to make it clear that NOMAD_ALLOC_INDEX is always zero for system/sysbatch jobs Validate that `volume.per_alloc` is incompatible with system/sysbatch jobs. System and sysbatch jobs always have a `NOMAD_ALLOC_INDEX` of 0. So interpolation via `per_alloc` will not work as soon as there's more than one allocation placed. Validate against this on job submission.
Configuration menu - View commit details
-
Copy full SHA for ba20138 - Browse repository at this point
Copy the full SHA ba20138View commit details -
* Demoable state * Demo mirage color * Label as a block with foreground and background colours * Test mock updates * Go test updated * Documentation update for label support
Configuration menu - View commit details
-
Copy full SHA for d71fc95 - Browse repository at this point
Copy the full SHA d71fc95View commit details -
Configuration menu - View commit details
-
Copy full SHA for ece6f33 - Browse repository at this point
Copy the full SHA ece6f33View commit details -
docs: fix outstanding content conformance errors (#16040)
Bryce Kalow authoredFeb 2, 2023 Configuration menu - View commit details
-
Copy full SHA for 84ed398 - Browse repository at this point
Copy the full SHA 84ed398View commit details
Commits on Feb 3, 2023
-
build: update to go1.20 (#16029)
* build: update to go1.20 * build: use stringy go1.20 in circle yaml * tests: handle new x509 certificate error structure in go1.20 * cl: add cl entry
Configuration menu - View commit details
-
Copy full SHA for 535795a - Browse repository at this point
Copy the full SHA 535795aView commit details -
scheduler: move utils into files specific to their scheduler type (#1…
…6051) Many of the functions in the `utils.go` file are specific to a particular scheduler, and very few of them have guards (or even names) that help avoid misuse with features specific to a given scheduler type. Move these functions (and their tests) into files specific to their scheduler type without any functionality changes to make it clear which bits go with what.
Configuration menu - View commit details
-
Copy full SHA for 2d7d633 - Browse repository at this point
Copy the full SHA 2d7d633View commit details
Commits on Feb 6, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 88c7ca6 - Browse repository at this point
Copy the full SHA 88c7ca6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0fd82e0 - Browse repository at this point
Copy the full SHA 0fd82e0View commit details -
build: update hc-install and golangci-lint tools (#16067)
Update golangci-lint again, and also hc-install which now has a real version.
Configuration menu - View commit details
-
Copy full SHA for a4254f9 - Browse repository at this point
Copy the full SHA a4254f9View commit details -
Task API via Unix Domain Socket (#15864)
This change introduces the Task API: a portable way for tasks to access Nomad's HTTP API. This particular implementation uses a Unix Domain Socket and, unlike the agent's HTTP API, always requires authentication even if ACLs are disabled. This PR contains the core feature and tests but followup work is required for the following TODO items: - Docs - might do in a followup since dynamic node metadata / task api / workload id all need to interlink - Unit tests for auth middleware - Caching for auth middleware - Rate limiting on negative lookups for auth middleware --------- Co-authored-by: Seth Hoenig <shoenig@duck.com>
Configuration menu - View commit details
-
Copy full SHA for 9bab96e - Browse repository at this point
Copy the full SHA 9bab96eView commit details -
docker: disable driver when running as non-root on cgroups v2 hosts (#…
…16063) * docker: disable driver when running as non-root on cgroups v2 hosts This PR modifies the docker driver to behave like exec when being run as a non-root user on a host machine with cgroups v2 enabled. Because of how cpu resources are managed by the Nomad client, the nomad agent must be run as root to manage docker-created cgroups. * cl: update cl
Configuration menu - View commit details
-
Copy full SHA for 34c8246 - Browse repository at this point
Copy the full SHA 34c8246View commit details -
website: add content-check command (#16064)
Bryce Kalow authoredFeb 6, 2023 Configuration menu - View commit details
-
Copy full SHA for 3685a3b - Browse repository at this point
Copy the full SHA 3685a3bView commit details
Commits on Feb 7, 2023
-
Add
-json
and-t
flag fornomad acl token create
command (#16055)Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg>
Configuration menu - View commit details
-
Copy full SHA for b19df69 - Browse repository at this point
Copy the full SHA b19df69View commit details -
e2e: mark framework package as deprecated (#16075)
Nothing more motivating than lots of deprecation warnings to get some code refactored.
Configuration menu - View commit details
-
Copy full SHA for c4957b0 - Browse repository at this point
Copy the full SHA c4957b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for b667c58 - Browse repository at this point
Copy the full SHA b667c58View commit details -
Configuration menu - View commit details
-
Copy full SHA for ae26057 - Browse repository at this point
Copy the full SHA ae26057View commit details -
cli: remove deprecated
keyring
andkeygen
commands (#16068)These command were marked as deprecated in 1.4.0 with intent to remove in 1.5.0. Remove them and clean up the docs.
Configuration menu - View commit details
-
Copy full SHA for 6145cdc - Browse repository at this point
Copy the full SHA 6145cdcView commit details -
main: remove deprecated uses of rand.Seed (#16074)
* main: remove deprecated uses of rand.Seed go1.20 deprecates rand.Seed, and seeds the rand package automatically. Remove cases where we seed the random package, and cleanup the one case where we intentionally create a known random source. * cl: update cl * mod: update go mod
Configuration menu - View commit details
-
Copy full SHA for b21aeb8 - Browse repository at this point
Copy the full SHA b21aeb8View commit details -
doc: specifiy the default output is of json format for `nomad quota i…
…nspect` command (#15984) Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg>
Configuration menu - View commit details
-
Copy full SHA for b9d8e3d - Browse repository at this point
Copy the full SHA b9d8e3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for ab3550f - Browse repository at this point
Copy the full SHA ab3550fView commit details -
Add sprig for command templates (#9053)
Adds the sprig functions to the template funcmap prepended with `sprig_` to match the behavior in consul-template
Configuration menu - View commit details
-
Copy full SHA for 0a3cadb - Browse repository at this point
Copy the full SHA 0a3cadbView commit details -
docs: update example
license_path
(#16082)In #13374 we updated the commented-out `license_path` in the packaged example configuration file to match the existing documentation. Although this config value was commented-out, it was reported that changing the value was confusing. Update the commented-out line to the previous value and update the documented examples to match that. This matches most of the examples for Consul/Vault licensing as well. I've double-checked the tutorials and it looks like it'd been left on the previous value there, so no additional work to be done.
Configuration menu - View commit details
-
Copy full SHA for 4fd3c17 - Browse repository at this point
Copy the full SHA 4fd3c17View commit details -
Dynamic Node Metadata (#15844)
Fixes #14617 Dynamic Node Metadata allows Nomad users, and their jobs, to update Node metadata through an API. Currently Node metadata is only reloaded when a Client agent is restarted. Includes new UI for editing metadata as well. --------- Co-authored-by: Phil Renaud <phil.renaud@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 6809b0b - Browse repository at this point
Copy the full SHA 6809b0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e55060 - Browse repository at this point
Copy the full SHA 4e55060View commit details
Commits on Feb 8, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 2cd32b9 - Browse repository at this point
Copy the full SHA 2cd32b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d735e7 - Browse repository at this point
Copy the full SHA 3d735e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for cd0d06a - Browse repository at this point
Copy the full SHA cd0d06aView commit details -
Merge pull request #16092 from hashicorp/release/1.5.0-beta.1
Release/1.5.0 beta.1
Configuration menu - View commit details
-
Copy full SHA for 41b23af - Browse repository at this point
Copy the full SHA 41b23afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 214e5b9 - Browse repository at this point
Copy the full SHA 214e5b9View commit details -
users: eliminate LookupGroupId and its one use case (#16093)
This PR deletes the user.LookupGroupId function as it was only being used in a single test case, and its value was not important to the test.
Configuration menu - View commit details
-
Copy full SHA for 77ea4e3 - Browse repository at this point
Copy the full SHA 77ea4e3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7798fe3 - Browse repository at this point
Copy the full SHA 7798fe3View commit details
Commits on Feb 9, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4aca687 - Browse repository at this point
Copy the full SHA 4aca687View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d6d680 - Browse repository at this point
Copy the full SHA 8d6d680View commit details -
cli: fix use of the sanitized method type for the login command. (#16105
Configuration menu - View commit details
-
Copy full SHA for 70101ae - Browse repository at this point
Copy the full SHA 70101aeView commit details -
users: create cache for user lookups (#16100)
* users: create cache for user lookups This PR introduces a global cache for OS user lookups. This should relieve pressure on the OS domain/directory lookups, which would be queried more now that Task API exists. Hits are cached for 1 hour, and misses are cached for 1 minute. These values are fairly arbitrary - we can tweak them if there is any reason to. Closes #16010 * users: delete expired negative entry from cache
Configuration menu - View commit details
-
Copy full SHA for 87e7ea3 - Browse repository at this point
Copy the full SHA 87e7ea3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 88cd93b - Browse repository at this point
Copy the full SHA 88cd93bView commit details -
acl: never return auth errors for
ACL.Bootstrap
RPC (#16108)In #15901 we introduced pre-forwarding authentication for RPCs so that we can grab the identity for rate metrics. The `ACL.Bootstrap` RPC is an unauthenticated endpoint, so any error message from authentication is not particularly useful. This would be harmless, but if you try to bootstrap with your `NOMAD_TOKEN` already set (perhaps because you were talking to another cluster previously from the same shell session), you'll get an authentication error instead of just having the token be ignored. This is a regression from the existing behavior, so have this endpoint ignore auth errors the same way we do for every other unauthenticated endpoint (ex `Status.Peers`)
Configuration menu - View commit details
-
Copy full SHA for d1dcf10 - Browse repository at this point
Copy the full SHA d1dcf10View commit details -
tests: reduce timeout on test-api (#16107)
Sometimes GHA gets wedged, and there is no need to waste 30 minutes on a job that usually takes < 3. e.g. stuck loading module cache, which is out of our control https://github.com/hashicorp/nomad/actions/runs/4135098558/jobs/7147128419
Configuration menu - View commit details
-
Copy full SHA for e1dfadd - Browse repository at this point
Copy the full SHA e1dfaddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fbc74d - Browse repository at this point
Copy the full SHA 3fbc74dView commit details -
Configuration menu - View commit details
-
Copy full SHA for bbf9b07 - Browse repository at this point
Copy the full SHA bbf9b07View commit details -
Configuration menu - View commit details
-
Copy full SHA for 05f6fbc - Browse repository at this point
Copy the full SHA 05f6fbcView commit details
Commits on Feb 10, 2023
-
Workload Identity, Task API, and Dynamic Node Metadata Docs (#16102)
* docs: add dynamic node metadata api docs Also update all paths in the client API docs to explicitly state the `/v1/` prefix. We're inconsistent about that, but I think it's better to display the full path than to only show the fragment. If we ever do a `/v2/` whether or not we explicitly state `/v1/` in our docs won't be our greatest concern. * docs: add task-api docs
Configuration menu - View commit details
-
Copy full SHA for eabb47e - Browse repository at this point
Copy the full SHA eabb47eView commit details -
tests: don't mutate global structs in core scheduler tests (#16120)
Some of the core scheduler tests need the maximum batch size for writes to be smaller than the usual `structs.MaxUUIDsPerWriteRequest`. But they do so by unsafely modifying the global struct, which creates test flakes in other tests. Modify the functions under test to take a batch size parameter. Production code will pass the global while the tests can inject smaller values. Turn the `structs.MaxUUIDsPerWriteRequest` into a constant, and add a semgrep rule for avoiding this kind of thing in the future.
Configuration menu - View commit details
-
Copy full SHA for ce614bf - Browse repository at this point
Copy the full SHA ce614bfView commit details -
eval broker: use write lock when reaping cancelable evals (#16112)
The eval broker's `Cancelable` method used by the cancelable eval reaper mutates the slice of cancelable evals by removing a batch at a time from the slice. But this method unsafely uses a read lock despite this mutation. Under normal workloads this is likely to be safe but when the eval broker is under the heavy load this feature is intended to fix, we're likely to have a race condition. Switch this to a write lock, like the other locks that mutate the eval broker state. This changeset also adjusts the timeout to allow poorly-sized Actions runners more time to schedule the appropriate goroutines. The test has also been updated to use `shoenig/test/wait` so we can have sensible reporting of the results rather than just a timeout error when things go wrong.
Configuration menu - View commit details
-
Copy full SHA for 1eabc36 - Browse repository at this point
Copy the full SHA 1eabc36View commit details -
chore: Convert assets from bindatafs to go embeds (#16066)
* Convert assets from bindatafs to go embeds * Add command/asset to "uninteresting" list for missing test check * Remove generate-examples target * Update paths in tests
Configuration menu - View commit details
-
Copy full SHA for 7da6ade - Browse repository at this point
Copy the full SHA 7da6adeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 146f459 - Browse repository at this point
Copy the full SHA 146f459View commit details -
[core] Do not start the plugin loader on non-clients (#16111)
The plugin loader loads task and device driver plugins which are not used on server nodes.
Configuration menu - View commit details
-
Copy full SHA for e803d7c - Browse repository at this point
Copy the full SHA e803d7cView commit details -
Add information about template to interpolation page (#10807)
* Add information about templating using `env` function to refer to environment variables.
Configuration menu - View commit details
-
Copy full SHA for 2989302 - Browse repository at this point
Copy the full SHA 2989302View commit details
Commits on Feb 13, 2023
-
git: ignore .fleet directory (#16144)
New IDE from jetbrains gets its own config directory.
Configuration menu - View commit details
-
Copy full SHA for 26607b4 - Browse repository at this point
Copy the full SHA 26607b4View commit details -
deps: update go-set, go-landlock (#16146)
Made a breaking change in go-set (String() signature), need to update both these dependencies together and also fix a thing in structs.go
Configuration menu - View commit details
-
Copy full SHA for c35af4c - Browse repository at this point
Copy the full SHA c35af4cView commit details -
build(deps): bump json5 from 1.0.1 to 1.0.2 in /website (#15694)
Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2. - [Release notes](https://github.com/json5/json5/releases) - [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md) - [Commits](json5/json5@v1.0.1...v1.0.2) --- updated-dependencies: - dependency-name: json5 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for e7f8957 - Browse repository at this point
Copy the full SHA e7f8957View commit details -
build(deps): bump decode-uri-component from 0.2.0 to 0.2.2 in /website (
#15470) Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2. - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](SamVerschueren/decode-uri-component@v0.2.0...v0.2.2) --- updated-dependencies: - dependency-name: decode-uri-component dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for c4c4eec - Browse repository at this point
Copy the full SHA c4c4eecView commit details -
build(deps): bump github.com/docker/cli (#16141)
Bumps [github.com/docker/cli](https://github.com/docker/cli) from 20.10.23+incompatible to 23.0.1+incompatible. - [Release notes](https://github.com/docker/cli/releases) - [Commits](docker/cli@v20.10.23...v23.0.1) --- updated-dependencies: - dependency-name: github.com/docker/cli dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 1d5fafe - Browse repository at this point
Copy the full SHA 1d5fafeView commit details -
build(deps): bump google.golang.org/grpc from 1.52.0 to 1.53.0 (#16142)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.52.0 to 1.53.0. - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.52.0...v1.53.0) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for fc22c15 - Browse repository at this point
Copy the full SHA fc22c15View commit details -
build(deps): bump github.com/containernetworking/plugins (#16060)
Bumps [github.com/containernetworking/plugins](https://github.com/containernetworking/plugins) from 1.1.1 to 1.2.0. - [Release notes](https://github.com/containernetworking/plugins/releases) - [Commits](containernetworking/plugins@v1.1.1...v1.2.0) --- updated-dependencies: - dependency-name: github.com/containernetworking/plugins dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 25fd8ec - Browse repository at this point
Copy the full SHA 25fd8ecView commit details -
build(deps): bump github.com/shirou/gopsutil/v3 from 3.22.12 to 3.23.1 (
#16059) Bumps [github.com/shirou/gopsutil/v3](https://github.com/shirou/gopsutil) from 3.22.12 to 3.23.1. - [Release notes](https://github.com/shirou/gopsutil/releases) - [Commits](shirou/gopsutil@v3.22.12...v3.23.1) --- updated-dependencies: - dependency-name: github.com/shirou/gopsutil/v3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for b8616bf - Browse repository at this point
Copy the full SHA b8616bfView commit details -
Fix unbold header
Device Group Attributes
and remove unused var in ……func `nodeCSIVolumeNames` (#16138) * Fix unbold header and remove unused var in func Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg> * Add CHANGELOG file Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg> * Apply suggestions from review <Charlie Voiselle> --------- Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg> Co-authored-by: Charlie Voiselle <464492+angrycub@users.noreply.github.com> Co-authored-by: Tim Gross <tgross@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 6d27cee - Browse repository at this point
Copy the full SHA 6d27ceeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 24c236b - Browse repository at this point
Copy the full SHA 24c236bView commit details -
cni: handle multi-path cni_path when fingerprinting plugins (#16163)
This PR fixes the CNI plugin fingerprinter to take into account the fact that the cni_path config can be a multi-path (e.g. `/foo:/bar:/baz`). Accumulate plugins from each of the possible path elements. If scanning any of the named directory fails, the fingerprinter fails. Fixes #16083 No CL/BP - has not shipped yet.
Configuration menu - View commit details
-
Copy full SHA for c41ccc6 - Browse repository at this point
Copy the full SHA c41ccc6View commit details -
Add warnings to
var put
for non-alphanumeric keys. (#15933)* Warn when Items key isn't directly accessible Go template requires that map keys are alphanumeric for direct access using the dotted reference syntax. This warns users when they create keys that run afoul of this requirement. - cli: use regex to detect invalid indentifiers in var keys - test: fix slash in escape test case - api: share warning formatting function between API and CLI - ui: warn if var key has characters other than _, letter, or number --------- Co-authored-by: Charlie Voiselle <464492+angrycub@users.noreply.github.com> Co-authored-by: Luiz Aoqui <luiz@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for d0f9008 - Browse repository at this point
Copy the full SHA d0f9008View commit details -
Configuration menu - View commit details
-
Copy full SHA for ad35b0d - Browse repository at this point
Copy the full SHA ad35b0dView commit details
Commits on Feb 14, 2023
-
api: fix missing Node Status "disconnected" in API (#16166)
Pierre Cauchois authoredFeb 14, 2023 Configuration menu - View commit details
-
Copy full SHA for 1154c05 - Browse repository at this point
Copy the full SHA 1154c05View commit details -
artifact: protect against unbounded artifact decompression (1.5.0) (#…
…16151) * artifact: protect against unbounded artifact decompression Starting with 1.5.0, set defaut values for artifact decompression limits. artifact.decompression_size_limit (default "100GB") - the maximum amount of data that will be decompressed before triggering an error and cancelling the operation artifact.decompression_file_count_limit (default 4096) - the maximum number of files that will be decompressed before triggering an error and cancelling the operation. * artifact: assert limits cannot be nil in validation
Configuration menu - View commit details
-
Copy full SHA for 511d0c1 - Browse repository at this point
Copy the full SHA 511d0c1View commit details -
docs: clarify upgrade note on 1.4.0 panics (#16171)
The panic bug for upgrades with older servers that shipped in 1.4.0 was fixed in 1.4.1, which makes the versions described in the warning in the upgrade guide misleading. Clarify the upgrade guide.
Configuration menu - View commit details
-
Copy full SHA for 8373434 - Browse repository at this point
Copy the full SHA 8373434View commit details -
eventstream: Handle missing policy documents in event streams (#15495)
Fixes #15493 Co-authored-by: Tim Gross <tgross@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for fd011ce - Browse repository at this point
Copy the full SHA fd011ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a96f9e - Browse repository at this point
Copy the full SHA 1a96f9eView commit details -
docs: remove cores/memory beta label, update driver cpu docs (#16175)
* docs: remove cores/memory beta label, update driver cpu docs * docs: fixup cr stuff
Configuration menu - View commit details
-
Copy full SHA for 7ffb0b1 - Browse repository at this point
Copy the full SHA 7ffb0b1View commit details -
cgutil: handle panic from runc helper method (#16180)
This PR wraps the cgroups.IsCgroup2UnifiedMode() helper method from runc in a defer/recover block because it might panic in some cases. Upstream fix in: opencontainers/runc#3745 Closes #16179
Configuration menu - View commit details
-
Copy full SHA for 36a9886 - Browse repository at this point
Copy the full SHA 36a9886View commit details
Commits on Feb 15, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 82ccae2 - Browse repository at this point
Copy the full SHA 82ccae2View commit details -
cli:
fmt -check
should return early on diff (#16174)The `nomad fmt -check` command incorrectly writes to file because we didn't return before writing the file on a diff. Fix this bug and update the command internals to differentiate between the write-to-file and write-to-stdout code paths, which are activated by different combinations of options and flags. The docstring for the `-list` and `-write` flags is also unclear and can be easily misread to be the opposite of the actual behavior. Clarify this and fix up the docs to match. This changeset also refactors the tests quite a bit so as to make the test outputs clear when something is incorrect.
Configuration menu - View commit details
-
Copy full SHA for 68abcb8 - Browse repository at this point
Copy the full SHA 68abcb8View commit details
Commits on Feb 16, 2023
-
build(deps): bump github.com/containerd/containerd from 1.6.12 to 1.6…
….18 (#16198) Bumps [github.com/containerd/containerd](https://github.com/containerd/containerd) from 1.6.12 to 1.6.18. - [Release notes](https://github.com/containerd/containerd/releases) - [Changelog](https://github.com/containerd/containerd/blob/main/RELEASES.md) - [Commits](containerd/containerd@v1.6.12...v1.6.18) --- updated-dependencies: - dependency-name: github.com/containerd/containerd dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 26f8a95 - Browse repository at this point
Copy the full SHA 26f8a95View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d4ccf1 - Browse repository at this point
Copy the full SHA 7d4ccf1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6226e56 - Browse repository at this point
Copy the full SHA 6226e56View commit details -
fix test flake for RPC TLS enforcement test (#16199)
The RPC TLS enforcement test was frequently failing with broken connections. The most likely cause was that the tests started to run before the server had started its RPC server. Wait until it self-elects to ensure that the RPC server is up. This seems to have corrected the error; I ran this 3 times without a failure (even accounting for `gotestsum` retries). Also, fix a minor test bug that didn't impact the test but showed an incorrect usage for `Status.Ping.`
Configuration menu - View commit details
-
Copy full SHA for f9d611c - Browse repository at this point
Copy the full SHA f9d611cView commit details -
Minor post-1.5-beta1 API, code, and docs cleanups (#16193)
* api: return error on parse failure * docs: clarify anonymous policy with task api
Configuration menu - View commit details
-
Copy full SHA for 037823e - Browse repository at this point
Copy the full SHA 037823eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 38931c9 - Browse repository at this point
Copy the full SHA 38931c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebe4b51 - Browse repository at this point
Copy the full SHA ebe4b51View commit details
Commits on Feb 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 365ccf4 - Browse repository at this point
Copy the full SHA 365ccf4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 40f1ffb - Browse repository at this point
Copy the full SHA 40f1ffbView commit details -
acl: add validation to binding rule selector on upsert. (#16210)
* acl: add validation to binding rule selector on upsert. * docs: add more information on binding rule selector escaping.
Configuration menu - View commit details
-
Copy full SHA for 004ddb2 - Browse repository at this point
Copy the full SHA 004ddb2View commit details -
docs: clarify sysbatch supports count (#16205)
Also remove old version indicators. --------- Co-authored-by: Tim Gross <tgross@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 8c462ce - Browse repository at this point
Copy the full SHA 8c462ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for ed4ad3e - Browse repository at this point
Copy the full SHA ed4ad3eView commit details
Commits on Feb 20, 2023
-
E2E: add multi-home networking to test infrastructure (#16218)
Add an Elastic Network Interface (ENI) to each Linux host, on a secondary subnet we have provisioned in each AZ. Revise security groups as follows: * Split out client security groups from servers so that we can't have clients accidentally accessing serf addresses or other unexpected cross-talk. * Add new security groups for the secondary subnet that only allows communication within the security group so we can exercise behaviors with multiple IPs. This changeset doesn't include any Nomad configuration changes needed to take advantage of the extra network interface. I'll include those with testing for PR #16217.
Configuration menu - View commit details
-
Copy full SHA for 517ad9c - Browse repository at this point
Copy the full SHA 517ad9cView commit details
Commits on Feb 21, 2023
-
Task API / Dynamic Node Metadata E2E test fixes (#16219)
* taskapi: return Forbidden on bad credentials Prior to this change a "Server error" would be returned when ACLs are enabled which did not match when ACLs are disabled. * e2e: love love love datacenter wildcard default * e2e: skip windows nodes on linux only test The Logfs are a bit weird because they're most useful when converted to Printfs to make debugging the test much faster, but that makes CI noisy. In a perfect world Go would expose how many tests are being run and we could stream output live if there's only 1. For now I left these helpful lines in as basically glorified comments.
Configuration menu - View commit details
-
Copy full SHA for d5f0db8 - Browse repository at this point
Copy the full SHA d5f0db8View commit details
Commits on Feb 22, 2023
-
api: fix a panic and tweak some exported types (#16237)
This PR - fixes a panic in GetItems when looking up a variable that does not exist. - deprecates GetItems in favor of GetVariableItems which avoids returning a pointer to a map - deprecates ErrVariableNotFound in favor of ErrVariablePathNotFound which is an actual error type - does some minor code cleanup to make linters happier
Configuration menu - View commit details
-
Copy full SHA for 2a0dde3 - Browse repository at this point
Copy the full SHA 2a0dde3View commit details -
services: ensure task group is set on service hook (#16240)
This PR fixes a bug where the task group information was not being set on the serviceHook.AllocInfo struct, which is needed later on for calculating the CheckID of a nomad service check. The CheckID is calculated independently from multiple callsites, and the information being passed in must be consistent, including the group name. The workload.AllocInfo.Group was not set at this callsite, due to the bug fixed in this PR. https://github.com/hashicorp/nomad/blob/main/client/serviceregistration/nsd/nsd.go#L114
Configuration menu - View commit details
-
Copy full SHA for 30bcd51 - Browse repository at this point
Copy the full SHA 30bcd51View commit details -
Fix missing query parameter in job doc (#16233)
Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg>
Configuration menu - View commit details
-
Copy full SHA for 41e510a - Browse repository at this point
Copy the full SHA 41e510aView commit details -
build(deps): bump golang.org/x/net from 0.5.0 to 0.7.0 (#16220)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.5.0 to 0.7.0. - [Release notes](https://github.com/golang/net/releases) - [Commits](golang/net@v0.5.0...v0.7.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for a877fd9 - Browse repository at this point
Copy the full SHA a877fd9View commit details
Commits on Feb 23, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 1ff1132 - Browse repository at this point
Copy the full SHA 1ff1132View commit details -
agent: only reload HTTP servers that use TLS (#16250)
* agent: only reload HTTP servers that use TLS * shutdown task api before client and improve names Fixes #16239
Configuration menu - View commit details
-
Copy full SHA for 35e5772 - Browse repository at this point
Copy the full SHA 35e5772View commit details
Commits on Feb 27, 2023
-
CSI: fix potential state store corruptions (#16256)
The `CSIVolume` struct has references to allocations that are "denormalized"; we don't store them on the `CSIVolume` struct but hydrate them on read. Tests detecting potential state store corruptions found two locations where we're not copying the volume before denormalizing: * When garbage collecting CSI volume claims. * When checking if it's safe to force-deregister the volume. There are no known user-visible problems associated with these bugs but both have the potential of mutating volume claims outside of a FSM transaction. This changeset also cleans up state mutations in some CSI tests so as to avoid having working tests cover up potential future bugs.
Configuration menu - View commit details
-
Copy full SHA for 7c56fd5 - Browse repository at this point
Copy the full SHA 7c56fd5View commit details -
populate Nomad token for task runner update hooks (#16266)
The `TaskUpdateRequest` struct we send to task runner update hooks was not populating the Nomad token that we get from the task runner (which we do for the Vault token). This results in task runner hooks like the template hook overwriting the Nomad token with the zero value for the token. This causes in-place updates of a task to break templates (but not other uses that rely on identity but don't currently bother to update it, like the identity hook).
Configuration menu - View commit details
-
Copy full SHA for f619b0b - Browse repository at this point
Copy the full SHA f619b0bView commit details -
build/cli: Add BuildDate (#16216)
* build: add BuildDate to version info will be used in enterprise to compare to license expiration time * cli: multi-line version output, add BuildDate before: $ nomad version Nomad v1.4.3 (coolfakecommithashomgoshsuchacoolonewoww) after: $ nomad version Nomad v1.5.0-dev BuildDate 2023-02-17T19:29:26Z Revision coolfakecommithashomgoshsuchacoolonewoww compare consul: $ consul version Consul v1.14.4 Revision dae670fe Build Date 2023-01-26T15:47:10Z Protocol 2 spoken by default, blah blah blah... and vault: $ vault version Vault v1.12.3 (209b3dd99fe8ca320340d08c70cff5f620261f9b), built 2023-02-02T09:07:27Z * docs: update version command output
Configuration menu - View commit details
-
Copy full SHA for 4bdfe6d - Browse repository at this point
Copy the full SHA 4bdfe6dView commit details -
Accept Workload Identities for Client RPCs (#16254)
This change resolves policies for workload identities when calling Client RPCs. Previously only ACL tokens could be used for Client RPCs. Since the same cache is used for both bearer tokens (ACL and Workload ID), the token cache size was doubled. --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 542b23e - Browse repository at this point
Copy the full SHA 542b23eView commit details
Commits on Mar 1, 2023
-
Configuration menu - View commit details
-
Copy full SHA for c5d54ab - Browse repository at this point
Copy the full SHA c5d54abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0deb5c4 - Browse repository at this point
Copy the full SHA 0deb5c4View commit details -
Configuration menu - View commit details
-
Copy full SHA for b739144 - Browse repository at this point
Copy the full SHA b739144View commit details
Commits on Mar 2, 2023
-
Merge pull request #16284 from hashicorp/post-1.5.0-rc.1-release
admin: post 1.5.0 rc.1 release
Configuration menu - View commit details
-
Copy full SHA for cf5b14c - Browse repository at this point
Copy the full SHA cf5b14cView commit details -
Configuration menu - View commit details
-
Copy full SHA for ba6d20b - Browse repository at this point
Copy the full SHA ba6d20bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 01d049e - Browse repository at this point
Copy the full SHA 01d049eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4734c02 - Browse repository at this point
Copy the full SHA 4734c02View commit details -
Configuration menu - View commit details
-
Copy full SHA for 646a82b - Browse repository at this point
Copy the full SHA 646a82bView commit details -
client: use RPC address and not serf after initial Consul discovery (#…
…16217) Nomad servers can advertise independent IP addresses for `serf` and `rpc`. Somewhat unexpectedly, the `serf` address is also used for both Serf and server-to-server RPC communication (including Raft RPC). The address advertised for `rpc` is only used for client-to-server RPC. This split was introduced intentionally in Nomad 0.8. When clients are using Consul discovery for connecting to servers, they get an initial discovery set from Consul and use the correct `rpc` tag in Consul to get a list of adddresses for servers. The client then makes a `Status.Peers` RPC to get the list of those servers that are raft peers. But this endpoint is shared between servers and clients, and provides the address used for Raft. Most of the time this is harmless because servers will bind on 0.0.0.0 anyways., But in topologies where servers are on a private network and clients are on separate subnets (or even public subnets), clients will make initial contact with the server to get the list of peers but then populate their local server set with unreachable addresses. Cluster administrators can work around this problem by using `server_join` with specific IP addresses (or DNS names), because the `Node.UpdateStatus` endpoint returns the correct set of RPC addresses when updating the node. So once a client has registered, it will get the correct set of RPC addresses. This changeset updates the client logic to query `Status.Members` instead of `Status.Peers`, and then extract the correctly advertised address and port from the response body.
Configuration menu - View commit details
-
Copy full SHA for a9bb8e9 - Browse repository at this point
Copy the full SHA a9bb8e9View commit details -
tests: add functionality to skip a test if it's not running in CI and…
… not with root user (#16222)
Configuration menu - View commit details
-
Copy full SHA for fbd0dcb - Browse repository at this point
Copy the full SHA fbd0dcbView commit details -
deps: update go-plugin to 1.4.9 (#16292)
Fixes #16288. An earlier version of `go-plugin` introduced a warning log if `SecureConfig` is unset. For Nomad and other applications that have "internal" `go-plugin` consumers where the application runs itself as a plugin, this causes spurious warn-level logs. For Nomad in particular this means every task driver and logmon invocation emits the log, which is our primary operation. The change was reverted upstream, so this changeset picks up the reverted version.
Configuration menu - View commit details
-
Copy full SHA for 9102a24 - Browse repository at this point
Copy the full SHA 9102a24View commit details -
handle
FSM.Apply
errors inraftApply
(#16287)The signature of the `raftApply` function requires that the caller unwrap the first returned value (the response from `FSM.Apply`) to see if it's an error. This puts the burden on the caller to remember to check two different places for errors, and we've done so inconsistently. Update `raftApply` to do the unwrapping for us and return any `FSM.Apply` error as the error value. Similar work was done in Consul in hashicorp/consul#9991. This eliminates some boilerplate and surfaces a few minor bugs in the process: * job deregistrations of already-GC'd jobs were still emitting evals * reconcile job summaries does not return scheduler errors * node updates did not report errors associated with inconsistent service discovery or CSI plugin states Note that although _most_ of the `FSM.Apply` functions return only errors (which makes it tempting to remove the first return value entirely), there are few that return `bool` for some reason and Variables relies on the response value for proper CAS checking.
Configuration menu - View commit details
-
Copy full SHA for bbd41c8 - Browse repository at this point
Copy the full SHA bbd41c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for f88e3b0 - Browse repository at this point
Copy the full SHA f88e3b0View commit details -
Merge pull request #16293 from hashicorp/post-1.5.0-release
admin: Post 1.5.0 release
Configuration menu - View commit details
-
Copy full SHA for f553dc8 - Browse repository at this point
Copy the full SHA f553dc8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 273b76a - Browse repository at this point
Copy the full SHA 273b76aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f89910d - Browse repository at this point
Copy the full SHA f89910dView commit details
Commits on Mar 3, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 64d27c6 - Browse repository at this point
Copy the full SHA 64d27c6View commit details -
api: add new test case for force-leave (#16260)
Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg>
Configuration menu - View commit details
-
Copy full SHA for 2ec6575 - Browse repository at this point
Copy the full SHA 2ec6575View commit details -
service: fix regression in task access to list/read endpoint (#16316)
When native service discovery was added, we used the node secret as the auth token. Once Workload Identity was added in Nomad 1.4.x we needed to use the claim token for `template` blocks, and so we allowed valid claims to bypass the ACL policy check to preserve the existing behavior. (Invalid claims are still rejected, so this didn't widen any security boundary.) In reworking authentication for 1.5.0, we unintentionally removed this bypass. For WIs without a policy attached to their job, everything works as expected because the resulting `acl.ACL` is nil. But once a policy is attached to the job the `acl.ACL` is no longer nil and this causes permissions errors. Fix the regression by adding back the bypass for valid claims. In future work, we should strongly consider getting turning the implicit policies into real `ACLPolicy` objects (even if not stored in state) so that we don't have these kind of brittle exceptions to the auth code.
Configuration menu - View commit details
-
Copy full SHA for a4f7926 - Browse repository at this point
Copy the full SHA a4f7926View commit details -
cli: use shared logic for resolving job prefix (#16306)
Several `nomad job` subcommands had duplicate or slightly similar logic for resolving a job ID from a CLI argument prefix, while others did not have this functionality at all. This commit pulls the shared logic to the command Meta and updates all `nomad job` subcommands to use it.
Configuration menu - View commit details
-
Copy full SHA for 0e824d3 - Browse repository at this point
Copy the full SHA 0e824d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 158d6a9 - Browse repository at this point
Copy the full SHA 158d6a9View commit details -
remove backcompat support for non-atomic job registration (#16305)
In Nomad 0.12.1 we introduced atomic job registration/deregistration, where the new eval was written in the same raft entry. Backwards-compatibility checks were supposed to have been removed in Nomad 1.1.0, but we missed that. This is long safe to remove.
Configuration menu - View commit details
-
Copy full SHA for ceed255 - Browse repository at this point
Copy the full SHA ceed255View commit details -
api: set last index and request time on alloc stop (#16319)
Some of the methods in `Allocations()` incorrectly use the `putQuery` in API calls where `put` is more appropriate since they are not reading information back. These methods are also not returning request metadata such as `LastIndex` back to callers, which can be useful to have in some scenarios. They also provide poor developer experience as they take an `*api.Allocation` struct when only the allocation ID is necessary. This can lead consumers to make unnecessary API calls to fetch the full allocation. Fixing these problems require updating the methods' signatures so they take `*WriteOptions` instead of `*QueryOptions` and return `*WriteMeta`, but this is a breaking change that requires advanced notice to consumers. This commit adds a future breaking change notice and also fixes the `Stop` method so it properly returns request metadata in a backwards compatible way.
Configuration menu - View commit details
-
Copy full SHA for b24dddc - Browse repository at this point
Copy the full SHA b24dddcView commit details -
Configuration menu - View commit details
-
Copy full SHA for b07af57 - Browse repository at this point
Copy the full SHA b07af57View commit details
Commits on Mar 6, 2023
-
[ui] Fix: Wildcard-datacenter system/sysbatch jobs stopped showing cl…
…ient links/chart (#16274) * Fix for wildcard DC sys/sysbatch jobs * A few extra modules for wildcard DC in systemish jobs * doesMatchPattern moved to its own util as match-glob * DC glob lookup using matchGlob * PR feedback
Configuration menu - View commit details
-
Copy full SHA for a57f97e - Browse repository at this point
Copy the full SHA a57f97eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 78bcd32 - Browse repository at this point
Copy the full SHA 78bcd32View commit details -
Configuration menu - View commit details
-
Copy full SHA for 605f155 - Browse repository at this point
Copy the full SHA 605f155View commit details
Commits on Mar 7, 2023
-
scheduler: correctly detect inplace update with wildcard datacenters (#…
…16362) Wildcard datacenters introduced a bug where a job with any wildcard datacenters will always be treated as a destructive update when we check whether a datacenter has been removed from the jobspec. Includes updating the helper so that callers don't have to loop over the job's datacenters.
Configuration menu - View commit details
-
Copy full SHA for 6f52a91 - Browse repository at this point
Copy the full SHA 6f52a91View commit details -
Configuration menu - View commit details
-
Copy full SHA for 03d6a8c - Browse repository at this point
Copy the full SHA 03d6a8cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 003a567 - Browse repository at this point
Copy the full SHA 003a567View commit details -
Configuration menu - View commit details
-
Copy full SHA for b677ec7 - Browse repository at this point
Copy the full SHA b677ec7View commit details -
docker: fix bug where network pause containers would be erroneously r…
…econciled (#16352) * docker: fix bug where network pause containers would be erroneously gc'd * docker: cl: thread context from driver into pause container restoration
Configuration menu - View commit details
-
Copy full SHA for b3f7559 - Browse repository at this point
Copy the full SHA b3f7559View commit details -
e2e: fix permissions on nomad data directory (#16376)
This PR updates the provisioning step where we create /opt/nomad/data, such that it is with 0700 permissions in line with our security guidance.
Configuration menu - View commit details
-
Copy full SHA for 24af468 - Browse repository at this point
Copy the full SHA 24af468View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d5740b - Browse repository at this point
Copy the full SHA 5d5740bView commit details
Commits on Mar 8, 2023
-
build(deps): bump golang.org/x/crypto from 0.5.0 to 0.7.0 (#16337)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.5.0 to 0.7.0. - [Release notes](https://github.com/golang/crypto/releases) - [Commits](golang/crypto@v0.5.0...v0.7.0) --- updated-dependencies: - dependency-name: golang.org/x/crypto dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 37e9eca - Browse repository at this point
Copy the full SHA 37e9ecaView commit details -
Update ioutil library references to os and io respectively for command (
#16329) No user facing changes so I assume no change log is required
Configuration menu - View commit details
-
Copy full SHA for 99f43c1 - Browse repository at this point
Copy the full SHA 99f43c1View commit details -
Update ioutil library references to os and io respectively for e2e he…
…lper nomad (#16332) No user facing changes so I assume no change log is required
Configuration menu - View commit details
-
Copy full SHA for 962b65f - Browse repository at this point
Copy the full SHA 962b65fView commit details -
Update ioutil library references to os and io respectively for API an…
…d Plugins package (#16330) No user facing changes so I assume no change log is required
Configuration menu - View commit details
-
Copy full SHA for 0e74431 - Browse repository at this point
Copy the full SHA 0e74431View commit details -
deps: Update ioutil library references to os and io respectively for …
…drivers package (#16331) * Update ioutil library references to os and io respectively for drivers package No user facing changes so I assume no change log is required * Fix failing tests
Configuration menu - View commit details
-
Copy full SHA for 3160c76 - Browse repository at this point
Copy the full SHA 3160c76View commit details -
deps: Update ioutil deprecated library references to os and io respec…
…tively in the client package (#16318) * Update ioutil deprecated library references to os and io respectively * Deal with the errors produced. Add error handling to filEntry info Add error handling to info
Configuration menu - View commit details
-
Copy full SHA for 48e7d70 - Browse repository at this point
Copy the full SHA 48e7d70View commit details -
[ui] Fix: New toast notifications no longer last forever (#16384)
* Removes an errant console.log and corrects a default sticky=true on toast notifications * Default so no need to refault
Configuration menu - View commit details
-
Copy full SHA for fcd51dc - Browse repository at this point
Copy the full SHA fcd51dcView commit details -
e2e: setup nomad permissions correctly (client vs. server) (#16399)
This PR configures - server nodes with a systemd unit running the agent as the nomad service user - client nodes with a root owned nomad data directory
Configuration menu - View commit details
-
Copy full SHA for 40ab325 - Browse repository at this point
Copy the full SHA 40ab325View commit details -
client: disable running artifact downloader as nobody (#16375)
* client: disable running artifact downloader as nobody This PR reverts a change from Nomad 1.5 where artifact downloads were executed as the nobody user on Linux systems. This was done as an attempt to improve the security model of artifact downloading where third party tools such as git or mercurial would be run as the root user with all the security implications thereof. However, doing so conflicts with Nomad's own advice for securing the Client data directory - which when setup with the recommended directory permissions structure prevents artifact downloads from working as intended. Artifact downloads are at least still now executed as a child process of the Nomad agent, and on modern Linux systems make use of the kernel Landlock feature for limiting filesystem access of the child process. * docs: update upgrade guide for 1.5.1 sandboxing * docs: add cl * docs: add title to upgrade guide fix
Configuration menu - View commit details
-
Copy full SHA for 95359b8 - Browse repository at this point
Copy the full SHA 95359b8View commit details
Commits on Mar 9, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 1227615 - Browse repository at this point
Copy the full SHA 1227615View commit details -
scheduling: prevent self-collision in dynamic port network offerings (#…
…16401) When the scheduler tries to find a placement for a new allocation, it iterates over a subset of nodes. For each node, we populate a `NetworkIndex` bitmap with the ports of all existing allocations and any other allocations already proposed as part of this same evaluation via its `SetAllocs` method. Then we make an "ask" of the `NetworkIndex` in `AssignPorts` for any ports we need and receive an "offer" in return. The offer will include both static ports and any dynamic port assignments. The `AssignPorts` method was written to support group networks, and it shares code that selects dynamic ports with the original `AssignTaskNetwork` code. `AssignTaskNetwork` can request multiple ports from the bitmap at a time. But `AssignPorts` requests them one at a time and does not account for possible collisions, and doesn't return an error in that case. What happens next varies: 1. If the scheduler doesn't place the allocation on that node, the port conflict is thrown away and there's no problem. 2. If the node is picked and this is the only allocation (or last allocation), the plan applier will reject the plan when it calls `SetAllocs`, as we'd expect. 3. If the node is picked and there are additional allocations in the same eval that iterate over the same node, their call to `SetAllocs` will detect the impossible state and the node will be rejected. This can have the puzzling behavior where a second task group for the job without any networking at all can hit a port collision error! It looks like this bug has existed since we implemented group networks, but there are several factors that add up to making the issue rare for many users yet frustratingly frequent for others: * You're more likely to hit this bug the more tightly packed your range for dynamic ports is. With 12000 ports in the range by default, many clusters can avoid this for a long time. * You're more likely to hit case (3) for jobs with lots of allocations or if a scheduler has to iterate over a large number of nodes, such as with system jobs, jobs with `spread` blocks, or (sometimes) jobs using `unique` constraints. For unlucky combinations of these factors, it's possible that case (3) happens repeatedly, preventing scheduling of a given job until a client state change (ex. restarting the agent so all its allocations are rescheduled elsewhere) re-opens the range of dynamic ports available. This changeset: * Fixes the bug by accounting for collisions in dynamic port selection in `AssignPorts`. * Adds test coverage for `AssignPorts`, expands coverage of this case for the deprecated `AssignTaskNetwork`, and tightens the dynamic port range in a scheduler test for spread scheduling to more easily detect this kind of problem in the future. * Adds a `String()` method to `Bitmap` so that any future "screaming" log lines have a human-readable list of used ports.
Configuration menu - View commit details
-
Copy full SHA for c36d3bd - Browse repository at this point
Copy the full SHA c36d3bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f7ad3b - Browse repository at this point
Copy the full SHA 0f7ad3bView commit details -
docs: update content-conformance package (#16412)
Bryce Kalow authoredMar 9, 2023 Configuration menu - View commit details
-
Copy full SHA for 1dd3203 - Browse repository at this point
Copy the full SHA 1dd3203View commit details -
cli: remove hard requirement on
list-jobs
(#16380)Most job subcommands allow for job ID prefix match as a convenience functionality so users don't have to type the full job ID. But this introduces a hard ACL requirement that the token used to run these commands have the `list-jobs` permission, even if the token has enough permission to execute the basic command action and the user passed an exact job ID. This change softens this requirement by not failing the prefix match in case the request results in a permission denied error and instead using the information passed by the user directly.
Configuration menu - View commit details
-
Copy full SHA for 4fdb5c4 - Browse repository at this point
Copy the full SHA 4fdb5c4View commit details -
env/aws: update ec2 cpu info data (#16417)
Update AWS EC2 CPU tables using `make ec2info`
Configuration menu - View commit details
-
Copy full SHA for 730adaa - Browse repository at this point
Copy the full SHA 730adaaView commit details
Commits on Mar 10, 2023
-
cli: add
-json
and-t
flag foralloc checks
command (#16405)* cli: add -json flag to alloc checks for completion * CLI: Expand test to include testing the json flag for allocation checks * Documentation: Add the checks command * Documentation: Add example for alloc check command * Update website/content/docs/commands/alloc/checks.mdx Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * CLI: Add template flag to alloc checks command * Update website/content/docs/commands/alloc/checks.mdx Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * CLI: Extend test to include -t flag for alloc checks * func: add changelog for added flags to alloc checks * cli[doc]: Make usage section on alloc checks clearer * Update website/content/docs/commands/alloc/checks.mdx Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * Delete modd.conf * cli[doc]: add -t flag to command description for alloc checks --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com> Co-authored-by: Juanita De La Cuesta Morales <juanita.delacuestamorales@juanita.delacuestamorales-LHQ7X0QG9X>
Configuration menu - View commit details
-
Copy full SHA for 712c669 - Browse repository at this point
Copy the full SHA 712c669View commit details -
allocrunner: fix health check monitoring for Consul services (#16402)
Services must be interpolated to replace runtime variables before they can be compared against the values returned by Consul.
Configuration menu - View commit details
-
Copy full SHA for 419c4bf - Browse repository at this point
Copy the full SHA 419c4bfView commit details -
e2e fixes: cli output, timing issue, and some cleanups (#16418)
* e2e: job expects alloc to run until stopped * e2e: fix case changed by #16306 * e2e: couldn't find a bug but improved test+jobspecs
Configuration menu - View commit details
-
Copy full SHA for 9fefc18 - Browse repository at this point
Copy the full SHA 9fefc18View commit details
Commits on Mar 13, 2023
-
acl: prevent privilege escalation via workload identity
ACL policies can be associated with a job so that the job's Workload Identity can have expanded access to other policy objects, including other variables. Policies set on the variables the job automatically has access to were ignored, but this includes policies with `deny` capabilities. Additionally, when resolving claims for a workload identity without any attached policies, the `ResolveClaims` method returned a `nil` ACL object, which is treated similarly to a management token. While this was safe in Nomad 1.4.x, when the workload identity token was exposed to the task via the `identity` block, this allows a user with `submit-job` capabilities to escalate their privileges. We originally implemented automatic workload access to Variables as a separate code path in the Variables RPC endpoint so that we don't have to generate on-the-fly policies that blow up the ACL policy cache. This is fairly brittle but also the behavior around wildcard paths in policies different from the rest of our ACL polices, which is hard to reason about. Add an `ACLClaim` parameter to the `AllowVariableOperation` method so that we can push all this logic into the `acl` package and the behavior can be consistent. This will allow a `deny` policy to override automatic access (and probably speed up checks of non-automatic variable access).
Configuration menu - View commit details
-
Copy full SHA for d0ddd5e - Browse repository at this point
Copy the full SHA d0ddd5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 669495b - Browse repository at this point
Copy the full SHA 669495bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c91cc8 - Browse repository at this point
Copy the full SHA 6c91cc8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 172f49f - Browse repository at this point
Copy the full SHA 172f49fView commit details -
Merge pull request #16445 from hashicorp/post-1.5.1-release
Post 1.5.1 release
Configuration menu - View commit details
-
Copy full SHA for 2a0e45b - Browse repository at this point
Copy the full SHA 2a0e45bView commit details -
deps: remove replace statement for go-discover (#16304)
Which we no longer need since we no longer have consul as a dependency
Configuration menu - View commit details
-
Copy full SHA for a34925f - Browse repository at this point
Copy the full SHA a34925fView commit details -
scheduler: add simple benchmark for tasksUpdated (#16422)
In preperation for some refactoring to tasksUpdated, add a benchmark to the old code so it's easy to compare with the changes, making sure nothing goes off the rails for performance.
Configuration menu - View commit details
-
Copy full SHA for 12688f2 - Browse repository at this point
Copy the full SHA 12688f2View commit details -
scheduler: refactor system util tests (#16416)
The tests for the system allocs reconciling code path (`diffSystemAllocs`) include many impossible test environments, such as passing allocs for the wrong node into the function. This makes the test assertions nonsensible for use in walking yourself through the correct behavior. I've pulled this changeset out of PR #16097 so that we can merge these improvements and revisit the right approach to fix the problem in #16097 with less urgency now that the PFNR bug fix has been merged. This changeset breaks up a couple of tests, expands test coverage, and makes test assertions more clear. It also corrects one bit of production code that behaves fine in production because of canonicalization, but forces us to remember to set values in tests to compensate.
Configuration menu - View commit details
-
Copy full SHA for b6d6cc4 - Browse repository at this point
Copy the full SHA b6d6cc4View commit details -
build(deps): bump go.uber.org/goleak from 1.2.0 to 1.2.1 (#16439)
Bumps [go.uber.org/goleak](https://github.com/uber-go/goleak) from 1.2.0 to 1.2.1. - [Release notes](https://github.com/uber-go/goleak/releases) - [Changelog](https://github.com/uber-go/goleak/blob/master/CHANGELOG.md) - [Commits](uber-go/goleak@v1.2.0...v1.2.1) --- updated-dependencies: - dependency-name: go.uber.org/goleak dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 5febe9b - Browse repository at this point
Copy the full SHA 5febe9bView commit details -
build: update from go1.20.1 to go1.20.2 (#16427)
* build: update from go1.20.1 to go1.20.2 Note that the CVE fixed in go1.20.2 does *not* impact Nomad. golang/go#58647
Configuration menu - View commit details
-
Copy full SHA for 5f37b2f - Browse repository at this point
Copy the full SHA 5f37b2fView commit details -
doc: Update
nomad fmt
doc to run against non-deprecated HCL2 jobspe……c only (#16435) Signed-off-by: dttung2905 <ttdao.2015@accountancy.smu.edu.sg>
Configuration menu - View commit details
-
Copy full SHA for f3a527b - Browse repository at this point
Copy the full SHA f3a527bView commit details -
Configuration menu - View commit details
-
Copy full SHA for b2c8732 - Browse repository at this point
Copy the full SHA b2c8732View commit details -
acl: update job eval requirement to
submit-job
(#16463)The job evaluate endpoint creates a new evaluation for the job which is a write operation. This change modifies the necessary capability from `read-job` to `submit-job` to better reflect this.
Configuration menu - View commit details
-
Copy full SHA for f2bfbfa - Browse repository at this point
Copy the full SHA f2bfbfaView commit details -
cgv1: do not disable cpuset manager if reserved interface already exi…
…sts (#16467) * cgv1: do not disable cpuset manager if reserved interface already exists This PR fixes a bug where restarting a Nomad Client on a machine using cgroups v1 (e.g. Ubuntu 20.04) would cause the cpuset cgroups manager to disable itself. This is being caused by incorrectly interpreting a "file exists" error as problematic when ensuring the reserved cpuset exists. If we get a "file exists" error, that just means the Client was likely restarted. Note that a machine reboot would fix the issue - the groups interfaces are ephemoral. * cl: add cl
Configuration menu - View commit details
-
Copy full SHA for a42a33f - Browse repository at this point
Copy the full SHA a42a33fView commit details
Commits on Mar 14, 2023
-
agent: trim space when parsing X-Nomad-Token header (#16469)
Our auth token parsing code trims space around the `Authorization` header but not around `X-Nomad-Token`. When using the UI, it's easy to accidentally introduce a leading or trailing space, which results in spurious authentication errors. Trim the space at the HTTP server.
Configuration menu - View commit details
-
Copy full SHA for c70bbd1 - Browse repository at this point
Copy the full SHA c70bbd1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 101e5d0 - Browse repository at this point
Copy the full SHA 101e5d0View commit details -
cli: Add
-json
and-t
flags tonamespace status
command (#16442)* cli: Add and flag to namespace status command * Update command/namespace_status.go Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * cli: update tests for namespace status command to use must --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for eaf22f2 - Browse repository at this point
Copy the full SHA eaf22f2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 362f752 - Browse repository at this point
Copy the full SHA 362f752View commit details -
Merge pull request #16484 from hashicorp/tunzor-patch-1
Update for enterprise trial wording and link
Configuration menu - View commit details
-
Copy full SHA for d5e0130 - Browse repository at this point
Copy the full SHA d5e0130View commit details -
scheduler: annotate tasksUpdated with reason and purge DeepEquals (#1…
…6421) * scheduler: annotate tasksUpdated with reason and purge DeepEquals * cr: move opaque into helper * cr: swap affinity/spread hashing for slice equal * contributing: update checklist-jobspec with notes about struct methods * cr: add more cases to wait config equal method * cr: use reflect when comparing envoy config blocks * cl: add cl
Configuration menu - View commit details
-
Copy full SHA for 1a01e87 - Browse repository at this point
Copy the full SHA 1a01e87View commit details
Commits on Mar 15, 2023
-
Configuration menu - View commit details
-
Copy full SHA for bdf468c - Browse repository at this point
Copy the full SHA bdf468cView commit details -
test: set BuildDate in default TestAgent config (#16499)
so enterprise tests don't fail due to the default zero time
Configuration menu - View commit details
-
Copy full SHA for e4963b9 - Browse repository at this point
Copy the full SHA e4963b9View commit details
Commits on Mar 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 323abf7 - Browse repository at this point
Copy the full SHA 323abf7View commit details -
artifact: use specific version link for zipbomb artifact (#16513)
Fix the e2e case where we download the go-getter bomb.zip test file, which is being removed on main. We can still get it from the version tag - yay git!
Configuration menu - View commit details
-
Copy full SHA for 098650e - Browse repository at this point
Copy the full SHA 098650eView commit details -
artifact: do not set process attributes on darwin (#16511)
This PR fixes the non-root macOS use case where artifact downloads stopped working. It seems setting a Credential on a SysProcAttr used by the exec package will always cause fork/exec to fail - even if the credential contains our own UID/GID or nil UID/GID. Technically we do not need to set this as the child process will inherit the parent UID/GID anyway... and not setting it makes things work again ... /shrug
Configuration menu - View commit details
-
Copy full SHA for ea727df - Browse repository at this point
Copy the full SHA ea727dfView commit details -
docs: dispatch_payload and jobs api docs had some weirdness (#16514)
* docs: dispatch_payload docs had some weirdness Docs said "Examples" when there was only 1 example. Not sure what the floating "to" in the description was for. * docs: missing a heading level on jobs api docs
Configuration menu - View commit details
-
Copy full SHA for 46ae102 - Browse repository at this point
Copy the full SHA 46ae102View commit details -
artifact: git needs more files for private repositories (#16508)
* landlock: git needs more files for private repositories This PR fixes artifact downloading so that git may work when cloning from private repositories. It needs - file read on /etc/passwd - dir read on /root/.ssh - file write on /root/.ssh/known_hosts Add these rules to the landlock rules for the artifact sandbox. * cr: use nonexistent instead of devnull Co-authored-by: Michael Schurter <mschurter@hashicorp.com> * cr: use go-homdir for looking up home directory * pr: pull go-homedir into explicit require * cr: fixup homedir tests in homeless root cases * cl: fix root test for real --------- Co-authored-by: Michael Schurter <mschurter@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 995ab41 - Browse repository at this point
Copy the full SHA 995ab41View commit details -
client: don't use
Status
RPC for Consul discovery (#16490)In #16217 we switched clients using Consul discovery to the `Status.Members` endpoint for getting the list of servers so that we're using the correct address. This endpoint has an authorization gate, so this fails if the anonymous policy doesn't have `node:read`. We also can't check the `AuthToken` for the request for the client secret, because the client hasn't yet registered so the server doesn't have anything to compare against. Instead of hitting the `Status.Peers` or `Status.Members` RPC endpoint, use the Consul response directly. Update the `registerNode` method to handle the list of servers we get back in the response; if we get a "no servers" or "no path to region" response we'll kick off discovery again and retry immediately rather than waiting 15s.
Configuration menu - View commit details
-
Copy full SHA for 8684183 - Browse repository at this point
Copy the full SHA 8684183View commit details -
Enable ACLs on E2E test clients (#16530)
* e2e: uniformly enable acls across all agents * docs: clarify that acls should be set everywhere
Configuration menu - View commit details
-
Copy full SHA for 282e3bc - Browse repository at this point
Copy the full SHA 282e3bcView commit details
Commits on Mar 17, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 57a3cbe - Browse repository at this point
Copy the full SHA 57a3cbeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 76649df - Browse repository at this point
Copy the full SHA 76649dfView commit details -
nsd: always set deregister flag after deregistration of group (#16289)
* services: always set deregister flag after deregistration of group This PR fixes a bug where the group service hook's deregister flag was not set in some cases, causing the hook to attempt deregistrations twice during job updates (alloc replacement). In the tests ... we used to assert on the wrong behvior (remove twice) which has now been corrected to assert we remove only once. This bug was "silent" in the Consul provider world because the error logs for double deregistration only show up in Consul logs; with the Nomad provider the error logs are in the Nomad agent logs. * services: cleanup group service hook tests
Configuration menu - View commit details
-
Copy full SHA for ed498f8 - Browse repository at this point
Copy the full SHA ed498f8View commit details -
cli: nomad login command should not require a -type flag and should r…
…espect default auth method (#16504) nomad login command does not need to know ACL Auth Method's type, since all method names are unique. Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for b95b105 - Browse repository at this point
Copy the full SHA b95b105View commit details -
tls enforcement flaky tests (#16543)
* tests: add WaitForLeaders helpers using must/wait timings * tests: start servers for mtls tests together Fixes #16253 (hopefully)
Configuration menu - View commit details
-
Copy full SHA for 1cfa95e - Browse repository at this point
Copy the full SHA 1cfa95eView commit details
Commits on Mar 20, 2023
-
Configuration menu - View commit details
-
Copy full SHA for cd8615d - Browse repository at this point
Copy the full SHA cd8615dView commit details -
cli: Add
json
and-t
flags toserver members
command (#16444)* cli: Add and flags to server members * Update website/content/docs/commands/server/members.mdx Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * Update website/content/docs/commands/server/members.mdx Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * cli: update the server memebers tests to use must * cli: add flags addition to changelog --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 151147b - Browse repository at this point
Copy the full SHA 151147bView commit details -
cli: add
-json
and-t
flags toquota status
command (#16485)* cli: add json and t flags to quota status command * cli: add entry to changelog * Update command/quota_status.go Co-authored-by: James Rasell <jrasell@users.noreply.github.com> --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 26b4fcc - Browse repository at this point
Copy the full SHA 26b4fccView commit details -
Add
-json
flag toquota inspect
command (#16478)* Added and flag to command * cli[style]: small refactor to avoid confussion with tmpl variable * Update inspect.mdx * cli: add changelog entry * Update .changelog/16478.txt Co-authored-by: James Rasell <jrasell@users.noreply.github.com> * Update command/quota_inspect.go Co-authored-by: James Rasell <jrasell@users.noreply.github.com> --------- Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for cc110f4 - Browse repository at this point
Copy the full SHA cc110f4View commit details -
[ui] Perform common job tasks with keyboard shortcuts (#16378)
* Throw your mouse into traffic * Add node metadata with a shortcut * Re-labelled * Adds a toast notification to job start/stop on keyboard shortcut * Typo fix
Configuration menu - View commit details
-
Copy full SHA for 0071844 - Browse repository at this point
Copy the full SHA 0071844View commit details -
Configuration menu - View commit details
-
Copy full SHA for 96740b5 - Browse repository at this point
Copy the full SHA 96740b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for aacc7c6 - Browse repository at this point
Copy the full SHA aacc7c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 695df42 - Browse repository at this point
Copy the full SHA 695df42View commit details -
client/metadata: fix crasher caused by AllowStale = false (#16549)
Fixes #16517 Given a 3 Server cluster with at least 1 Client connected to Follower 1: If a NodeMeta.{Apply,Read} for the Client request is received by Follower 1 with `AllowStale = false` the Follower will forward the request to the Leader. The Leader, not being connected to the target Client, will forward the RPC to Follower 1. Follower 1, seeing AllowStale=false, will forward the request to the Leader. The Leader, not being connected to... well hoppefully you get the picture: an infinite loop occurs.
Configuration menu - View commit details
-
Copy full SHA for fb08518 - Browse repository at this point
Copy the full SHA fb08518View commit details
Commits on Mar 21, 2023
-
changelog: update #16427 to improvement (#16565)
The security fix in Go 1.20.2 does not apply to Nomad.
Configuration menu - View commit details
-
Copy full SHA for a633b79 - Browse repository at this point
Copy the full SHA a633b79View commit details -
contrib: architecture guide to the drainer (#16569)
The drainer component is fairly complex. As part of upcoming work to fix some of the drainer's rough edges, document the drainer's architecture from a Nomad developer perspective.
Configuration menu - View commit details
-
Copy full SHA for a90df9d - Browse repository at this point
Copy the full SHA a90df9dView commit details -
Update csi_plugin.mdx (#16584)
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 5309325 - Browse repository at this point
Copy the full SHA 5309325View commit details -
Windows fixes for e2e tests (#16592)
* e2e: skip task api test when windows too old * e2e: don't run proxy on windows
Configuration menu - View commit details
-
Copy full SHA for a73a399 - Browse repository at this point
Copy the full SHA a73a399View commit details -
E2E: fix events tests (#16595)
In #12916 we updated the events test as part of a larger set of changes around mapstructure serialization fixes. But the changes to the jobs we're deploying in the tests had invalid task configs so they never result in good deployments and the test will always fail. Make the before/after jobs identical (except for the version bump) and make them valid. Also wait for allocations for the 2nd job run to appear before checking the deployment list, so that we don't race with the scheduler.
Configuration menu - View commit details
-
Copy full SHA for aece7b0 - Browse repository at this point
Copy the full SHA aece7b0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 337a8d2 - Browse repository at this point
Copy the full SHA 337a8d2View commit details -
taskapi: use HasSuffix to detect errors from rpcs (#16594)
Matches the "normal" HTTP error detection logic in the same file.
Configuration menu - View commit details
-
Copy full SHA for 4d31fd3 - Browse repository at this point
Copy the full SHA 4d31fd3View commit details
Commits on Mar 22, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 39ec124 - Browse repository at this point
Copy the full SHA 39ec124View commit details -
Fix broken test for quotas CLI (#16610)
* fix: fix broken test * fix: fix broken test for quota status
Configuration menu - View commit details
-
Copy full SHA for cb9ce8b - Browse repository at this point
Copy the full SHA cb9ce8bView commit details -
[ui] Copyable server and client attribute values (#16548)
* Copyable server and client attribute values * Changelog
Configuration menu - View commit details
-
Copy full SHA for 2a22d71 - Browse repository at this point
Copy the full SHA 2a22d71View commit details -
* Generate files for 1.5.2 release * Prepare for next release * add 1.4.7 and 1.3.12 to the changelog --------- Co-authored-by: hc-github-team-nomad-core <github-team-nomad-core@hashicorp.com>
Configuration menu - View commit details
-
Copy full SHA for 1a53d9c - Browse repository at this point
Copy the full SHA 1a53d9cView commit details
Commits on Mar 23, 2023
-
drainer: test refactoring to clarify behavior around delete/down nodes (
#16612) This changeset refactors the tests of the draining node watcher so that we don't mock the node watcher's `Remove` and `Update` methods for its own tests. Instead we'll mock the node watcher's dependencies (the job watcher and deadline notifier) and now unit tests can cover the real code. This allows us to remove a bunch of TODOs in `watch_nodes.go` around testing and clarify some important behaviors: * Nodes that are down or disconnected will still be watched until the scheduler decides what to do with their allocations. This will drive the job watcher but not the node watcher, and that lets the node watcher gracefully handle cases where a heartbeat fails but the node heartbeats again before its allocs can be evicted. * Stop watching nodes that have been deleted. The blocking query for nodes set the maximum index to the highest index of a node it found, rather than the index of the nodes table. This misses updates to the index from deleting nodes. This was done as an performance optimization to avoid excessive unblocking, but because the query is over all nodes anyways there's no optimization to be had here. Remove the optimization so we can detect deleted nodes without having to wait for an update to an unrelated node.
Configuration menu - View commit details
-
Copy full SHA for 23b3647 - Browse repository at this point
Copy the full SHA 23b3647View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1061ddd - Browse repository at this point
Copy the full SHA 1061dddView commit details -
cli: job restart command (#16278)
Implement the new `nomad job restart` command that allows operators to restart allocations tasks or reschedule then entire allocation. Restarts can be batched to target multiple allocations in parallel. Between each batch the command can stop and hold for a predefined time or until the user confirms that the process should proceed. This implements the "Stateless Restarts" alternative from the original RFC (https://gist.github.com/schmichael/e0b8b2ec1eb146301175fd87ddd46180). The original concept is still worth implementing, as it allows this functionality to be exposed over an API that can be consumed by the Nomad UI and other clients. But the implementation turned out to be more complex than we initially expected so we thought it would be better to release a stateless CLI-based implementation first to gather feedback and validate the restart behaviour. Co-authored-by: Shishir Mahajan <smahajan@roblox.com>
Configuration menu - View commit details
-
Copy full SHA for fffdbdf - Browse repository at this point
Copy the full SHA fffdbdfView commit details
Commits on Mar 24, 2023
-
Configuration menu - View commit details
-
Copy full SHA for b84c455 - Browse repository at this point
Copy the full SHA b84c455View commit details -
scheduler: fix reconciliation of reconnecting allocs (#16609)
When a disconnect client reconnects the `allocReconciler` must find the allocations that were created to replace the original disconnected allocations. This process was being done in only a subset of non-terminal untainted allocations, meaning that, if the replacement allocations were not in this state the reconciler didn't stop them, leaving the job in an inconsistent state. This inconsistency is only solved in a future job evaluation, but at that point the allocation is considered reconnected and so the specific reconnection logic was not applied, leading to unexpected outcomes. This commit fixes the problem by running reconnecting allocation reconciliation logic earlier into the process, leaving the rest of the reconciler oblivious of reconnecting allocations. It also uses the full set of allocations to search for replacements, stopping them even if they are not in the `untainted` set. The system `SystemScheduler` is not affected by this bug because disconnected clients don't trigger replacements: every eligible client is already running an allocation.
Configuration menu - View commit details
-
Copy full SHA for 72ad885 - Browse repository at this point
Copy the full SHA 72ad885View commit details
Commits on Mar 27, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 6626965 - Browse repository at this point
Copy the full SHA 6626965View commit details -
Multiple instances of a periodic job are run simultaneously, when pro…
…hibit_overlap is true Fixes #11052 When restoring periodic dispatcher, all periodic jobs are forced without checking for previous childre.
Configuration menu - View commit details
-
Copy full SHA for 51249fc - Browse repository at this point
Copy the full SHA 51249fcView commit details -
Multiple instances of a periodic job are run simultaneously, when pro…
…hibit_overlap is true Fixes #11052 When restoring periodic dispatcher, all periodic jobs are forced without checking for previous children.
Configuration menu - View commit details
-
Copy full SHA for e9850f3 - Browse repository at this point
Copy the full SHA e9850f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c858a9 - Browse repository at this point
Copy the full SHA 3c858a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c59344 - Browse repository at this point
Copy the full SHA 4c59344View commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 8ac3e0e - Browse repository at this point
Copy the full SHA 8ac3e0eView commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 90db021 - Browse repository at this point
Copy the full SHA 90db021View commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 23807bd - Browse repository at this point
Copy the full SHA 23807bdView commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for eb6cd35 - Browse repository at this point
Copy the full SHA eb6cd35View commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for f4c24bc - Browse repository at this point
Copy the full SHA f4c24bcView commit details -
Co-authored-by: James Rasell <jrasell@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 62125b1 - Browse repository at this point
Copy the full SHA 62125b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd39e69 - Browse repository at this point
Copy the full SHA dd39e69View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1b61b24 - Browse repository at this point
Copy the full SHA 1b61b24View commit details -
Configuration menu - View commit details
-
Copy full SHA for 07edfca - Browse repository at this point
Copy the full SHA 07edfcaView commit details -
Configuration menu - View commit details
-
Copy full SHA for a6ac248 - Browse repository at this point
Copy the full SHA a6ac248View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6041961 - Browse repository at this point
Copy the full SHA 6041961View commit details