This uses gobin in the Makefile for golint. Gobin allows for easier
pinning of dependencies that are project specific, as in the actual
gobin command invocation you can specify the version.
I know it's not an impressive test. It just brings up a node, and
makes sure it registers. Let's do more in the future.
Signed-off-by: Sargun Dhillon <sargun@sargun.me>
This caches the downloaded go modules. It invalidates them based on
a hash of the go.mod, and go.sum. The test step showed a reduction
from 1:30 -> 1:00, and the e2e tests from 8:30 to 5 minutes.
Vendoring seems to be problematic with go modules.
In addition to causing issues with transitive dependencies and being
problematic when trying to pull in the node-cli code, it also seems to
be pulling different versions than what is computed in go.mod.
This can be seen by comparing commits from the computed version in
go.mod with very small diffs (like a single Godep change in k8s) but massive
vendoring changes.
Basically I have very little confidence that this is even working.
This should be better in go1.13, but this is not released yet.
This includes updates to CI config, vendor files, etc.
I've hard-coded the k8s depedency at 1.13.4 to keep it inline with what
we currently have and to make sure a another run of `go mod tidy`
doesn't accidentally update it to an unexpected version.
Thanks to hectorj2f for carrying this along.
* Add tracing of the kubernetes cluster during testing
This adds tracing to the testing to get the kubelet's logs upon
failure. In addition, it keeps track of the pods, and the node
statuses throughout the test.
* Add arguments to make virtual kubelet's log more useful
node.ResourceVersion must not be set when creating a node.
This issue prevents vk from resolving issues after the vk node instance
has been deleted (for whatever reason).
* provider: adding Nomad provider
* updating CONTRIBUTING.md with Nomad provider
* updated README.md by adding the Nomad provider
* fix typo
* adding nomad/api and nomad/testutil deps
* adding Nomad binary dependency for provider tests
* fixed the nomad binary download command step and added tolerations to the nomad provider.
* adding nomad provider demo gif
* adding my name to authors
* adding two missing go-rootcerts files after dep ensure
* delete pod comment
* 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>
* Started work on provider
* WIP Adding batch provider
* Working basic call into pool client. Need to parameterize the baseurl
* Fixed job creation by manipulating the content-type
* WIP Kicking off containers. Dirty
* [wip] More meat around scheduling simple containers.
* Working on basic task wrapper to co-schedule pods
* WIP on task wrapper
* WIP
* Working pod minimal wrapper for batch
* Integrate pod template code into provider
* Cleaning up
* Move to docker without gpu
* WIP batch integration
* partially working
* Working logs
* Tidy code
* WIP: Testing and readme
* Added readme and terraform deployment for GPU Azure Batch pool.
* Update to enable low priority nodes for gpu
* Fix log formatting bug. Return node logs when container not yet started
* Moved to golang v1.10
* Fix cri test
* Fix up minor docs Issue. Add provider to readme. Add var for vk image.