k3s/cluster
Kubernetes Submit Queue a8899b314b
Merge pull request #61241 from jpbetz/go-migrate-if-needed
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Reimplement migrate-if-needed.sh in go

The `migrate-if-needed.sh` script was already partially implemented in go (see the attachlease and rollback sub-dirs), but was still unnecessarily difficult to understand and test.  This closely reimplements the original logic but with improved code structure, error handling and testing.

Where possible, go code that was previously executed as separate binaries is now statically linked into a single 'migrate' go cobra CLI app, which is then thinly wrapped by`migrate-if-needed.sh`.

There are numerous additional improvements that need to be made, but will be submitted in future PRs.  This PR is focused on achieving parity with the pre-existing functionality and introducing some much needed test coverage, in particular HA cluster upgrade test coverage.

It appears that the `attachlease` and `rollback` go binaries are no longer needed as standalones and so I have consolidated them into the new `migrate` go binary. Other than that, this change aims to be 100% backward compatible.

```release-note
NONE
```
2018-04-11 02:37:09 -07:00
..
addons Add wildcard toleration to nvidia-gpu-device-plugin. 2018-04-06 17:36:48 -07:00
centos rename StorageProtection to StorageObjectInUseProtection 2018-02-21 10:48:56 +08:00
gce Merge pull request #61241 from jpbetz/go-migrate-if-needed 2018-04-11 02:37:09 -07:00
images Reimplement migrate-if-needed.sh in go 2018-04-10 09:19:30 -07:00
juju Merge pull request #62071 from wwwtyro/rye/arm64-support 2018-04-10 08:56:27 -07:00
kubemark Merge pull request #61241 from jpbetz/go-migrate-if-needed 2018-04-11 02:37:09 -07:00
kubernetes-anywhere Fix log collection for kubeadm-gce tests 2017-10-26 07:57:42 -04:00
local
log-dump Switch to k8s.gcr.io vanity domain 2018-02-07 21:14:19 -08:00
pre-existing
skeleton cluster: remove kube-push 2018-01-13 08:08:48 -08:00
BUILD Reimplement migrate-if-needed.sh in go 2018-04-10 09:19:30 -07:00
OWNERS
README.md
clientbin.sh Update helper scripts to find binaries in new bazel-bin paths 2017-12-23 13:13:09 -08:00
common.sh Don't require release tars on kube-down 2018-04-05 17:39:18 -04:00
get-kube-binaries.sh
get-kube-local.sh Switch to k8s.gcr.io vanity domain 2018-02-07 21:14:19 -08:00
get-kube.sh Remove salt support for providers that no longer exist. 2018-01-12 15:51:23 -08:00
kube-down.sh
kube-up.sh Don't require release tars on kube-down 2018-04-05 17:39:18 -04:00
kube-util.sh Do not clobber KUBERNETES_PROVIDER - fix kubeadm/gce log collection 2017-10-30 17:33:08 -04:00
kubeadm.sh fix flaky integration tests 2018-03-29 09:45:46 -07:00
kubectl.sh
restore-from-backup.sh fix all the typos across the project 2018-02-11 11:04:14 +08:00
test-e2e.sh
test-network.sh
test-smoke.sh
update-storage-objects.sh cluster/update-storage-objects.sh: Fix to ignore deleted objects 2018-03-22 14:47:33 +09:00
validate-cluster.sh fix all the typos across the project 2018-02-11 11:04:14 +08:00

README.md

Cluster Configuration

Deprecation Notice: This directory has entered maintenance mode and will not be accepting new providers. Please submit new automation deployments to kube-deploy. Deployments in this directory will continue to be maintained and supported at their current level of support.

The scripts and data in this directory automate creation and configuration of a Kubernetes cluster, including networking, DNS, nodes, and master components.

See the getting-started guides for examples of how to use the scripts.

cloudprovider/config-default.sh contains a set of tweakable definitions/parameters for the cluster.

The heavy lifting of configuring the VMs is done by SaltStack.

Analytics