Podman dev (#6183)

* Add runOn flag

* Instantiate Kube/Podman DevClient instance according to runOn flag

* Start and stop Podman Pod

* Unit tests for createPodFromComponent

* podman mode runs without Kube config

* Fix tests + rebase

* Add sync and exec clients to podman dev

* tbc: call sync

* Remove unnecessary kclient dependency from exec client

* Inject podman client

* Implement ExecCMDInContainer for podman client

* Move [gG]etFirstContainerWithSourceVolume to dev/common package and use it for Podman

* TBC: execute build/run commands

* Fix rebase

* Fix unit test

* Comments for refacto

* Prepare implementation of Platform

* Use ExecuteRunCommand for run handler

* Do not pass parameters present in context

* Move back instanciation of devclient to clientset package

* Move CleanupDevResources method from Watch to Dev package

* CleanupResources: Do not pass parameters present in context

* Fix deleting volumes at exit time

* Check volumes do not exist

* Add support for postStart event

* Make odo dev work when no cluster is configured

* Review

* Add more TODOs

* User interface

* More info on ExitError errors

* Display forwarded ports in output and devstate file

* Add tests for forwarded ports

* Create .odo when necessary

* Add keyboard commands message

* Add doc on podman platform
This commit is contained in:
Philippe Martin
2022-11-21 14:56:44 +01:00
committed by GitHub
parent d1d7ccebbf
commit 20ea3a2043
28 changed files with 1490 additions and 204 deletions

View File

@@ -86,3 +86,7 @@ mockgen -source=pkg/sync/interface.go \
mockgen -source=pkg/exec/interface.go \
-package exec \
-destination pkg/exec/mock.go
mockgen -source=pkg/podman/interface.go \
-package podman \
-destination pkg/podman/mock.go