summaryrefslogtreecommitdiff
path: root/pkg/api/handlers/libpod
Commit message (Collapse)AuthorAge
* Stop wrapping pull messagesDaniel J Walsh2020-04-23
| | | | | | | | | | The length and size of our error messages on failure to pull is huge. This patch at least eliminates some of the wrapping. But I think eventually we need to look at containers/image and see if we can modify the error messages to something a little more human friendly. Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* podman rmi: refactor logicValentin Rothberg2020-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | While this commit was initially meant to fix #5847, it has turned into a bigger refactoring which I did not manage to break into smaller pieces: * Fix #5847 by refactoring the image-removal logic. * Make the api handler for image-removal use the ABI code. This way, both (i.e., ABI and Tunnel) end up using the same code. Achieving this code share required to move some code around to prevent circular dependencies. * Everything in pkg/api (excluding pkg/api/types) must now only be accessed from code using `ABISupport`. * Avoid imports from entities on handlers to prevent circular dependencies. * Move `podman system service` logic into `cmd` to prevent circular dependencies - it depends on pkg/api. * Also remove the build header from infra/abi files. It will otherwise confuse swagger and other tools; errors we cannot fix as go doesn't expose a build-tag env variable. Fixes: #5847 Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* Add pod prune for api v2.Sujil022020-04-17
| | | | | | | | Add the ability to prune pods for api v2, Includes the addition of force flag, for client side prompt. Update test suite to support this use case. Signed-off-by: Sujil02 <sushah@redhat.com>
* Fixes for system testsBrent Baude2020-04-17
| | | | | | Various fixes to protect against regressions in system tests Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5842 from baude/v2bloat2OpenShift Merge Robot2020-04-16
|\ | | | | podman v2 remove bloat v2
| * podman v2 remove bloat v2Brent Baude2020-04-16
| | | | | | | | | | | | rid ourseleves of libpod references in v2 client Signed-off-by: Brent Baude <bbaude@redhat.com>
* | allow filters to work when listing containersBrent Baude2020-04-16
|/ | | | | | | | enable filters when listing containers on the libpod endpoint. Fixes: #5841 Signed-off-by: Brent Baude <bbaude@redhat.com>
* v2 bloat pruning phase 2Brent Baude2020-04-15
| | | | | | this is second phase of removing unneeded bloat in the remote client. this is important to be able to reduce the client size as well as possible native compilation for windows/mac. Signed-off-by: Brent Baude <bbaude@redhat.com>
* v2specgen prune libpodBrent Baude2020-04-14
| | | | | | use libpod only in the specgen/generate package so that the remote clients do not inherit libpod bloat. Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5709 from vrothberg/v2-searchOpenShift Merge Robot2020-04-14
|\ | | | | podmanV2: implement search
| * podmanV2: implement searchValentin Rothberg2020-04-09
| | | | | | | | | | | | | | | | Also implement a new libpod endpoint to add more parameters and to prevent us from converting between slices and maps and make use of the filter parsing in the image backend. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | v2podman add container initBrent Baude2020-04-13
|/ | | | | | add the ability to init a container both local and remote Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5716 from baude/v2psOpenShift Merge Robot2020-04-06
|\ | | | | podmanv2 ps
| * podmanv2 psBrent Baude2020-04-06
| | | | | | | | | | | | add the ability to list containers Signed-off-by: Brent Baude <bbaude@redhat.com>
* | refactor infoBrent Baude2020-04-06
|/ | | | | | the current implementation of info, while typed, is very loosely done so. we need stronger types for our apiv2 implmentation and bindings. Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5689 from sujil02/v2-pod-inspectOpenShift Merge Robot2020-04-06
|\ | | | | podmanv2 pod inspect
| * podmanv2 pod inspectSujil022020-04-01
| | | | | | | | | | | | Add the ability to inspect pod in podmanv2 Signed-off-by: Sujil02 <sushah@redhat.com>
* | v2podman container createBrent Baude2020-04-03
| | | | | | | | | | | | create a container in podmanv2 using specgen approach. this is the core implementation and still has quite a bit of code commented out specifically around volumes, devices, and namespaces. need contributions from smes on these parts. Signed-off-by: Brent Baude <bbaude@redhat.com>
* | Merge pull request #5672 from baude/v2saveOpenShift Merge Robot2020-04-03
|\ \ | | | | | | podmanv2 save image
| * | podmanv2 save imageBrent Baude2020-04-03
| | | | | | | | | | | | | | | | | | add ability to save an image for podman v2 Signed-off-by: Brent Baude <bbaude@redhat.com>
* | | Merge pull request #5638 from baude/v2containercheckOpenShift Merge Robot2020-04-03
|\ \ \ | |/ / |/| | podmanv2 checkpoint and restore
| * | podmanv2 checkpoint and restoreBrent Baude2020-04-03
| | | | | | | | | | | | | | | | | | add the ability to checkpoint and restore containers on v2podman Signed-off-by: Brent Baude <bbaude@redhat.com>
* | | podmanV2: implement pushValentin Rothberg2020-04-02
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement `podman-push` and `podman-image-push` for the podmanV2 client. * Tests for `pkg/bindings` are not possible at the time of writing as we don't have a local registry running. * Implement `/images/{name}/push` compat endpoint. Tests are not implemented for this v2 endpoint. It has been tested manually. General note: The auth config extraction from the http header is not implement for push. Since it's not yet supported for other endpoints either, I deferred it to future work. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | podmanv2 importBrent Baude2020-04-01
| | | | | | | | | | | | add the ability to import a container image from a container export Signed-off-by: Brent Baude <bbaude@redhat.com>
* | podmanv2 loadBrent Baude2020-04-01
|/ | | | | | | | | | enable podman load for v2 add reexec into main add systemd build flag to v2 makefile Signed-off-by: Brent Baude <bbaude@redhat.com>
* podman v2 image tag and untagBrent Baude2020-03-31
| | | | | | add the ability to tag and untag images in podmanv2 Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5675 from vrothberg/v2-pullOpenShift Merge Robot2020-03-31
|\ | | | | podmanV2: implement pull
| * podmanV2: implement pullValentin Rothberg2020-03-31
| | | | | | | | | | | | | | | | | | | | | | | | | | Implement pulling images for the v2 client. What I _really_ don't like is the fact that we are now having a near identical code clone among `pkg/domain/infra/abi` and `pkg/api/handlers/libpod`. Partly because we don't yet have a higher-level pull function and partly because we have redudancy among `pkg/domain` and `pkg/api`. Pull might be a high outlier but I am concerned already by the potential of introducing more redundancy. I'd love to `infra/abi` and `pkg/abi` to really use the same code in the future. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* | v2 api: implement pods top endpointValentin Rothberg2020-03-28
|/ | | | | | | Note that this commit does not add tests for the pod-top endpoint. They will be added in a later change. Signed-off-by: Valentin Rothberg <rothberg@redhat.com>
* Add support for containers.confDaniel J Walsh2020-03-27
| | | | | | | vendor in c/common config pkg for containers.conf Signed-off-by: Qi Wang qiwan@redhat.com Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* Merge pull request #5632 from jwhonce/wip/imagesOpenShift Merge Robot2020-03-27
|\ | | | | V2 podman image prune
| * V2 podman image pruneJhon Honce2020-03-26
| | | | | | | | | | | | | | | | | | * Fixed header for `podman image ls` * Implemented prune `all` flag, preserved filter method for backwards capability * Updated binding tests Signed-off-by: Jhon Honce <jhonce@redhat.com>
* | podmanv2 pod create using podspecgenBrent Baude2020-03-27
|/ | | | | | | | using the factory approach similar to container, we now create pods based on a pod spec generator. wired up the podmanv2 pod create command, podcreatewithspec binding, simple binding test, and apiv2 endpoint. also included some code refactoring as it introduced as easy circular import. Signed-off-by: Brent Baude <bbaude@redhat.com>
* podmanv2 pod subcommandsBrent Baude2020-03-26
| | | | | | add pod kill, pause, restart, rm, start, stop, and unpause Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5604 from jwhonce/wip/imagesOpenShift Merge Robot2020-03-25
|\ | | | | V2 podman images/image list
| * V2 podman images/image listJhon Honce2020-03-24
| | | | | | | | | | | | | | | | | | | | * Updated entities to support flags/options * Updated bindings caused by entities changes * Removed handlers.ImageSummary in favor of entities.ImageSummary * Introduced StringSet() container object to simply error checking Signed-off-by: Jhon Honce <jhonce@redhat.com>
* | podmanv2 volumesBrent Baude2020-03-24
|/ | | | | | add volume commands: create, inspect, ls, prune, and rm Signed-off-by: Brent Baude <bbaude@redhat.com>
* apiv2 container commit for libpodBrent Baude2020-03-23
| | | | | | | | add an endpoint for a libpod specific commit. add the abilility to define the format. also update documentation accordingly. Fixes: #5586 Signed-off-by: Brent Baude <bbaude@redhat.com>
* podmanv2 volume createBrent Baude2020-03-20
| | | | | | add volume create Signed-off-by: Brent Baude <bbaude@redhat.com>
* podmanv2 container exists|waitBrent Baude2020-03-20
| | | | | | enable container exists and wait for podmanv2 Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5445 from sujil02/podFilter-newOpenShift Merge Robot2020-03-19
|\ | | | | Filter pods through pod list api
| * Filter pods through pod list apiSujil022020-03-17
| | | | | | | | | | | | | | Refactored current filter pods flow through the shared pod functions so filter pod functionalities can be shared between api and cmd. Signed-off-by: Sujil02 <sushah@redhat.com>
* | serve swagger when presentBrent Baude2020-03-18
|/ | | | | | register the swagger endpoint and add some error handling for when the swagger file does not exist Signed-off-by: Brent Baude <bbaude@redhat.com>
* Merge pull request #5449 from baude/manifestsOpenShift Merge Robot2020-03-17
|\ | | | | apiv2 addition of manifests
| * apiv2 addition of manifestsBrent Baude2020-03-16
| | | | | | | | | | | | | | | | add endpoints for create, add, remove, inspect, and push. this allows manifests to be managed through the restful interfaces. also added go-bindings and tests Signed-off-by: Brent Baude <bbaude@redhat.com>
* | add apiv2 healthcheck codeBrent Baude2020-03-13
|/ | | | | | reworking binding and endpoint to actually work. added documentation in swagger for and various return code possibilities. add a good start on tests though we need some other container functions not yet implemented for that. Signed-off-by: Brent Baude <bbaude@redhat.com>
* Update start stop api to use pod status function.Sujil022020-03-10
| | | | | | | Update the strat and stop api to validate pod status based on status functions rather than iterating over all the containers in the pod. (Addressing the TO-DO) Signed-off-by: Sujil02 <sushah@redhat.com>
* Refactor handler packagesJhon Honce2020-03-10
| | | | | | | To help with packaging, the handlers in pkg/api/handlers are now found in pkg/api/handler/compat. Signed-off-by: Jhon Honce <jhonce@redhat.com>
* Fix spelling mistakes in code found by codespellDaniel J Walsh2020-03-07
| | | | Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
* rework apiv2 wait endpoint|bindingBrent Baude2020-02-28
| | | | | | | | added the ability to wait on a condition (stopped, running, paused...) for a container. if a condition is not provided, wait will default to the stopped condition which uses the original wait code paths. if the condition is stopped, the container exit code will be returned. also, correct a mux issue we discovered. Signed-off-by: Brent Baude <bbaude@redhat.com>