This cleans up the CLI code significantly.
Also makes some of this re-usable for providers who want to do so.
This also removes the main.go from the top of the tree of the repro,
instead moving it into cmd/virtual-kubelet.
This allows us to better utilize the package namespace (and e.g. mv the
`vkubelet` package to the top of the tree).
Allows us to make use of of make's target deps instead of re-execing
make in our build target just for custom, one-shot environment changes.
Keeps e2e bin in bin/e2e/virtual-kubelet.
* Add providers subcommand to verify providers
Allows users to check what providers are available
* Fix version output to add new line
This command was totally broken until we moved around the call to
`initConfig()`, this just fixes the output now that it works.
* Flip boolean of provider include tags
All providers are still included by default and fix tags using the old
format.
* ci: move go vet to validate check
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* cri: don't build when not on linux
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* mock: implement GetStatsSummary
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* make: use skaffold to deploy vk
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* test: add an e2e test suite
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* test: add vendored code
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* docs: update README.md
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* ci: run e2e on circleci
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* make: improve the skaffold target
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* e2e: fix defer pod deletion
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* e2e: improve instructions
Signed-off-by: Paulo Pires <pjpires@gmail.com>
* makefile: default shell is bash
Signed-off-by: Paulo Pires <pjpires@gmail.com>
Can now do something like `make VK_BUILD_TAGS=no_jaeger_exporter build`
and jaeger support will not be compiled in.
Currently there are build flags to omit every provider and every (the
only) supported tracing exporter.
* Add Virtual Kubelet provider for VIC
Initial virtual kubelet provider for VMware VIC. This provider currently
handles creating and starting of a pod VM via the VIC portlayer and persona
server. Image store handling via the VIC persona server. This provider
currently requires the feature/wolfpack branch of VIC.
* Added pod stop and delete. Also added node capacity.
Added the ability to stop and delete pod VMs via VIC. Also retrieve
node capacity information from the VCH.
* Cleanup and readme file
Some file clean up and added a Readme.md markdown file for the VIC
provider.
* Cleaned up errors, added function comments, moved operation code
1. Cleaned up error handling. Set standard for creating errors.
2. Added method prototype comments for all interface functions.
3. Moved PodCreator, PodStarter, PodStopper, and PodDeleter to a new folder.
* Add mocking code and unit tests for podcache, podcreator, and podstarter
Used the unit test framework used in VIC to handle assertions in the provider's
unit test. Mocking code generated using OSS project mockery, which is compatible
with the testify assertion framework.
* Vendored packages for the VIC provider
Requires feature/wolfpack branch of VIC and a few specific commit sha of
projects used within VIC.
* Implementation of POD Stopper and Deleter unit tests (#4)
* Updated files for initial PR
Update k8s client and the dependencies
ACI client change for Mocking
Add ACI Provider Mock Tests
Add the Windows development environment
Add UT for Default Resource Requests
Enable the make test in Docker file
Update the vendors