Vivek Goyal
d1f4a5b8b5
libcontainer: Allow passing mount propagation flags
...
Right now if one passes a mount propagation flag in spec file, it
does not take effect. For example, try following in spec json file.
{
"type": "bind",
"source": "/root/mnt-source",
"destination": "/root/mnt-dest",
"options": "rbind,shared"
}
One would expect that /root/mnt-dest will be shared inside the container
but that's not the case.
#findmnt -o TARGET,PROPAGATION
`-/root/mnt-dest private
Reason being that propagation flags can't be passed in along with other
regular flags. They need to be passed in a separate call to mount syscall.
That too, one propagation flag at a time. (from mount man page).
Hence, store propagation flags separately in a slice and apply these
in that order after the mount call wherever appropriate. This allows
user to control the propagation property of mount point inside
the container.
Storing them separately also solves another problem where recursive flag
(syscall.MS_REC) can get mixed up. For example, options "rbind,private"
and "bind,rprivate" will be same and there will be no way to differentiate
between these if all the flags are stored in a single integer.
This patch would allow one to pass propagation flags "[r]shared,[r]slave,
[r]private,[r]unbindable" in spec file as per mount property.
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2015-09-16 15:53:23 -04:00
Alexander Morozov
dae4560ec2
Merge pull request #257 from mrunalp/cap_prefix
...
Add CAP prefix for capabilities
2015-09-16 11:39:39 -07:00
Mrunal Patel
abb40ac3c7
Merge pull request #272 from laijs/close-config-file
...
close config file after loaded
2015-09-16 11:34:12 -07:00
Mrunal Patel
5a599a4c10
Merge pull request #268 from laijs/runc-usage
...
update the command usage of `runc`
2015-09-16 08:59:23 -07:00
Lai Jiangshan
8132f4d797
close config file after loaded
...
Signed-off-by: Lai Jiangshan <jiangshanlai@gmail.com>
2015-09-16 10:54:53 +08:00
Lai Jiangshan
66f152d6dd
simple refactor for the options of `runc spec`
...
Signed-off-by: Lai Jiangshan <jiangshanlai@gmail.com>
2015-09-16 10:06:59 +08:00
Lai Jiangshan
ac56948250
update the command usage of `runc`
...
Signed-off-by: Lai Jiangshan <jiangshanlai@gmail.com>
2015-09-16 09:49:06 +08:00
Mrunal Patel
ec37110957
Update README for the CAP prefix change
...
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2015-09-15 14:44:12 -04:00
Mrunal Patel
859abee0c8
Add CAP prefix for capabilities
...
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
2015-09-15 14:43:03 -04:00
Mrunal Patel
4ab132458f
Merge pull request #242 from LK4D4/adjust_spec
...
Adjust runc to new opencontainers/specs version
2015-09-15 10:21:58 -07:00
Alexander Morozov
ea5032bc5e
Adjust runc to new opencontainers/specs version
...
I deleted possibility to specify config file from commands for now.
Until we decide how it'll be done. Also I changed runc spec interface to
write config files instead of output them.
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-09-15 08:35:25 -07:00
Mrunal Patel
07a2f4eaa5
Merge pull request #237 from hqhq/hq_add_testflags_docs
...
Add testing docs in README
2015-09-14 19:24:10 -07:00
Qiang Huang
088fd3f6df
Add testing docs in README
...
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-09-15 08:30:28 +08:00
Mrunal Patel
4d8e13fc3e
Merge pull request #43 from LK4D4/new_netlink
...
New netlink library
2015-09-14 14:01:07 -07:00
Mrunal Patel
1cf8ac8d6e
Merge pull request #248 from rajasec/fixcheckpoint
...
Fixing checkpoint issue
2015-09-14 13:53:54 -07:00
Michael Crosby
6d2761d67e
Merge pull request #251 from hqhq/hq_fix_comments
...
Minor comments fix
2015-09-14 13:44:19 -07:00
Mrunal Patel
486ac97618
Merge pull request #236 from hqhq/hq_fix_cgroup_rw
...
Always remount for bind mount
2015-09-14 12:08:34 -07:00
Michael Crosby
c4780db6a5
Merge pull request #266 from rajasec/seccompfix
...
make localtest failure on removing seccomp flag in Makefile
2015-09-14 12:00:08 -07:00
Rajasekaran
2940f73a14
make localtest failure on removing seccomp flag
...
Signed-off-by: Rajasekaran <rajasec79@gmail.com>
2015-09-12 14:43:55 +05:30
Mrunal Patel
ef9471fd5b
Merge pull request #253 from avagin/cr-cgroups
...
c/r: create cgroups to restore a container
2015-09-11 18:03:40 -07:00
Mrunal Patel
8660fd2325
Merge pull request #265 from crosbymichael/tags
...
Add all support build tags for runc features
2015-09-11 12:16:37 -07:00
Michael Crosby
3200c16937
Add all support build tags for runc features
...
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-09-11 12:12:18 -07:00
Alexander Morozov
b0fd9fb75a
Merge pull request #220 from crosbymichael/build-tags
...
Add seccomp build tag
2015-09-11 12:06:27 -07:00
Michael Crosby
a8e0185d97
Add seccomp build tag
...
Add a seccomp build tag and also support in the Makefile to add or
remove build tags.
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-09-11 12:03:57 -07:00
Alexander Morozov
7d122ff30e
Merge pull request #261 from crosbymichael/hooks
...
Implement hooks in libcontainer code base
2015-09-11 11:43:49 -07:00
David Calavera
0f28592b35
Turn hook pointers into values.
...
Signed-off-by: David Calavera <david.calavera@gmail.com>
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-09-11 11:34:34 -07:00
Michael Crosby
dd969cbacd
Add test for function based hooks
...
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-09-10 18:15:00 -07:00
Mrunal Patel
1dca365393
Add test for prestart hook
...
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
Conflicts:
libcontainer/integration/exec_test.go
2015-09-10 17:59:36 -07:00
Michael Crosby
05567f2c94
Implement hooks in libcontainer
...
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2015-09-10 17:57:31 -07:00
Mrunal Patel
cd01b01018
Merge pull request #259 from hqhq/hq_fix_cgroup
...
Fix bug in find cgroup mount point dir
2015-09-10 12:01:22 -07:00
Andrey Vagin
df39686c93
c/r: create cgroups to restore a container
...
Here are two reasons:
* If we use systemd, we need to ask it to create cgroups
* If a container is restored with another ID, we need to
change paths to cgroups.
Signed-off-by: Andrey Vagin <avagin@openvz.org>
2015-09-10 21:00:27 +03:00
Andrey Vagin
da2535f2d1
mount: don't read /proc/self/cgroup many times
...
Signed-off-by: Andrey Vagin <avagin@openvz.org>
2015-09-10 21:00:22 +03:00
Andrey Vagin
e49c1dc559
Rework ParseCgroupFile
...
Currently we parse /proc/self/cgroup for each controller.
It's ineffective.
Signed-off-by: Andrey Vagin <avagin@openvz.org>
2015-09-10 20:59:27 +03:00
Alexander Morozov
24f4d5d1fd
Remove old netlink library
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-09-09 19:38:02 -07:00
Alexander Morozov
916bd6bd68
Use github.com/vishvananda/netlink for networking
...
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-09-09 19:32:46 -07:00
Qiang Huang
b94fe5b7f8
Fix bug in find cgroup mount point dir
...
Bug was introduced in #250
According to: http://man7.org/linux/man-pages/man5/proc.5.html
36 35 98:0 /mnt1 /mnt2 rw,noatime master:1 - ext3 /dev/root rw,errors=continue
(1)(2)(3) (4) (5) (6) (7) (8) (9) (10) (11)
...
(7) optional fields: zero or more fields of the form
"tag[:value]".
The 7th field is optional. We should skip it when parsing mount info.
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-09-10 08:29:12 +08:00
Mrunal Patel
5731a045fe
Merge pull request #250 from hqhq/hq_cgroup_cleanup
...
Some cgroups cleanup
2015-09-09 11:48:02 -07:00
Qiang Huang
f2ec7eff7e
Rename FindCgroupMountpointAndSource
...
Rename it to FindCgroupMountpointAndRoot.
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-09-09 09:29:11 +08:00
Qiang Huang
bc67941c72
Parse directly in FindCgroupMountpointDir
...
Unify it with FindCgroupMountpoint, and add comments why
we should to do this.
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-09-09 09:28:50 +08:00
Qiang Huang
8f35c181b2
Minor comments fix
...
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-09-07 10:39:22 +08:00
Rajasekaran
57cc442c13
Fixing checkpoint issue
...
Signed-off-by: Rajasekaran <rajasec79@gmail.com>
2015-09-04 16:20:45 +05:30
Mrunal Patel
0f85e4e1a3
Merge pull request #239 from rajasec/restore-leaverunning
...
Restorefixforrunningcontainer
2015-09-02 11:21:30 -07:00
Alexander Morozov
05b1cda5dd
Merge pull request #235 from hqhq/hq_fix_cgroup_test
...
Fix cgroup mount tests
2015-09-01 14:57:44 -07:00
Mrunal Patel
5c92e5d7e0
Merge pull request #232 from vishh/oom-score-adj
...
Adding oom_score_adj as a container config param
2015-08-31 14:45:29 -07:00
Vishnu Kannan
cc232c4707
Adding oom_score_adj as a container config param.
...
Signed-off-by: Vishnu Kannan <vishnuk@google.com>
2015-08-31 14:02:59 -07:00
Rajasekaran
77af09efd6
Restorefixforrunningcontainer
...
Signed-off-by: Rajasekaran <rajasec79@gmail.com>
2015-08-31 22:16:38 +05:30
Mrunal Patel
8447547797
Merge pull request #233 from shishir-a412ed/comment_move
...
cleanup: outdated comment
2015-08-31 09:27:34 -07:00
Qiang Huang
085f465c00
Fix cgroup mount tests
...
I got:
```
exec_test.go:823: Mode expected to contain 'ro,nosuid,nodev,noexec': tmpfs on /sys/fs/cgroup type tmpfs (ro,seclabel,nosuid,nodev,noexec,relatime,mode=755
```wq
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-08-31 11:23:18 +08:00
Qiang Huang
b7385e291c
Always remount for bind mount
...
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-08-31 11:10:34 +08:00
Shishir Mahajan
0f3545e3d3
cleanup: outdated comment
...
Signed-off-by: Shishir Mahajan <shishir.mahajan@redhat.com>
2015-08-29 11:50:39 -04:00