Commit Graph

11992 Commits

Author SHA1 Message Date
Justin Santa Barbara ee056fa975 upup: Retry if race detected in FindOrCreateSecret
We do a read / create-if-empty.  If the create fails because of a
concurrent creation, we retry the operation.

Fix #73
2016-06-11 22:40:47 -04:00
Justin Santa Barbara 68f899756c upup: allow -dns-zone to be specified
We default to the last two components of the cluster DNS name.  But a
lot of people will delelgate a subdomain and want to use that.

Fixes #98
2016-06-11 22:37:24 -04:00
Justin Santa Barbara 0263826163 upup: delete cluster should check status of ASG
Before deleting the ASG, we need to check it exists.

Issue #99
2016-06-11 21:33:56 -04:00
Justin Santa Barbara e63426ce65 upup: delete cluster should eventually give up
If it isn't making progress, eventually we should bail out so that we
can use this in scripts.  However, we don't need to be too aggressive,
because it is not good to leak resources, and a user will likely
Control-C us pretty fast when they see they're in a loop.

Issue #99
2016-06-11 21:33:56 -04:00
Justin Santa Barbara b52877e2ce upup: separate node & master zone configuration; validate
We allow --zones & --master-zones to be specified separately now, but we
validate for common errors (using a region where you meant a zone,
duplicating a zone, spanning regions, entering an invalid AZ etc)
2016-06-11 21:06:31 -04:00
Justin Santa Barbara 4e744ffa32 Merge pull request #92 from justinsb/upup_readme
upup: fix typo
2016-06-10 18:48:11 -04:00
Justin Santa Barbara b091e4ad60 upup: fix typo
Duplicated zone name
2016-06-10 18:47:12 -04:00
Justin Santa Barbara c64e05b4d9 Merge pull request #90 from justinsb/upup_polish_3
upup: more polish
2016-06-10 13:41:30 -04:00
Justin Santa Barbara d489fccd28 upup: make NodeConfig be JSON-clean
We use JSON-merging in our option parsing, so we need it to only
populate values that are actually set.
2016-06-10 13:37:48 -04:00
Justin Santa Barbara f3ebc088f1 upup: make LaunchConfiguration compatible with terraform
This way we can output a LaunchConfiguration prefix into terrform that
we can then read later, so that we can create with terraform and then
transfer to another mode of operation if desired.
2016-06-10 13:36:36 -04:00
Justin Santa Barbara c54ef2773d upup: support Base64 and raw-string JSON encoding of certs/keys
For compatability reasons, we write the certificate & keys as base64
encoded strings.  I don't think we have to any more, but we have to be
able to parse it.
2016-06-10 13:35:40 -04:00
Justin Santa Barbara 70002068fa upup: Allow node-count to be specified on the CLI
The other super-important option!
2016-06-10 13:35:16 -04:00
Justin Santa Barbara 329039497e Merge pull request #89 from justinsb/upup_gofmt
upup: apply gofmt
2016-06-10 11:42:20 -04:00
Justin Santa Barbara 7543d1c19d upup: apply gofmt
Missed a few gofmt places
2016-06-10 11:41:10 -04:00
Justin Santa Barbara aa8909e60d Merge pull request #88 from justinsb/upup_dryrun_print_json
upup: use JSON as fallback in --dryrun printing
2016-06-10 11:39:10 -04:00
Justin Santa Barbara 1cbcb82fe9 upup: use JSON as fallback in --dryrun printing
Rather than giving up with an error, we can simply use JSON format.
2016-06-10 11:38:21 -04:00
Justin Santa Barbara 9524548999 Merge pull request #87 from justinsb/upup_rollingupdate
upup: add experimental cluster rolling-update command
2016-06-10 11:37:59 -04:00
Justin Santa Barbara f3cfe88c94 Merge pull request #86 from justinsb/upup_split_launchconfiguration
upup: split launchconfiguration from ASG
2016-06-10 11:37:08 -04:00
Justin Santa Barbara 9b32edfb81 upup: add experimental cluster rolling-update command
Little more than a hack right now, but a good place to start.
2016-06-10 11:36:57 -04:00
Justin Santa Barbara 97dd0e905e Merge pull request #85 from justinsb/upup_options
upup: fix options processing
2016-06-10 11:36:22 -04:00
Justin Santa Barbara 52496ac73a upup: split launchconfiguration from ASG
It is much more logical this way, and mirrors the way GCE & terraform
work.
2016-06-10 11:36:17 -04:00
Justin Santa Barbara eeabcc0cb1 upup: fix options processing
We want to make sure that any values we set are treated both as defaults
and as overrides (i.e. the options shouldn't be able to override a value
the user has explicitly set)
2016-06-10 11:35:31 -04:00
Justin Santa Barbara 1a18e62ef0 Merge pull request #84 from justinsb/upup_tags_and_names
upup: prevent spurious changes on tags & names
2016-06-10 11:35:02 -04:00
Justin Santa Barbara 6e7c4209de upup: Simple tag fixes to avoid comparison failures
We populate the actual expected tags in-place now
2016-06-10 11:33:33 -04:00
Justin Santa Barbara 2c5e0c0164 upup: populate Name, to support --dryrun
Some of these types were coming up as spurious changes.
2016-06-10 11:33:29 -04:00
Justin Santa Barbara e10f09a81f Merge pull request #83 from justinsb/upup_node_sizes
upup: node size on CLI and more instance type families
2016-06-10 11:32:49 -04:00
Justin Santa Barbara 2bacc2035c upup: define m3, m4, c4 families
This allows us to set up their ephemeral volumes
2016-06-10 11:31:20 -04:00
Justin Santa Barbara e8af8f8efc upup: allow node size to be specific on CLI 2016-06-10 11:31:11 -04:00
Justin Santa Barbara 1bc3d91b8a Merge pull request #79 from justinsb/upup_official_types
upup: harmonize model with official config types
2016-06-10 11:31:09 -04:00
Justin Santa Barbara 7c478c794f upup: harmonize model with official config types 2016-06-10 01:28:44 -04:00
Justin Santa Barbara 40d85dbd98 Merge pull request #78 from justinsb/upup_multimodel
upup: split model into two parts
2016-06-09 23:16:05 -04:00
Justin Santa Barbara 6e203da852 upup: split model into two parts
This is probably a good idea anyway, but it also lets us side-step the
terraform no-dots-in-tags bug.
2016-06-09 23:14:36 -04:00
Justin Santa Barbara 5d10678c23 Merge pull request #77 from justinsb/upup_default_release
upup: default to latest stable release
2016-06-09 23:12:59 -04:00
Justin Santa Barbara fa860ca730 Merge pull request #75 from justinsb/upup_vfs
upup: Add VFS for storing state in S3 or locally
2016-06-09 23:12:54 -04:00
Justin Santa Barbara cd7aa5b309 Merge pull request #76 from justinsb/upup_terraform_prettify
upup: reformat terraform output
2016-06-09 23:12:39 -04:00
Justin Santa Barbara f3359d4bb9 upup: default to latest stable release
Avoids an extra CLI arg
2016-06-09 23:11:06 -04:00
Justin Santa Barbara 338f158d22 upup: Add VFS for storing state in S3 or locally
This also fixes a few concurrency issues, because we're writing in one
place now.
2016-06-09 23:08:10 -04:00
Justin Santa Barbara 93284d5d13 upup: reformat terraform output
Using string manipulation, sadly, but I believe it's safe as we don't
use heredocs
2016-06-09 23:07:12 -04:00
Justin Santa Barbara 01170e3a21 Merge pull request #71 from justinsb/upup_terraform
upup: support for terraform on AWS
2016-06-08 12:19:55 -04:00
Justin Santa Barbara b57c3ca1ab Merge pull request #72 from justinsb/upup_polish_2
upup: misc polish marching towards v1
2016-06-08 12:19:17 -04:00
Justin Santa Barbara c826f46a60 upup: support for terraform on AWS
All seems good except for a bug with volume tagging
2016-06-08 12:19:15 -04:00
Justin Santa Barbara 70d7c1b92e upup: avoid warning when building filters with nil name 2016-06-08 12:18:07 -04:00
Justin Santa Barbara e4c093a229 upup: protokube is launched from a container; asset not needed
We don't need to include an asset for protokube; we're running it from
the docker registry (like most of the k8s core components)
2016-06-08 12:18:07 -04:00
Justin Santa Barbara 9934755bde upup: use bare binaries, instead of the release tarball
Expanding the release tarball was one of the slowest pieces of the
install, and we only need kubelet & kubectl from it.
2016-06-08 12:18:07 -04:00
Justin Santa Barbara 42e32f7379 upup: include kope-routing, but only if _kope_routing is set 2016-06-08 12:18:04 -04:00
Justin Santa Barbara 59124fd6fb upup: include count of tasks as we are executing them 2016-06-08 12:16:19 -04:00
Justin Santa Barbara 4d331e2881 upup: Reattempt up to 3 times when no progress made
Now that we're running in parallel, sometimes AWS eventual consistency
causes us problems.  We now retry up to 3 times, sleeping 10 seconds in
between each run even when we aren't making progress.
2016-06-08 12:16:19 -04:00
Justin Santa Barbara 44507e64cf upup: remove some bad logging
Was left over from move to simpler unmarshal model
2016-06-08 12:16:19 -04:00
Justin Santa Barbara 7641a92688 Merge pull request #67 from justinsb/upup_polish
upup: Update makefile, readme, deps
2016-06-07 17:54:29 -04:00
Justin Santa Barbara a392d5572c upup: Update makefile, readme, deps 2016-06-07 17:53:35 -04:00