Mahmood Ali
d23f47736c
drivers/exec: run as nobody
by default
...
libcontainer based drivers (e.g. exec, java) should default to running
processes as `nobody` [1]; but libcontainer treats empty user as `root`
in our case (either because of default or due to `root` being current
user).
[1] 94c28a4c6c/website/source/docs/job-specification/task.html.md (task-parameters)
2019-01-03 14:29:18 -05:00
Preetha
9e235f4cb6
Update e2e readme
2019-01-03 13:24:58 -06:00
Preetha
0071307414
Update README.md
2019-01-03 13:19:04 -06:00
Preetha
758ae0ca7c
Update README.md
2019-01-03 12:12:43 -06:00
Danielle Tomlinson
35a4790740
Merge pull request #5142 from hashicorp/dani/cleanup-allocrunner-logs
...
allocrunner: Standardised discard logs
2019-01-03 18:40:48 +01:00
Preetha Appan
d182c0f5cd
Increase timeout in e2e test
2019-01-03 11:22:21 -06:00
Preetha
8078cb79f0
Merge pull request #5140 from hashicorp/dani/b-taskrunner
...
taskrunner: Persist environment from hooks
2019-01-03 09:30:52 -06:00
Danielle Tomlinson
4a944e114e
Merge pull request #5141 from hashicorp/dani/fix-static-checks
...
Fix `make check`
2019-01-03 14:40:25 +01:00
Danielle Tomlinson
29196ca70e
allocrunner: Standardised discard logs
...
Follow up from https://github.com/hashicorp/nomad/pull/5007#pullrequestreview-186739124
2019-01-03 14:04:31 +01:00
Danielle Tomlinson
d3b41a26c4
e2e: goimports e2eutil/utils.go
2019-01-03 13:31:49 +01:00
Danielle Tomlinson
1c8baf7db7
chore: Fix environement->environment typo
2019-01-03 13:31:30 +01:00
Danielle Tomlinson
43f2dc0c36
chore: Fix environement->environment typo
2019-01-03 13:31:26 +01:00
Danielle Tomlinson
45174ac3e9
Merge pull request #5041 from hashicorp/dani/b-driver-healt
...
drivers: Cleanup root user fingerprinting
2019-01-03 13:16:28 +01:00
Danielle Tomlinson
28aa34ea78
taskrunner: Persist environment from hooks
...
https://github.com/hashicorp/nomad/pull/5032 introduced a regression
where the origHookState was used in place of the response from the hook.
2019-01-03 13:13:57 +01:00
Preetha
ef3dfa36e3
Merge pull request #5037 from hashicorp/f-e2e-spread
...
e2e tests for spread stanza
2018-12-20 15:39:08 -06:00
Alex Dadgar
d7d32c2f61
Merge pull request #5032 from hashicorp/f-driver-env
...
Store device envs separately and pass to drivers
2018-12-20 13:38:27 -08:00
Preetha Appan
2845a556a3
Clean up map update code
2018-12-20 15:12:48 -06:00
Michael Schurter
e47a3ceed6
taskenv: have maps take precedence over primitives
...
**The Bug:**
You may have seen log lines like this when running 0.9.0-dev:
```
... client.alloc_runner.task_runner: some environment variables not available for rendering: ... keys="attr.driver.docker.volumes.enabled, attr.driver.docker.version, attr.driver.docker.bridge_ip, attr.driver.qemu.version"
```
Not only should we not be erroring on builtin driver attributes, but the
results were nondeterministic due to map iteration order!
The root cause is that we have an old root attribute for all drivers
like:
```
attr.driver.docker = "1"
```
When attributes were opaque variable names it was fine to also have
"nested" attributes like:
```
attr.driver.docker.version = "1.2.3"
```
However in the HCLv2 world the variable names are no longer opaque: they
form an object tree. The `docker` object can no longer both hold a value
(`"1"`) *and* nested attributes (`version = "1.2.3"`).
**The Fix:**
Since the old `attr.driver.<name> = "1"` attribues are useless for task
config interpolation, create a new precedence rule for creating the task
config evaluation context:
*Maps take precedence over primitives.*
This means `attr.driver.docker.version` will always take precedence over
`attr.driver.docker`. The results are determinstic and give users access
to the more useful metadata.
I made this a general precedence rule instead of special-casing driver
attrs because it seemed like better default behavior than spamming
WARNings to logs that were likely unactionable by users.
2018-12-20 11:37:46 -08:00
Nick Ethier
ab3c5c0a8b
fix test
2018-12-20 13:54:29 -05:00
Nick Ethier
fad553ab6a
command: wait for drivers to be ready before test
2018-12-20 13:52:33 -05:00
Nick Ethier
f4caf87237
Merge pull request #5036 from hashicorp/b-fix-release-build
...
client: add proper build flag to allocrunner testing.go
2018-12-20 13:32:28 -05:00
Danielle Tomlinson
6c9b9dc9f1
rkt: Return consistent error when not root
2018-12-20 13:02:46 +01:00
Danielle Tomlinson
6709de199b
java: Return undetected when not running as root
...
This is an unrecoverable error, so we should only do this check once,
rather than returning unhealthy constantly.
2018-12-20 12:55:07 +01:00
Danielle Tomlinson
7b31027ea3
exec: Return undetected when not running as root
...
This is an unrecoverable error, so we should only do this check once,
rather than returning unhealthy constantly.
2018-12-20 12:54:19 +01:00
Danielle Tomlinson
63b5e1a9e9
plugins: Add consistent message for requires root
2018-12-20 12:54:01 +01:00
Nick Ethier
5b9bba08c6
fix tests
2018-12-20 01:05:17 -05:00
Nick Ethier
060ceb3635
fix test
2018-12-20 01:01:53 -05:00
Nick Ethier
a96afb6c91
fix tests that fail as a result of async client startup
2018-12-20 00:53:44 -05:00
Nick Ethier
2724f9f243
Merge pull request #5009 from hashicorp/ci-use-gotestsum
...
ci: use gotestsum for running tests
2018-12-19 23:26:42 -05:00
Preetha Appan
1bebce3525
new e2e test for spread, and refactor affinity tests to share util methods
2018-12-19 21:25:32 -06:00
Nick Ethier
6c43ccf628
client: add proper build flag to allocrunner testing.go
2018-12-19 20:22:07 -05:00
Preetha Appan
df8b9ced10
Fix spread e2e test
2018-12-19 17:11:26 -06:00
Preetha Appan
79bd9770f2
Initial e2e tests for spread
2018-12-19 17:11:26 -06:00
Michael Schurter
4448f19413
Merge pull request #5030 from hashicorp/test-client-statusupdate
...
client: assert alloc status updates work
2018-12-19 14:55:34 -08:00
Alex Dadgar
9d34802f7a
Store device envs separately and pass to drivers
2018-12-19 14:23:09 -08:00
Alex Dadgar
fff09162aa
proto
2018-12-19 13:54:19 -08:00
Michael Schurter
f43a8a1053
Merge pull request #5003 from hashicorp/f-state-upgrade
...
Support upgrading state from
2018-12-19 11:49:46 -08:00
Michael Schurter
951100af16
client: assert alloc status updates work
...
Re-enabling and updating an old test. Able to cut out a ton of extra
work by using WaitForRunning which does almost everything this test
needs.
2018-12-19 11:41:53 -08:00
Omar Khawaja
b723f48d52
add link on monitoring home for easier navigation ( #5028 )
2018-12-19 14:13:13 -05:00
Michael Schurter
ee23bdafbc
client/state: missing deploy status isn't an error
...
Fixes TestClient_SaveRestoreState
2018-12-19 10:39:27 -08:00
Michael Schurter
c84998e996
tests: implement HasHealth for mock health
2018-12-19 10:39:27 -08:00
Michael Schurter
ba1ddd2238
gofmt -s -w upgrade_int_test.go
2018-12-19 10:39:27 -08:00
Michael Schurter
337d07fdd8
client/state: improve upgradeTaskBucket error handling
...
And add a test
2018-12-19 10:39:27 -08:00
Michael Schurter
c5ddcb6a15
client/state: add context to errors
...
Unfortunately I don't know how to test these errors. As far as I can
tell they should only happen if there was a programming error in the
upgrade code or the underlying boltdb was corrupted somehow.
2018-12-19 10:39:27 -08:00
Michael Schurter
99bd5b3422
client/state: use 2 as version; test error path
2018-12-19 10:39:27 -08:00
Michael Schurter
d9ea8252a7
client/state: support upgrading from 0.8->0.9
...
Also persist and load DeploymentStatus to avoid rechecking health after
client restarts.
2018-12-19 10:39:27 -08:00
Michael Schurter
0018b2f659
client/state: reorg state buckets to ease transition
...
* Prefix task bucket with task- to prevent name conflicts
* Shorten device manager bucket name
* Remove commented out outdated var
* Update layout comment
2018-12-19 10:22:28 -08:00
Michael Schurter
461599ff20
tr: fix HookState Copy() and Equal() methods
...
They did not take into account the Env field.
2018-12-19 09:58:06 -08:00
Danielle Tomlinson
713cf8ddb6
Merge pull request #5027 from hashicorp/dani/b-allocrunner-routine
...
allocrunner: Close updates routine correctly
2018-12-19 18:40:16 +01:00
Danielle Tomlinson
c580512d32
allocrunner: Close updates routine correctly
2018-12-19 18:32:51 +01:00