summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* pkg, cgroups: add initial support for cgroup v2Giuseppe Scrivano2019-06-26
| | | | | | | | | | | | | | | | | This is an initial implementation of cgroup v2 support for pkg/cgroups. It currently works with crun, with this patch: https://github.com/giuseppe/crun/pull/49). It adds the pieces for: - set PID limit to 1 - retrieve stats so that "podman stats" work. the only missing part is the support for reading per CPU stats (that is cpuacct.usage_percpu on cgroup v1), so for now it always returns an empty result. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* util: drop IsCgroup2UnifiedMode and use it from cgroupsGiuseppe Scrivano2019-06-26
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* vendor: drop github.com/containerd/cgroupsGiuseppe Scrivano2019-06-26
| | | | Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* libpod: use pkg/cgroups instead of containerd/cgroupsGiuseppe Scrivano2019-06-26
| | | | | | use the new implementation for dealing with cgroups. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* pkg: new package cgroupsGiuseppe Scrivano2019-06-26
| | | | | | | | | | | | | | | | | | provide a package for managing cgroups. This is not supposed to be a complete implementation with all the features supported by cgroups, but it is a minimal implementation designed around what libpod needs and it is currently using. For example, it is currently possible to Apply only the pids limit, as it is used by libpod for stopping containers, any other Apply will just fail. The main goal here is to have a minimal library where we have full control, so we can start playing with cgroup v2. When the need arises, we can add more features. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* Merge pull request #3419 from baude/removelibpodfrommainphase1OpenShift Merge Robot2019-06-26
|\ | | | | remove libpod from main
| * remove libpod from mainbaude2019-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | the compilation demands of having libpod in main is a burden for the remote client compilations. to combat this, we should move the use of libpod structs, vars, constants, and functions into the adapter code where it will only be compiled by the local client. this should result in cleaner code organization and smaller binaries. it should also help if we ever need to compile the remote client on non-Linux operating systems natively (not cross-compiled). Signed-off-by: baude <bbaude@redhat.com>
* | Merge pull request #3430 from mheon/bump-1.4.3OpenShift Merge Robot2019-06-26
|\ \ | | | | | | Bump to v1.4.3
| * | Bump gitvalidation epochMatthew Heon2019-06-25
| | | | | | | | | | | | Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | Bump to v1.4.4-devMatthew Heon2019-06-25
| | | | | | | | | | | | Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | Bump to v1.4.3v1.4.3Matthew Heon2019-06-25
| | | | | | | | | | | | Signed-off-by: Matthew Heon <mheon@redhat.com>
* | | Merge pull request #3428 from mheon/release_notes_1.4.3OpenShift Merge Robot2019-06-25
|\ \ \ | |/ / |/| | Update release notes for 1.4.3 release
| * | Update release notes for 1.4.3 releaseMatthew Heon2019-06-25
| | | | | | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | | Merge pull request #3418 from vrothberg/go-modulesOpenShift Merge Robot2019-06-25
|\ \ \ | | | | | | | | update dependencies
| * | | update dependenciesValentin Rothberg2019-06-24
| | |/ | |/| | | | | | | | | | | | | Ran a `go get -u` and bumped K8s deps to 1.15.0. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | | Merge pull request #3417 from mheon/fix_play_kube_portsOpenShift Merge Robot2019-06-25
|\ \ \ | |_|/ |/| | Only include ports in one container in Kube YAML
| * | Update 'generate kube' tests to verify YAMLMatthew Heon2019-06-25
| | | | | | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | Use a different method to retrieve YAML output in testsMatthew Heon2019-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | OutputToString() was mangling newlines, which made YAML parsers very, very angry. But not angry enough to actually error, that would be too easy. Just angry enough to silently not decode anything. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | Fix testsMatthew Heon2019-06-24
| | | | | | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | Change Marshal -> Unmarshal in generate kube testsMatthew Heon2019-06-24
| | | | | | | | | | | | | | | | | | | | | We need to verify that valid YAML was produced - Marshal will just pack the generated YAML even further. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | Add test for generate kube on a pod with portsMatthew Heon2019-06-24
| | | | | | | | | | | | Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | Only include ports in one container in Kube YAMLMatthew Heon2019-06-24
| |/ | | | | | | | | | | | | | | | | | | | | | | | | This likely broke when we made containers able to detect that they shared a network namespace and grab ports from the dependency container - prior to that, we could grab ports without concern for conflict, only the infra container had them. Now, all containers in a pod will return the same ports, so we have to work around this. Fixes #3408 Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | Merge pull request #3332 from rhatdan/cgroupmanagerOpenShift Merge Robot2019-06-25
|\ \ | | | | | | Correctly identify the defaults for cgroup-manager
| * | Correctly identify the defaults for cgroup-managerDaniel J Walsh2019-06-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we report cgroupmanager default as systemd, even if the user modified the libpod.conf. Also cgroupmanager does not work in rootless mode. This PR correctly identifies the default cgroup manager or reports it is not supported. Also add homeDir to correctly get the homedir if the $HOME is not set. Will attempt to get Homedir out of /etc/passwd. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* | | Merge pull request #3401 from mheon/templating_is_dumbOpenShift Merge Robot2019-06-25
|\ \ \ | | | | | | | | Fix inspect --format '{{.Mounts}}.
| * | | Support aliases for .Src and .Dst in inspect .MountsMatthew Heon2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides backwards compatability with 1.4.0-1.4.2 releases which name .Source and .Destination as .Src and .Dst - useful for not breaking toolbox. Also add a test. Signed-off-by: Matthew Heon <matthew.heon@pm.me>
| * | | Fix gofmtMatthew Heon2019-06-21
| | | | | | | | | | | | | | | | Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | | Adjust names to match struct tags in InspectMatthew Heon2019-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Go templating, we use the names of fields, not the JSON struct tags. To ensure templating works are expected, we need the two to match. Signed-off-by: Matthew Heon <mheon@redhat.com>
| * | | Fix inspect --format '{{.Mounts}}.Matthew Heon2019-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Go templating is incapable of dealing with pointers, so when we moved to Docker compatible mounts JSON, we broke it. The solution is to not use pointers in this part of inspect. Signed-off-by: Matthew Heon <mheon@redhat.com>
* | | | Merge pull request #3391 from QiWang19/cp_fileOpenShift Merge Robot2019-06-24
|\ \ \ \ | |_|_|/ |/| | | fix bug creats directory copying file
| * | | fix bug creats directory copying fileQi Wang2019-06-20
| | | | | | | | | | | | | | | | | | | | | | | | close #3384 Signed-off-by: Qi Wang <qiwan@redhat.com>
* | | | Merge pull request #3412 from mheon/fix_ps_sync_segfaultOpenShift Merge Robot2019-06-24
|\ \ \ \ | | | | | | | | | | Fix a segfault in 'podman ps --sync'
| * | | | Fix a segfault in 'podman ps --sync'Matthew Heon2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We weren't properly populating the container's OCI Runtime in Batch(), causing segfaults on attempting to access it. Add a test to make sure we actually catch cases like this in the future. Fixes #3411 Signed-off-by: Matthew Heon <matthew.heon@pm.me>
* | | | | Merge pull request #3414 from vrothberg/go-modulesOpenShift Merge Robot2019-06-24
|\ \ \ \ \ | | | | | | | | | | | | Go modules
| * | | | | migrate to go-modulesValentin Rothberg2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
| * | | | | Makefile: add go-get functionValentin Rothberg2019-06-24
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a `go-get` function to the Makefile to wrap `go get -u` into a wrapper disabling go modules. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | | | | Merge pull request #3398 from haircommander/conmon-hotfixOpenShift Merge Robot2019-06-24
|\ \ \ \ \ | | | | | | | | | | | | Update conmon to include attach socket unlink
| * | | | | update cirrus imagePeter Hunt2019-06-21
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Peter Hunt <pehunt@redhat.com>
| * | | | | Update conmon to include attach socket unlinkPeter Hunt2019-06-21
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Peter Hunt <pehunt@redhat.com>
* | | | | | Merge pull request #3406 from giuseppe/slirp-entry-to-hostsOpenShift Merge Robot2019-06-24
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | rootless: add an entry to /etc/hosts when using slirp4netns
| * | | | | rootless: add an entry to /etc/hosts when using slirp4netnsGiuseppe Scrivano2019-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes: https://github.com/containers/libpod/issues/3405 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | | | | Merge pull request #3404 from QazerLab/docs/rootless-tutorialOpenShift Merge Robot2019-06-23
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix configs location in rootless tutorial.
| * | | | | | Fix configs location in rootless tutorial.Danila Kiver2019-06-22
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | Signed-off-by: Danila Kiver <danila.kiver@mail.ru>
* | | | | | Merge pull request #3409 from giuseppe/add-crunOpenShift Merge Robot2019-06-23
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | libpod.conf: add runtime crun
| * | | | | libpod.conf: add runtime crunGiuseppe Scrivano2019-06-22
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | now that crun is available as a Fedora package, we can add an entry to the default libpod.conf so that it is easier to use it just by using --runtime crun to Podman. Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
* | | | | Merge pull request #3399 from astronouth7303/patch-1OpenShift Merge Robot2019-06-22
|\ \ \ \ \ | | | | | | | | | | | | Add /usr/local/{s,}bin to conmon paths
| * | | | | runtime.go: Add /usr/local/{s,}binJamie Bliss2019-06-21
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jamie Bliss <jamie@ivyleav.es>
| * | | | | Add /usr/local/{s,}bin to conmon pathsJamie Bliss2019-06-21
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | This is one of the default installation paths in conmon Signed-off-by: Jamie Bliss <jamie@ivyleav.es>
* | | | | Merge pull request #3400 from haircommander/install-hotfixOpenShift Merge Robot2019-06-22
|\ \ \ \ \ | | | | | | | | | | | | include make podman target in install instructions
| * | | | | include make podman target in install instructionsPeter Hunt2019-06-21
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | now that podman ships conmon >=0.3.0 Signed-off-by: Peter Hunt <pehunt@redhat.com>