* rationalizes build-cross and dist Makefile targets
- build-cross now depends on build, and uses the git tag if the checked out branch correlates with a tag
- dist now depends upon build-cross
This produces friendly artifacts with a `make dist` like so:
```
$ find _dist -maxdepth 1 -type f
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-darwin-amd64.tar.gz
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-darwin-amd64.zip
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-linux-amd64.tar.gz
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-linux-amd64.zip
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-windows-amd64.tar.gz
_dist/acs-engine-a1af5fbc14aee06f19a9d4863dcc05fe7d437cab-windows-amd64.zip
```
Or, for a release, when a release tag is checked out:
```
$ find _dist -maxdepth 1 -type f
_dist/acs-engine-v0.7.0-darwin-amd64.tar.gz
_dist/acs-engine-v0.7.0-darwin-amd64.zip
_dist/acs-engine-v0.7.0-linux-amd64.tar.gz
_dist/acs-engine-v0.7.0-linux-amd64.zip
_dist/acs-engine-v0.7.0-windows-amd64.tar.gz
_dist/acs-engine-v0.7.0-windows-amd64.zip
```
* using short git sha for gittag fallback
* rationalized vendor directory
- updated dependency declarations and version pinning (glide.lock)
- updated dependent code under vendor/
- added new `build-vendor` target to aid periodic rationalizations like this
* preferring build-binary
* testing
* delete sirupsen
* add sirupsen
* don’t need build-vendor
* fix(Makefile): Call bootstrap before we run generate
closes#1274
We call out to glide to get a list of directories when we run generate. This fails if the person doesnt have glide. So lets just go ahead and call bootstrap as part of that process
* remove GOFILES and instead just do the glide novendor in generate
* remove PKG variable declaration
* delivers a `make test-kubernetes` ginkgo e2e test
with circle config
* chore(make) make test needs to skip e2e dirs
* using ginkgo coverage script
* chmod +x scripts/ginkgo.coverage.sh
* added ginkgo-k8s-e2e to circleci jobs options
* include test.mk
* chmod +x test/e2e/runner
* split out into two circleci workflows
* master only test filter and tab correction
* missing colon after test expansion
* undo
* removing azure region from code
* add cmd version unit test
* generalize JUnit output directory
* upload junit tests to CircleCI
* extract common Ginkgo bootstrap
* use ginkgo for make test
* updated use of ginkgo
* chore(ci): use circle-ci as CI platform
* ref(Dockerfile): cache make bootstrap step
* chore(ci): separate e2e tests into separate step
* ref(ci): require manual approval to start e2e tests
* ref(ci): use microsoft/acs-engine:latest as base test image
* chore(kubectl): bump kubectl to v1.6.6
* fix(setup): install gometalinter as part of bootstrap
* ref(CI): remove docker build, refactor e2e test step
Circle CI runs all steps in the microsoft/acs-engine:latest container
and clones the latest code into the container, so no explicit need to
build an image
* fix(ci): explicitly run bootstrap at each step
* fix(ci): add GOPATH env
* fix(ci): bootstrap once. maybe?
* ref(e2e): set default ENV vars, remove cruft
* ref(ci): don't hold e2e pending on unit tests
* docs(ci): add CI badge
* fix(e2e): fix env vars
* fix(e2e): run e2e in docker container
* Revert "fix(e2e): run e2e in docker container"
This reverts commit 9e7e4765257d6a7e52d5af5eb547da6f74f9fea1.
* ref(e2e): remove Jenkins groovy scripts
* ref(ci): run subset of e2e tests for PRs, remove KV tests
- acse-pr.json becomes acse-feature-validation.json that we can use for
integration testing at a later stage (merge to master, releases, etc.)
- New acse-pr.json runs 4 e2e tests, one for each orchestrator
- Remove Key Vault setup in PR tests.
* chore(e2e): run full set of feature validation tests on master branch
* chore(Makefile): improve bootstrap command
* ref(Makefile): refactor `make build`, use go install
* chore(release): support building windows, linux, macos binaries
* ref(Makefile): change name order of bins (project-ver-platform-arch)
* fix(ci): fix path of acs-engine binary
* fix(Makefile): fix wrong argument in go install
- add new ACSEngineClient functions as needed
- add new interface for the AzureStorageClient
(it's a separate interface because there might be more
than one storage account used in the context of a request)