This project is mirrored from https://gitee.com/mirrors/nomad.git.
Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
- 31 Jul, 2019 2 commits
-
-
Nick Ethier authored
-
Nick Ethier authored
Adds support for passing network isolation config into drivers and implements support in the rawexec driver as a proof of concept
-
- 11 Jun, 2019 1 commit
-
-
Mahmood Ali authored
We aim for containers to be part of a new cgroups hierarchy independent from nomad agent. However, we've been setting a relative path as libcontainer `cfg.Cgroups.Path`, which makes libcontainer concatinate the executor process cgroup with passed cgroup, as set in [1]. By setting an absolute path, we ensure that all cgroups subsystem (including `name=systemd` get a dedicated one). This matches behavior in Nomad 0.8, and behavior of how Docker and OCI sets CgroupsPath[2] Fixes #5736 [1] https://github.com/hashicorp/nomad/blob/d7edf9b2e42348865908735996359c7869fb16b5/vendor/github.com/opencontainers/runc/libcontainer/cgroups/fs/apply_raw.go#L326-L340 [2] https://github.com/moby/moby/blob/238f8eaa31aa74be843c81703fabf774863ec30c/vendor/github.com/containerd/containerd/oci/spec.go#L229
-
- 24 May, 2019 1 commit
-
-
Mahmood Ali authored
-
- 20 May, 2019 1 commit
-
-
Mahmood Ali authored
Nomad 0.9 incidentally set effective capabilities that is higher than what's expected of a `nobody` process, and what's set in 0.8. This change restores the capabilities to ones used in Nomad 0.9.
-
- 10 May, 2019 3 commits
-
-
Mahmood Ali authored
-
Mahmood Ali authored
Implements streamign exec handling in both executors (i.e. universal and libcontainer). For creation of TTY, some incidental complexity leaked in. The universal executor uses github.com/kr/pty for creation of TTYs. On the other hand, libcontainer expects a console socket and for libcontainer to create the underlying console object on process start. The caller can then use `libcontainer.utils.RecvFd()` to get tty master end. I chose github.com/kr/pty for managing TTYs here. I tried `github.com/containerd/console` package (which is already imported), but the package did not work as expected on macOS.
-
Lang Martin authored
split out lookPathIn to show it's similarity to exec.LookPath
-
- 08 May, 2019 1 commit
-
-
Lang Martin authored
-
- 07 May, 2019 2 commits
-
-
Lang Martin authored
-
Lang Martin authored
-
- 03 May, 2019 2 commits
-
-
Lang Martin authored
-
Lang Martin authored
-
- 19 Apr, 2019 2 commits
-
-
Mahmood Ali authored
-
Mahmood Ali authored
-
- 02 Apr, 2019 3 commits
-
-
Michael Schurter authored
-
Michael Schurter authored
This reverts commit cb36f453.
-
Michael Schurter authored
-
- 01 Apr, 2019 1 commit
-
-
Michael Schurter authored
Avoid libcontainer.Process trying to lookup the binary via $PATH as the executor has already found where the binary is located.
-
- 20 Mar, 2019 1 commit
-
-
Mahmood Ali authored
Reverts hashicorp/nomad#5433 Apparently, channel communications can constitute Happens-Before even for proximate variables, so this syncing isn't necessary. > _The closing of a channel happens before a receive that returns a zero value because the channel is closed._ https://golang.org/ref/mem#tmp_7
-
- 17 Mar, 2019 1 commit
-
-
Mahmood Ali authored
exitState is set in `wait()` goroutine but accessed in a different `Wait()` goroutine, so accesses must be synchronized by a lock.
-
- 16 Mar, 2019 1 commit
-
-
Nick Ethier authored
-
- 01 Mar, 2019 1 commit
-
-
Iskander (Alex) Sharipov authored
strings.Replace call with n=0 argument makes no sense as it will do nothing. Probably -1 is intended. Signed-off-by:
Iskander Sharipov <quasilyte@gmail.com>
-
- 20 Feb, 2019 1 commit
-
-
Mahmood Ali authored
* CVE-2019-5736: Update libcontainer depedencies Libcontainer is vulnerable to a runc container breakout, that was reported as CVE-2019-5736[1]. Upgrading vendored libcontainer with the fix. The runc changes are captured in https://github.com/hashicorp/runc/commits/369b920277d27630441336775cd728bc0f19e496 . [1] https://seclists.org/oss-sec/2019/q1/119
-
- 14 Jan, 2019 1 commit
-
-
Mahmood Ali authored
Track current memory usage, `memory.usage_in_bytes`, in addition to `memory.max_memory_usage_in_bytes` and friends. This number is closer what Docker reports. Related to https://github.com/hashicorp/nomad/issues/5165 .
-
- 12 Jan, 2019 1 commit
-
-
Nick Ethier authored
plugins/driver: update driver interface to support streaming stats client/tr: use streaming stats api TODO: * how to handle errors and closed channel during stats streaming * prevent tight loop if Stats(ctx) returns an error drivers: update drivers TaskStats RPC to handle streaming results executor: better error handling in stats rpc docker: better control and error handling of stats rpc driver: allow stats to return a recoverable error
-
- 11 Jan, 2019 1 commit
-
-
Alex Dadgar authored
This PR fixes various instances of plugins being launched without using the parent loggers. This meant that logs would not all go to the same output, break formatting etc.
-
- 08 Jan, 2019 2 commits
-
-
Mahmood Ali authored
-
Mahmood Ali authored
Re-export the ResourceUsage structs in drivers package to avoid drivers directly depending on the internal client/structs package directly. I attempted moving the structs to drivers, but that caused some import cycles that was a bit hard to disentagle. Alternatively, I added an alias here that's sufficient for our purposes of avoiding external drivers depend on internal packages, while allowing us to restructure packages in future without breaking source compatibility.
-
- 06 Jan, 2019 1 commit
-
-
Mahmood Ali authored
We ultimately decided to provide a limited set of devices in exec/java drivers instead of all of host ones. Pre-0.9, we made all host devices available to exec tasks accidentally, yet most applications only use a small subset, and this choice limits our ability to restrict/isolate GPU and other devices. Starting with 0.9, by default, we only provide the same subset of devices Docker provides, and allow users to provide more devices as needed on case-by-case basis. This reverts commit 5805c64a. This reverts commit ff9a4a17.
-
- 04 Jan, 2019 1 commit
-
-
Mahmood Ali authored
Use a dedicated /dev mount so we can inject more devices if necessary, and avoid allowing a container to contaminate host /dev. Follow up to https://github.com/hashicorp/nomad/pull/5143 - and fixes master.
-
- 03 Jan, 2019 1 commit
-
-
Mahmood Ali authored
Restores pre-0.9 behavior, where Nomad makes /dev available to exec task. Switching to libcontainer, we accidentally made only a small subset available. Here, we err on the side of preserving behavior of 0.8, instead of going for the sensible route, where only a reasonable subset of devices is mounted by default and user can opt to request more.
-
- 18 Dec, 2018 2 commits
-
-
Alex Dadgar authored
-
Alex Dadgar authored
-
- 11 Dec, 2018 1 commit
-
-
Mahmood Ali authored
-
- 07 Dec, 2018 3 commits
-
-
Nick Ethier authored
-
Nick Ethier authored
-
Nick Ethier authored
-
- 06 Dec, 2018 1 commit
-
-
Alex Dadgar authored
IOPS have been modelled as a resource since Nomad 0.1 but has never actually been detected and there is no plan in the short term to add detection. This is because IOPS is a bit simplistic of a unit to define the performance requirements from the underlying storage system. In its current state it adds unnecessary confusion and can be removed without impacting any users. This PR leaves IOPS defined at the jobspec parsing level and in the api/ resources since these are the two public uses of the field. These should be considered deprecated and only exist to allow users to stop using them during the Nomad 0.9.x release. In the future, there should be no expectation that the field will exist.
-
- 05 Dec, 2018 1 commit
-
-
Nick Ethier authored
* Added protobuf spec for executor * Seperated executor structs into their own package
-