Commit Graph

1002 Commits

Author SHA1 Message Date
Andrey Vagin 8e9a6d28d2 linux_container: execute an init process in a new CT
Here is a first step to implement a new API. Currently the init
processes is executed without namespaces and cgroups.

Signed-off-by: Andrew Vagin <avagin@openvz.org>
2014-12-17 07:39:18 +03:00
Michael Crosby 2329014b6d Implement types for namespaces
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-16 16:34:46 -08:00
Michael Crosby 4661c239dc Add type for namespaces for better UI
This adds `type Namespaces []Namespace` so that methods can be added to
this slice so that it is easier for consumers to work with the values.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-16 16:15:35 -08:00
Victor Marmol ef1c1c4289 Merge pull request #301 from cyphar/user-fix-names
user: fix function signatures
2014-12-17 00:25:46 +08:00
Aleksa Sarai 8a8eb57746 *: merge to new user/ API
This patch switches libcontainer's usage of the user/ API to the new
version.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com> (github: cyphar)
2014-12-17 02:00:21 +11:00
Aleksa Sarai b322073f27 user: *: fix function signatures
This patch changes the incorrectly named functions GetPasswdFile,
GetGroupFile, GetExecUserFile and several internal components to
GetPasswdPath, GetGroupPath, etc -- as these are far more appropriate
names and more clearly convey to users what the arguments represent.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com> (github: cyphar)
2014-12-17 02:00:16 +11:00
Andrey Vagin 2441babc48 linux_factory: add StartInitialization()
After forking a new processes in a new container, we need to call exec()
and tune namespaces.

Signed-off-by: Andrew Vagin <avagin@openvz.org>
2014-12-16 09:19:16 +03:00
Andrey Vagin bce773a8c4 linux_container: ct.Destroy() returns error if CT isn't stopped
Signed-off-by: Andrew Vagin <avagin@openvz.org>
2014-12-16 09:19:12 +03:00
Andrey Vagin 159db89c1f nsinit: use the new API for executing processes
Signed-off-by: Andrew Vagin <avagin@openvz.org>
2014-12-16 09:19:02 +03:00
Andrey Vagin b608f5df10 nsinit: Add Makefile
Signed-off-by: Andrew Vagin <avagin@openvz.org>
2014-12-16 09:18:48 +03:00
Daniel, Dao Quang Minh 43842efecc reformat with indent -linux
Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-15 14:39:55 -05:00
Mrunal Patel 42fed751fb Merge pull request #297 from optiflows/delete_interface_ip
Adding a function that allows to remove an address set on an interface
2014-12-14 22:18:22 -08:00
Rohit Jnagal 4940cee052 Merge pull request #290 from dqminh/exec-spec
add spec for exec a new process inside a container
2014-12-12 09:20:35 -08:00
Gary Berger 1d7207079f Rename of libcontainer image on Docker Hub
Signed-off-by: Gary Berger <gary@firstclassfunc.com>
2014-12-12 09:18:30 -05:00
Ketouem c3ab8d0cb4 Adding a function that allows to remove an address set on an interface
Signed-off-by: Cyril Thomas <ketouem@gmail.com>
2014-12-12 12:21:24 +01:00
Michael Crosby f925aa3503 Merge pull request #294 from cyphar/user-add-cyphar-maintainer
user: MAINTAINERS: add cyphar (myself) as a maintainer
2014-12-11 19:02:08 -08:00
Michael Crosby 5fedffd8fd Merge pull request #295 from hqhq/hq_fix_memory_test
cgroups: add failcnt test
2014-12-11 16:37:05 -08:00
Qiang Huang 2aebf7d849 cgroups: add failcnt test
It was missed in the first place.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2014-12-11 16:27:06 -08:00
Mrunal Patel dc827aa0ee Merge pull request #289 from dqminh/execin-rlimit
Set rlimit for execin process
2014-12-11 14:22:41 -08:00
Daniel, Dao Quang Minh eb2ae34c80 move cgroup requirements to planned additions
also document that the executor will only try to remove all the children in a
best-effort way.

Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-11 13:59:10 -05:00
Mrunal Patel e8f5b54301 Merge pull request #288 from hqhq/hq_add_memory_swap
cgroup: add support to set MemorySwap
2014-12-11 10:45:34 -08:00
Daniel, Dao Quang Minh e9c1b0144a fix some grammar errors
Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-11 13:45:07 -05:00
Aleksa Sarai 6516e6ce8c user: MAINTAINERS: add cyphar as a maintainer
This patch adds Aleksa Sarai to the maintainer list for libcontainer's
user API.

Signed-off-by: Aleksa Sarai <cyphar@cyphar.com> (github: cyphar)
2014-12-12 05:11:18 +11:00
Qiang Huang 9184d9473d cgroup: add support to set MemorySwap
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2014-12-11 09:40:55 -08:00
Daniel, Dao Quang Minh 19099e065d add spec for exec a new process inside a container
document desired execin process behavior for v1 container specification

Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-11 03:22:20 -05:00
Michael Crosby 0d0402712b Merge pull request #287 from dqminh/execin-test
add support for testing execin
2014-12-10 10:12:46 -08:00
Daniel, Dao Quang Minh 6a76ecb1ce refactor common container setup out of execin tests
Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-10 04:18:43 -05:00
Daniel, Dao Quang Minh 0195469398 execin should honour rlimit of the container
Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-10 04:13:31 -05:00
Daniel, Dao Quang Minh 2f1b2ce204 add support for testing execin
when the test binary starts, it detects whether it should run the container
initialization code or the execin initialization code based on the suppplied
arguments. The execin initialization code is taken from docker.

also added a sample test for execin process.

Docker-DCO-1.1-Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com> (github: dqminh)
2014-12-10 03:39:00 -05:00
Victor Marmol 58fc93160e Merge pull request #285 from hqhq/hq_add_cpuset_mems
cgroups: add support for cpuset.mems
2014-12-06 09:44:13 +08:00
Qiang Huang e3b14402eb cgroups: add support for cpuset.mems
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2014-12-05 17:37:24 -08:00
Victor Marmol 646ca2ba11 Minor refactorings to fix build.
Signed-off-by: Victor Marmol <vmarmol@google.com>
2014-12-05 17:13:25 -08:00
Victor Marmol e5636543cc Switch from logrus to glog.
Signed-off-by: Victor Marmol <vmarmol@google.com>
2014-12-05 17:06:58 -08:00
Mrunal Patel de57f78590 More error handling and fixup
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2014-12-05 15:24:42 -08:00
Mrunal Patel 3f26e9a891 Add check for ID already in use.
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2014-12-05 15:24:42 -08:00
Mrunal Patel 66e6806fd2 Adds ID validation.
Docker-DCO-1.1-Signed-off-by: Mrunal Patel <mrunalp@gmail.com> (github: mrunalp)
2014-12-05 15:24:42 -08:00
Michael Crosby 47b41a6f5d Add logger to container and factory
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby d5b8418f75 Remove ContainerInfo interface
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby ccb83a1e83 Add cgroup manage for mocking of package resources
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby 926ab56ea8 Add testing for linux factory Load
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby 7760faaab4 Add stacktrace package for collection of stacktraces
This helps aid our effort of returning useful errors.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby 6310a958e6 Implement linux factory and container with readonly interface
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:24:42 -08:00
Michael Crosby 6bf1e4ddfc Update container interface with process operations
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:20:16 -08:00
Michael Crosby e28b636b7b Add ContainerInfo instead of using a readonly state
This modifies Load in the factory to return a ContainerInfo interface
that is the read only view of the container when it is loaded.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-05 15:20:16 -08:00
Mrunal Patel 6ffd59a784 Merge pull request #279 from crosbymichael/namespaces-join
Change namespaces config to include path for setns
2014-12-04 11:19:48 -08:00
Michael Crosby 12124f731d Remove unused namespace types
This removes the unsued namespace types from the namespace package
and simplifies getting the values for the namespaces.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-03 15:47:26 -08:00
Michael Crosby 549f508d5b Change namespaces config to include path for setns
This changes the namespace configuration on the config to include the
name of the namespace along with an optional path.  This path is used to
point to a file of another namespace for the namespace so that it can be
joined in place of the empty, initialized namespace.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2014-12-03 12:00:43 -08:00
Mrunal Patel 53eca435e6 Merge pull request #273 from vishh/prctl
Set child sub reaper option on nsenter
2014-12-02 15:28:38 -08:00
Michael Crosby b02b0b037b Merge pull request #278 from milosgajdos83/macvtap
Introducing macvtap device to netlink package
2014-12-02 15:16:51 -08:00
Rohit Jnagal 51aa43f44c Merge pull request #282 from crosbymichael/spec
Add container spec
2014-12-02 00:03:08 -08:00