Commit Graph

760 Commits

Author SHA1 Message Date
Rodrigo Menezes d803480485 Merge remote-tracking branch 'upstream/master' into extra_user-data 2017-10-24 12:52:19 -07:00
Rohith 9958d333ae Kops Toolbox Template
The current implementation fails on template which reference unset variables, it is however useful at times to permit overriding this behavior and using sprig default() for example methods to handle it

- added a new command line option --fail-on-missing (defaults to true, so keeps the current behaviour)
- updated the unit test to reflect the changes
- updated the cli docs
2017-10-22 14:29:23 +00:00
Rodrigo Menezes 469b73560f Merge remote-tracking branch 'upstream/master' into extra_user-data 2017-10-17 14:10:25 -07:00
Justin Santa Barbara eec1141a41 Rationalize timeouts for rolling-update
The intervals remain the minimum time between instances; drain &
validate time is additional.
2017-10-17 11:44:46 -04:00
chrislovecnm 91d4e7e3e8 fixing bazel missed BUILD stuff 2017-10-16 10:38:53 -06:00
Rodrigo Menezes 75aa120f43 Merge remote-tracking branch 'upstream/master' into extra_user-data 2017-10-15 17:17:12 -07:00
Rodrigo Menezes e77cda1af1 Allow passing in extra user-data to cloud-init 2017-10-15 17:10:03 -07:00
chrislovecnm eeafe6467c Integration tests for phases - iam works - others are WIP 2017-10-12 14:13:17 -06:00
Erick Tryzelaar 5a89dd113c `kops get ...` should exit with non-zero if the resource don't exist
Without this change, `kops get --name non-existing-cluster` will
exit with a status of `0`, which makes it difficult to check if
a cluster (and other resources) exist in a shell script.
2017-10-11 16:11:16 -07:00
Justin Santa Barbara 19677523c0 Mock kops version in tests
This avoids having to update the tests every time our version changes.
2017-10-10 11:11:57 -04:00
Kubernetes Submit Queue 1c9df0b269 Merge pull request #3524 from justinsb/gce_format_ig_zones
Automatic merge from submit-queue.

GCE: Fix subnets vs zones formatting of instance groups
2017-10-08 13:16:52 -07:00
chrislovecnm 2e6f8bf461 setting variable in func instead inside of func call 2017-10-05 20:38:34 -06:00
Thomas Schaaf 6330c6c6ee Minor spelling 2017-10-05 09:06:09 +02:00
Justin Santa Barbara 3ab5264ee4 Fix update cluster integration test for bazel
Bazel doesn't like overlapping file paths; this is much cleaner anyway.
2017-10-03 20:51:00 -04:00
Kubernetes Submit Queue 98bf9d35a9 Merge pull request #3477 from chrislovecnm/update-test-yaml-k8s-version
Automatic merge from submit-queue.

bumping k8s versions in test files

updating k8s versions in test YAML files so that we do not get warnings during testing
2017-10-03 14:03:23 -07:00
chrislovecnm 0abcaa8026 renaming cf integration test folder 2017-10-03 13:38:13 -06:00
chrislovecnm 48c6dfdad4 giving cf its own files, because it has hardcoded versions 2017-10-03 12:16:04 -06:00
Justin Santa Barbara 38ea16a4ae GCE: Fix subnets vs zones formatting of instance groups 2017-10-03 13:42:14 -04:00
Justin Santa Barbara 39d4f21954 bazel: stamp version into build 2017-10-03 11:36:40 -04:00
Justin Santa Barbara 57ceb5dbab bazel: Add targets for cross-package testdata 2017-10-03 10:54:46 -04:00
Justin Santa Barbara 0143be7c4f autogen: BUILD and BUILD.bazel 2017-10-02 14:27:21 -04:00
Justin Santa Barbara 544990842a More fixes for 1.8 API changes 2017-10-01 23:02:32 -04:00
Justin Santa Barbara 95d4f3eb59 More code updates for 1.8 2017-10-01 21:13:00 -04:00
Justin Santa Barbara 3478031533 API types changed package 2017-10-01 14:03:56 -04:00
Justin Santa Barbara 0c89c9851e Simple code updates for 1.8 breakages 2017-10-01 13:17:40 -04:00
Kubernetes Submit Queue 0905e71741 Merge pull request #3411 from justinsb/mirror_stores
Automatic merge from submit-queue.

Mirror keystore & secretstore
2017-09-30 23:08:33 -07:00
Justin Santa Barbara a4a58d277d Mirroring - Fixes from code review 2017-09-30 22:05:14 -04:00
Kubernetes Submit Queue 852455afed Merge pull request #3439 from justinsb/gce_zones_in_instancegroup
Automatic merge from submit-queue.

Add Zones field to InstanceGroup

The Zones field can specify zones where they are not specified on a
Subnet, for example on GCE where we have regional subnets.
2017-09-30 18:17:32 -07:00
Justin Santa Barbara 7fd1196708 Add Zones field to InstanceGroup
The Zones field can specify zones where they are not specified on a
Subnet, for example on GCE where we have regional subnets.
2017-09-30 19:44:35 -04:00
Justin Santa Barbara da99a7270d Subnets on GCE are regional, create one per region
We also make the subnet zone and CIDR optional on GCE
2017-09-30 19:22:14 -04:00
Justin Santa Barbara 8280c4f9d3 Remove MarkIsReady function, calculate on demand
Avoids setting the trap of failing to call MarkIsReady
2017-09-30 17:39:53 -04:00
chrislovecnm a431eb3e43 refactoring to use cloud based GetGroups 2017-09-29 12:29:07 -06:00
John Laswell a6dbc73502
docs updates to clarify and fix typos
Helps with https://github.com/kubernetes/kops/issues/3441.
2017-09-26 19:50:38 -04:00
Justin Santa Barbara 559d885480 Mirror keystore & secretstore
This allows us to have our API objects in kops-server, but our
configuration on S3 or GCS.
2017-09-24 00:09:02 -04:00
Kubernetes Submit Queue ba42020e09 Merge pull request #3329 from chrislovecnm/promote-drain-validate
Automatic merge from submit-queue. .

promoting drain and validate by setting feature flag to true

I am unable to recreate https://github.com/kubernetes/kops/issues/2407, and frankly, it may be an edge case.  We could warn a user if their wait times are low, but that would be another PR.

This PR moves Drain and Validate functionality for rolling-updates into the default user experience, setting the Feature Flag to true.

Per feedback, I am using the node and master interval times for the validation.
2017-09-23 21:07:26 -07:00
Kubernetes Submit Queue 9ffa37ac6b Merge pull request #3435 from justinsb/gce_network_mode_custom
Automatic merge from submit-queue. .

Create GCE networks in auto mode, not legacy mode

auto mode allows for conversion to custom mode at the API level, and
legacy mode is deprecated.
2017-09-23 18:03:41 -07:00
chrislovecnm ec2f0dfdf3 reusing the node and master duration for validation periods 2017-09-23 18:11:48 -06:00
Justin Santa Barbara 73dd870118 GCE integration test: verify TF output 2017-09-23 16:27:15 -04:00
Justin Santa Barbara e730e043ab Add function to get etcd status
This will allow us to permit changing the etcd configuration only if
etcd has not yet been configured.
2017-09-22 23:27:26 -04:00
georgebuckerfield da36425dfb Enable support for encryption-at-rest
- add a new kops secret command to store encryption config
- add the experimential-encryption-provider-config flag to the kube-apiserver
- add functionality to nodeup to create the stored encryption config in the correct path
2017-09-22 17:14:51 +01:00
Justin Santa Barbara 055f510c6f Create minimal mock GCECloud, first test
We test create cluster - we actually have an issue with the length of
the names on longer cluster names; first step is to get test coverage.
2017-09-16 11:02:30 -04:00
Marius Davidsen 34cbbd20db Adds --master-public-name argument to create_cluster. 2017-09-15 13:20:20 +02:00
Kubernetes Submit Queue 5cb443d4a9 Merge pull request #3290 from romana/romana-networking-option
Automatic merge from submit-queue

Add romana to built-in CNI options

This PR adds `romana` as a networking option for kops.

It installs the latest "preview" release of Romana v2.0, which provides the expected features in terms of IP allocations and route configuration. Network policy features are being ported to 2.0 and will be in the final release. (We intend to submit a followup PR for kops as part of that rolling out that release.)

Note: in this setup, we're using the etcd cluster that kops deploys for k8s. This isn't ideal, but some possibilities (eg: StatefulSets) aren't practical for the CNI itself, and creating a parallel etcd cluster via manifests seemed to be a more-intrusive approach than using the existing one.
If this is a concern or problem, then I'm very open to discussing and implementing it based on your suggestions.

Also, some functionality is exclusive to AWS environments. Other cloud platforms are on Romana's roadmap but not developed yet. Let me know that restriction needs to be enforced in code or directly documented.
2017-09-14 20:43:05 -07:00
Kubernetes Submit Queue 593f444297 Merge pull request #3359 from justinsb/delete_more_secrets
Automatic merge from submit-queue

Support for deleting tokens & keypairs
2017-09-14 19:30:08 -07:00
Caleb Gilmour 79d331e590 Add support for Romana as a networking option 2017-09-13 22:48:18 +00:00
Kubernetes Submit Queue 26e1cb06bf Merge pull request #3190 from justinsb/flannel_vlxan
Automatic merge from submit-queue

Flannel: change default backend type

We support udp, which has to the default for backwards-compatibility,
but also new clusters will now use vxlan.
2017-09-12 19:03:17 -07:00
Justin Santa Barbara f463a8e30e Add docs for flannel-vxlan option 2017-09-12 20:53:00 -04:00
Kubernetes Submit Queue 721ba52139 Merge pull request #3287 from gambol99/toolbox_template
Automatic merge from submit-queue

Toolbox template

Extending the current implementation of toolbox template to include multiple files and snippets. Note, I've removed the requirements for defaults as I think people should be forced to specifically pass them

- allowing the users to use a snippets directory for reusable templates
- allows the users to specify multiple templates files via multiple --template <path>, use a directory or both
- allows the users to specify multiple configuration files via multiple --values <path>,  use a directory or both
- adding a safety check to ensure templates don't reference an unknown values
- fixing the vetting issues to the method YamlToJson -> YAMLToJSON
- as usual anything a saw on the journey which doesn't comply with go-vet got changed

Examples of a snippet

```YAML
hooks:
  - name: some_service.service
    manifest: |
      {{ include "some_service.service" . | indent 6 }}
```
We currently use something similar to template our cluster and instances group documents, handling the differences between prod, ci and ephemeral
2017-09-10 14:04:05 -07:00
Justin Santa Barbara 106875115d Support for deleting tokens & keypairs
This now allows for deleting all secrets, which means we can have a
procedure for rotating all keys.
2017-09-09 01:04:45 -04:00
Kubernetes Submit Queue ae51cfef95 Merge pull request #3336 from justinsb/nodeportaccess
Automatic merge from submit-queue

nodePortAccess, experimental spec override flag
2017-09-08 15:40:01 -07:00
Rohith aaf6143a98 Toolbox Templating
Extending the current implementation of toolbox template to include multiple files and snippets. Note, i've removed the requirements for defaults as I think people should be forced to specifically pass them.

- fixing the vetting iseues to the method YamlToJson -> YAMLToJSON
- adding a safety check to ensure templates don't reference an unknown value
- extending the unit test to ensure the above works on main and snippets
- include the ability to specify multiple configuration files, useful for common.yaml and prod.yaml etc

Requested Changes - Toolbox Templating

Added the requested changes

- moved the templater into it's own package rather than using base util
- moved to using the sprig library for additional template function
- @note: i couldn't find a native way in sprig to do snippets, also the i've overloaded the indent as it appears to do the indent on all lines rather than on the newline, meaning i'd have to shift my first line back by the indent to get it to work, which seems ugly
2017-09-08 20:30:21 +01:00
Kubernetes Submit Queue 05cf84dc3d Merge pull request #3299 from justinsb/extract_userdata
Automatic merge from submit-queue

Extract UserData from CloudFormation output during testing
2017-09-06 10:05:39 -07:00
Justin Santa Barbara 9d31ed1b08 nodePortAccess, experimental spec override flag
This will allow us to set CIDRs for nodeport access, which in turn will
allow e2e tests that require nodeport access to pass.

Then add a feature-flagged flag to `kops create cluster` to allow
arbitrary setting of spec values; currently the only value supported is
cluster.spec.nodePortAccess
2017-09-04 14:27:31 -04:00
andrewsykim d9fa618de6 refactor resource tracker to be usable across packages 2017-09-02 17:37:21 -04:00
Justin Santa Barbara 15d6834113 Flannel: support choosing a backend type
We support udp, which has to the default for backwards-compatibility,
but also new clusters will now use vxlan.
2017-08-30 21:16:21 -04:00
Justin Santa Barbara 69e3d760f4 Misc go vet fixes 2017-08-29 09:55:40 -04:00
Justin Santa Barbara e793562ee6 Extract UserData from CloudFormation output during testing
This gives us some sanity, so we can peek inside the base64 blob
2017-08-29 09:47:11 -04:00
Kubernetes Submit Queue 1cba2a2346 Merge pull request #3292 from chrislovecnm/gce-change-to-interface
Automatic merge from submit-queue

Implementing GCE as an interface - modelling aws cloud provider

GCE and other cloud providers are structs instead of an interface.  AWS cloud provider implements an interface.  This PR refactors `GCECloud` as an interface, and creates `gceCloudImplementation`.

- [x] Need to e2e test
2017-08-28 05:54:57 -07:00
Kubernetes Submit Queue 0c7268435e Merge pull request #3285 from justinsb/fix_space_in_rollingupdatecluster_help
Automatic merge from submit-queue

Fix space in rolling-update cluster help
2017-08-28 03:04:20 -07:00
chrislovecnm 0779fb6fc4 Implementing GCE as an inteface modelling aws cloud provider 2017-08-27 22:19:25 -06:00
Kubernetes Submit Queue 847f6defee Merge pull request #3277 from alrs/kops-command-fixes
Automatic merge from submit-queue

Kops command fixes

TrimSuffix() on defaultStateStore doesn't actually do anything, and there is an unused answer variable in the tests.
2017-08-26 14:40:02 -07:00
Justin Santa Barbara 6d2185a6cd Fix space in rolling-update cluster help
When we use pretty.Bash, we must use pretty.LongDesc to stop the spacing
being mangled.
2017-08-26 07:39:17 -04:00
Lars Lehtonen 408b11d4cc
Assign unused test variable to _ 2017-08-25 14:29:50 -07:00
Lars Lehtonen 24e79a3d8e
TrimSuffix of defaultStateStore 2017-08-25 14:26:24 -07:00
Kubernetes Submit Queue d661e27a99 Merge pull request #3240 from justinsb/create_and_update_functions
Automatic merge from submit-queue

Explicit CreateCluster & UpdateCluster functions
2017-08-25 06:37:34 -07:00
Kubernetes Submit Queue 1e3eef37bf Merge pull request #3245 from mad01/sshsecret
Automatic merge from submit-queue

Adding support for adding ssh public key from file

MVP implementation of adding secret from file related to #2195 

```bash
cat > secret.yaml <<EOF
apiVersion: kops/v1alpha2
kind: SSHSecret
metadata:
  labels:
    kops.k8s.io/cluster: dev.k8s.example.com
spec:
  username: "admin"
  sshPublicKey: "ssh-rsa AAAAB3NzaC1yc2EEEAADA dev@devbox"
EOF
```

`kops create -f secret.yaml`
2017-08-24 20:18:48 -07:00
Justin Santa Barbara c6e31a94c7 Explicit CreateCluster & UpdateCluster functions
This enables better validation (in the etcd status PR)
2017-08-24 14:03:37 -04:00
Kubernetes Submit Queue e6683481c8 Merge pull request #3139 from justinsb/hints_on_cf_test
Automatic merge from submit-queue

Add hints to CF integration test
2017-08-24 00:07:52 -07:00
Alexander Brandstedt 5705885d02 rename sshsecret to sshcredential and update files to reflect change. 2017-08-23 12:18:10 +02:00
Kubernetes Submit Queue 34473e8602 Merge pull request #3210 from KashifSaadat/feature-gate-strict-iam-policies
Automatic merge from submit-queue

Allow the strict IAM policies to be optional

The stricter IAM policies could potentially cause regression for some edge-cases, or may rely on nodeup image changes that haven't yet been deployed / tagged officially (currently the case on master branch since PR https://github.com/kubernetes/kops/pull/3158 was merged in).

This PR just wraps the new IAM policy rules around a cluster spec flag, `EnableStrictIAM`, so will default to the original behaviour (where the S3 policies were completely open). Could also be used to wrap PR https://github.com/kubernetes/kops/pull/3186 if it progresses any further.

- Or we could reject this and have the policies always strict! :)
2017-08-22 20:27:54 -07:00
Kashif Saadat 0e5c393f10 Rename IAM switch to legacy, default to false for new cluster creations. 2017-08-22 13:27:55 +01:00
chrislovecnm 6071ce7383 refactoring for tracking via assets container registry 2017-08-21 17:29:16 -06:00
chrislovecnm 7efb0f31f6 updating phases 2017-08-21 15:17:34 -06:00
Alexander Brandstedt 1eceb788e6 implementation of adding ssh public key using sshsecret spec 2017-08-21 17:18:00 +02:00
Kubernetes Submit Queue 9c86800207 Merge pull request #3085 from chrislovecnm/file-asset-tasks
Automatic merge from submit-queue

starting work on file assets builder

I refactored to the dockerassets pkg to assetstasks, in order to not add yet another package.  Added file copy task, that I have tested with s3 locally, but not certain how to add memfs tests.

Fixes: https://github.com/kubernetes/kops/issues/3086
2017-08-20 08:21:06 -07:00
Kubernetes Submit Queue a3fdefa74c Merge pull request #3041 from justinsb/it_shared_vpc_and_subnet
Automatic merge from submit-queue

Add integration tests for shared subnet & VPC
2017-08-18 15:55:53 -07:00
Kashif Saadat 6a3df8fb7c Don't force ig image change on cluster upgrade if it is custom. 2017-08-18 20:52:50 +01:00
chrislovecnm ee17e6567c starting work on file assets builder 2017-08-18 13:04:12 -06:00
lichuqiang 90ed63465b fix typo 2017-08-17 19:16:13 +08:00
Kubernetes Submit Queue 71d66849a0 Merge pull request #3209 from krzyzacy/addding
Automatic merge from submit-queue

s/addding/adding/ in ssh logs

I was hittting this errror messsage :-(
2017-08-16 09:53:29 -07:00
Sen Lu 790ca20051 s/addding/adding/ in ssh logs 2017-08-15 18:16:03 -07:00
Kubernetes Submit Queue 74d0e211f4 Merge pull request #3193 from orrchen/master
Automatic merge from submit-queue

resolve #3169
2017-08-14 06:14:00 -07:00
Orr Chen 43020af959 resolve #3169 2017-08-13 19:16:22 +03:00
Kubernetes Submit Queue b7efd3ba62 Merge pull request #3120 from KashifSaadat/diff-on-component-config-changes
Automatic merge from submit-queue

Add cluster spec to node user data so component config changes are detected

Related to #3076 

Some cluster changes such as component config modifications are not picked up when performing updates (nodes are not marked as `NEEDUPDATE`). This change introduces the ability to:
1. Include certain cluster specs within the node user data file ~(`enableClusterSpecInUserData: true`)~
2. ~Encode the cluster spec string before placing within the user data file (`enableClusterSpecInUserData: true`)~

~The above flags default to false so shouldn't cause any changes to existing clusters.~

Following feedback I've removed the optional API flags, so component config is included by default within the user data. This WILL cause all nodes to have a required update to their bootstrap scripts.
2017-08-11 03:43:17 -07:00
Kubernetes Submit Queue b1aee7a505 Merge pull request #2542 from kenden/patch-1
Automatic merge from submit-queue

Clarify docs: rename spec/specification into desired configuration 

The cluster state in S3 has (among others) two files: `cluster.spec` and `config`.
When the documentation mentioned "create or update cluster spec" for example, it was confusing what was actually updated. It's not the cluster.spec file.
As I understand, `cluster.spec` should only be created/updated after `kops update --yes` is run.

I changed the docs for `kops get`, `kops create`, `kops replace`, `kops edit`.
I did NOT change those files: `kops_rolling-update.md`, `kops_rolling-update_cluster.md` as I think those actually use `cluster.spec`.
2017-08-10 21:37:29 -07:00
Quentin Nerden 5491f179d1 Clarify docs: rename spec to desired conf
In the S3 bucket, the file cluster.spec is not actually the spec, but the
actual configuration. The file config is the spec. To avoid confusion,
this commit changes spec/specification into 'desired configuration' in
the documentation, to avoid associating cluster.spec with a cluster
'specification' that the users should use.
2017-08-10 18:50:45 +02:00
Lars Lehtonen 5bdd7f2568
Fix dropped error in kops cmd package 2017-08-09 16:29:18 -07:00
Kashif Saadat e0461b92a9 Add ability to store partial cluster and instancegroup spec in userdata,
so component config changes are detected and causes nodes to be updated
2017-08-09 14:15:02 +01:00
asifdxtreme 18f6edd850 Fix Typo to improve GoReportCard 2017-08-08 10:48:14 +08:00
Rohith 3599e64205 - fixing up the flag name from --create to --force to make it align to the kubectl syntax 2017-08-04 20:44:49 +01:00
Rohith e4a53dd044 Replace Command
The current 'kops replace' fails if the resource does not exist, which is annoying if you want to use the feature to drive your CI. This PR adds a --create option to create any resource which does not exist. At the moment we limit this to instanceGroups only. I'd also like to see this command perhaps be renamed to kops apply?
2017-08-04 20:44:49 +01:00
Kubernetes Submit Queue 10ce978b64 Merge pull request #3040 from mad01/templating
Automatic merge from submit-queue

MVP of templating 

MVP implementation of templating to generate cluster.yaml file: related to #2404 implementation is using the `text/template`

```bash
cat > values.yaml <<EOF
clusterName: eu1
kubernetesVersion: 1.7.1
dnsZone: k8s.example.com
awsRegion: eu-west-1
EOF
```

```bash
cat > cluster.tmpl.yaml <<EOF
apiVersion: kops/v1alpha2
kind: InstanceGroup
metadata:
  labels:
	kops.k8s.io/cluster: {{.clusterName}}.{{.dnsZone}}
  name: nodes
spec:
  image: coreos.com/CoreOS-stable-1409.6.0-hvm
  machineType: m4.large
  maxPrice: "0.5"
  maxSize: 2
  minSize: 15
  role: Node
  rootVolumeSize: 100
  subnets:
  - {{.awsRegion}}a
  - {{.awsRegion}}b
  - {{.awsRegion}}c

EOF
```

running the templating command
```bash
  kops toolbox template \
      --values values.yaml \
      --template cluster.tmpl.yaml \
      --output cluster.yaml
```

output
```bash
apiVersion: kops/v1alpha2
kind: InstanceGroup
metadata:
  labels:
	kops.k8s.io/cluster: eu1.k8s.example.com
  name: nodes
spec:
  image: coreos.com/CoreOS-stable-1409.6.0-hvm
  machineType: m4.large
  maxPrice: "0.5"
  maxSize: 2
  minSize: 15
  role: Node
  rootVolumeSize: 100
  subnets:
  - eu-west-1a
  - eu-west-1b
  - eu-west-1c
```
2017-08-04 09:26:41 -07:00
Justin Santa Barbara 434e1d2000 Add hints to CF integration test
We can save the CF output, which makes dealing with the base64 blob much
more convenient.
2017-08-04 11:08:11 -04:00
Kubernetes Submit Queue 29415860e2 Merge pull request #2950 from chrislovecnm/full-spec-warning
Automatic merge from submit-queue

adding warning about --full

This starts work on https://github.com/kubernetes/kops/issues/2290.  Adds a warning to deter users from using YAML generated by --full.
2017-08-03 21:05:02 -07:00
Blake 4f95fe473f Incorporate review feedback
- Rename to just DockerConfig / dockerconfig everywhere for consistency
- Check if the config is valid JSON
- Update docs
2017-08-01 13:15:19 -07:00
Blake 60dc81fe49 Add `kops create secret nodedockercfg` feature
This adds a well-known secret name `nodedockercfg` which will automatically
be used if present to create /root/.docker/config.json on all nodes. This will
allow private registries to be used for kops hooks as well as any k8s images
without the need to define `imagePullSecrets` in every namespace.

closes https://github.com/kubernetes/kops/issues/2505
2017-07-28 17:38:50 -07:00
Alexander Brandstedt 04a68e7ec8 change template func to take out io.Writer from function not directly use os.Stdout 2017-07-26 11:19:25 +02:00
Kubernetes Submit Queue c9e651b997 Merge pull request #3050 from craigmonson/master
Automatic merge from submit-queue

Fixing "dederation"

Noticed in some comments and docs, misspelled "dederation".  Fixed.
2017-07-25 14:53:50 -07:00
Kubernetes Submit Queue b371ff81b9 Merge pull request #3027 from justinsb/ssh_access_test
Automatic merge from submit-queue

Create test for ssh-access
2017-07-25 14:19:10 -07:00
craigmonson 4e31533761 fix "dederation" 2017-07-25 15:33:36 -04:00
craigmonson 3990f582b4 fix "dederation" 2017-07-25 15:31:46 -04:00
Alexander Brandstedt 89150391c1 remove inline example file with eof 2017-07-25 10:23:59 +02:00
Alexander Brandstedt b0cf65ceca correct squash 2017-07-25 10:23:59 +02:00
Alexander Brandstedt 21d43e3187 MPV implementation of templating to generate cluster.yaml file: related to #2404
rename command templating to template
2017-07-25 10:23:59 +02:00
Kubernetes Submit Queue 83fb549a9d Merge pull request #2960 from justinsb/dont_delete_shared_subnets
Automatic merge from submit-queue

Honor shared tags when deleting subnets/vpcs
2017-07-24 22:05:43 -07:00
Justin Santa Barbara 64f0920c8b Add integration tests for shared subnet & VPC 2017-07-24 10:37:07 -04:00
Justin Santa Barbara 94fceff30a Fix more instances where cluster could be nil
Generally check the return value where we can't tolerate it being nil,
similar to the case seen in #3011.
2017-07-23 23:39:57 -04:00
Justin Santa Barbara c537c7271c Avoid panic when cluster not found
Based on the stack trace in #3011

Fix #3011
2017-07-23 23:21:50 -04:00
Kubernetes Submit Queue 89dd78bee9 Merge pull request #3026 from justinsb/repoint_pause_2
Automatic merge from submit-queue

Remap pause image through our AssetBuilder
2017-07-22 19:01:31 -07:00
Justin Santa Barbara cde70934dc Create test for ssh-access 2017-07-22 01:45:03 -04:00
Kubernetes Submit Queue 14a8c9ae89 Merge pull request #3014 from BradErz/adding-ssh-access
Automatic merge from submit-queue

Adding ssh access flag 

Adding --ssh-access flag to seperate from --admin-access

Addresses: https://github.com/kubernetes/kops/issues/3013
2017-07-21 22:43:02 -07:00
Justin Santa Barbara 0115ece62d Remap pause image through our AssetBuilder 2017-07-22 00:35:37 -04:00
Kubernetes Submit Queue 62d702a22b Merge pull request #2763 from justinsb/lifecycle
Automatic merge from submit-queue

Support for lifecycles
2017-07-21 09:59:00 -07:00
Bradley a798cc721c Adding the case where adminAccess is not set but sshAccess is 2017-07-21 17:28:17 +01:00
Bradley 490407e199 removed logs 2017-07-20 22:02:52 +01:00
Bradley fa755127a7 Fixing docs 2017-07-20 22:01:47 +01:00
Bradley f7979692b1 Added the --ssh-access flag to specify the sshAccess on cluster creation from the cli 2017-07-20 21:46:15 +01:00
Frederik Nordahl Jul Sabroe 76cec3940c Fix for the instructions about using KOPS_FEATURE_FLAGS for drain and validate. 2017-07-20 16:19:24 +02:00
Justin Santa Barbara db2d2c7d54 Honor shared tags when deleting subnets/vpcs
We expose the Shared state on the resource, bubble it down into derived
resources (like NAT Gateways or Internet Gateways).

Deletion then skips Shared items.  Listing (currently) does not skip
them.
2017-07-15 23:19:52 -04:00
Justin Santa Barbara 7a870f65b9 Example of how to do bash in our CLI help
* Use the pretty.LongDesc function (which doesn't pipe it through
markdown -> ascii)
* Use pretty.Bash helper to avoid problems with backticks in
go-backtick-quoted-strings
* Make sure indentation is consistent
2017-07-15 22:09:48 -04:00
Justin Santa Barbara 3dfe48e5ae Wiring up lifecycle 2017-07-15 22:03:54 -04:00
chrislovecnm c3d5df1ca9 adding warning about --full 2017-07-15 11:16:59 -06:00
Justin Santa Barbara 17b3fa36eb Try adding header to generated CLI docs
Fix #2834
2017-07-15 13:14:21 -04:00
Benedict Hartley de993cf254
Fix typos in docs 2017-07-14 19:52:51 +01:00
Justin Santa Barbara 1965a4be49 Updates to fix unit tests 2017-07-08 18:46:01 -04:00
Giancarlo Rubio cbe8742699 review doc on creating instance group 2017-07-06 16:02:21 +02:00
Arve Knudsen bb776c6ca3 Fix typos in upgrade cluster docs 2017-07-04 00:50:47 +02:00
Justin Santa Barbara 7c8dcc4a0d Code changes for 1.7 2017-07-02 13:10:28 -04:00
chrislovecnm 39bf52d525 fixing bug with using shell flag 2017-06-30 13:03:45 -06:00
chrislovecnm 38aae71bee updating found govet issues and adding test directory 2017-06-23 16:42:33 -06:00
Justin Santa Barbara e945322cab Support generated clientset as alternative to vfs clientset
We modelled our VFS clientset (for API objects backed by a VFS path)
after the "real" clientsets, so now it is relatively easy to add a
second implementation that will be backed by a real clientset.

The snafu here is that we weren't really using namespaces previously.
Namespaces do seem to be the primary RBAC scoping mechanism though, so
we start using them with the real clientset.

The namespace is currently inferred from the cluster name.  We map dots
to dashes, because of namespace limitations, which could yield
collisions, but we'll deal with this by simply preventing users from
creating conflicting cluster names - i.e. you simply won't be able to
create a.b.example.com and a-b.example.com
2017-06-20 22:29:37 -04:00
chrislovecnm ed5ef173ee Fixing typo and grammar 2017-06-20 11:37:33 -06:00
Justin Santa Barbara f75ea400a3 Merge pull request #2772 from chrislovecnm/delete-fix
Work on kops delete
2017-06-20 01:18:26 -04:00
Justin Santa Barbara 5955467be0 Default to loadbalancer ingress for gossip dns
DNS ingress won't work anyway.
2017-06-19 14:16:35 -04:00
chrislovecnm 26224ce371 Work on deletes; no error without "--yes", fixed delete.go deleting ig that does not exist, doc updates. 2017-06-17 22:19:35 -06:00
Justin Santa Barbara 8fb99a87e2 Merge pull request #2680 from murali-reddy/kube-router
add support for kube-router as CNI networking provider
2017-06-16 10:37:49 -04:00
andrewsykim e8c99ee72e removes cluster delete code in upup/pkg/kutil duplicated in pkg/resources and puts instancegroup and rollingupdate code into its own packges 2017-06-10 15:21:06 -04:00
Matt Marchetti c847bd1fa3 Initial commit to add option to set volume size at creation 2017-06-09 10:53:25 -04:00
Murali Reddy e872dbcb86 add support for kube-router as CNI networking provider
fixes #2606

Most part of the changes are similar to current supported CNI networking
provider. Kube-router also support IPVS bassed service proxy which can
be used as replacement for kube-proxy. So the manifest for kube-router
included with this patch enables kube-router to provide pod-to-pod
networking, IPVS based service proxy and ingress pod firewall.
2017-06-09 17:01:31 +05:30
andrewsykim e6cb45189c remove TODO 2017-05-30 20:43:08 -04:00
andrewsykim eecd2072b2 Generalize Cluster Resources 2017-05-30 20:43:08 -04:00
Jordan Jennings 6213c519e1 Make Weave MTU configurable and set AWS default config for jumbo frames 2017-05-30 06:36:09 -04:00
chrislovecnm 786072be99 bad merge 2017-05-19 17:31:09 -06:00
Eric Hole fb75bdcd31 get now gets a cluster 2017-05-19 17:29:05 -06:00
chrislovecnm 36e8449cc7 updates 2017-05-19 09:04:33 -06:00
Willem Mali cf7d9c71c9 Clarified --image paramater applies to all cluster instances 2017-05-19 14:20:51 +02:00
Justin Santa Barbara db0c86e8ee Cleanup get command 2017-05-18 14:22:02 -04:00
Willem Mali 1fffc13a22 removed deprecated secrets command subtree from CLI and docs 2017-05-18 14:52:14 +02:00
Justin Santa Barbara 54d9ac79f0 Merge pull request #2559 from mikesplain/add_api_loadbalancer
Add api-loadbalancer option to cli set public or internal loadbalancer
2017-05-16 10:26:19 -04:00
Mike Splain bd0f18d413 Rename api-loadbalancer to api-loadbalancer-type and cleanup 2017-05-16 09:42:52 -04:00
Mike Splain 1ee84d1922 Fix typo 2017-05-16 09:42:52 -04:00
Mike Splain bb30f51fc4 Add api-loadbalancer option to force public or internal loadbalancer for the masters 2017-05-16 09:42:52 -04:00
Seungcheol Ko 964099155b Fix typo: export -> expose 2017-05-16 07:43:01 +00:00
Justin Santa Barbara 942142f96c Merge pull request #2555 from rdtr/unset_default_state_value_on_docs_creation
Fixes 2502: unset default value of state flag when docs are generated
2017-05-16 00:49:29 -04:00
Chris Love e1cbf82072 Merge pull request #2566 from gianrubio/fix-rolling-upgrade
Review rolling-update command
2017-05-15 14:47:58 -06:00
Justin Santa Barbara df057199b1 Merge pull request #2515 from justinsb/dont_assume_ha_master
Only do HA if master-count or master-zones is specified
2017-05-15 12:56:22 -04:00
Chris Love 12e4305998 Merge pull request #2565 from gianrubio/fix-completion-command
review completion command
2017-05-15 09:59:08 -06:00
Justin Santa Barbara 4487639eff Only do HA if master-count or master-zones is specified
We don't want to "accidentally" enable HA.  When users specify multiple
zones, but don't specify a master-count or master-zones, we interpret
that as master-count=1
2017-05-15 11:57:03 -04:00
Giancarlo Rubio 44ea396832 review rolling-update command
export var KOPS_FEATURE_FLAGS in the docs
2017-05-15 16:26:14 +02:00
Justin Santa Barbara c94373fe88 Merge pull request #2550 from rdtr/accept_kopeio_as_network_spec
#2514 support 'kopeio' as networking argument
2017-05-15 10:22:00 -04:00
Giancarlo Rubio 76e40a88d9 review completion command 2017-05-15 12:30:56 +02:00
Norio Akagi f480ac9a12 fixed #2514: support 'kopeio' as networking argument 2017-05-12 09:08:53 -07:00
Norio Akagi 12550e7f5f Fixes #2502: unset default value of state flag when docs are generated 2017-05-12 02:10:14 -07:00
Laurent Crisci cf6654e60c
Fixed some typos, s/resrouces/resources/ 2017-05-11 17:05:50 +01:00
Justin Santa Barbara 201e6c883b Merge pull request #2531 from BradErz/fix-issues-2530
Added -A flag to ssh connection
2017-05-10 08:48:12 -07:00
Chris Love 101cdcdd8c Merge pull request #2512 from svozza/update-help-cloudformation-target
Mention CloudFormation as target in update cluster help
2017-05-09 22:14:20 -06:00
Chris Love 0ea8f6d239 Merge pull request #2524 from dolftax/state-store-trailing-slash
[Fixes #2439] Trim trailing slash (if present) in state store value
2017-05-09 22:10:11 -06:00
Bradley e48684832f Added warning about the ssh user 2017-05-09 22:20:10 +01:00
Bradley 57bcec2a13 Removed forwarding key when connecting to the master 2017-05-09 13:07:27 +01:00
Stefano Vozza cb53eb3518 mention cloudformation as target in update cluster help 2017-05-08 22:04:24 +01:00
Bradley 45aa3a72e8 Added -A flag to ssh connection 2017-05-08 21:51:33 +01:00
Jaipradeesh Janarthanan 40ace52c37
[Fixes #2439] Trim trailing slash (if present) in state store value
Signed-off-by: Jaipradeesh Janarthanan <jaipradeesh@gmail.com>
2017-05-08 12:57:21 +05:30
chrislovecnm 53848f1f7f Work on cli documentation 2017-05-07 21:03:29 -06:00
chrislovecnm 7487b0d756 updating docs, adding verify-gendocs and more build tweaks 2017-05-04 18:58:10 -06:00
Roberto J Rojas 4d4dcc7942 #1005 cmd: root, create, delete, edit, update and upgrade use of templates and i18n. 2017-04-26 16:02:03 -04:00
Justin Santa Barbara eddd73549c Use LB IP address for private dns 2017-04-25 01:32:27 -04:00
Justin Santa Barbara 77fbf9cbf9 Merge pull request #2401 from vmware/vsphere-upstream
Add vSphere provider support
2017-04-25 00:09:37 -04:00
William Broach 1b70378a10 removing backticks, they broke the build 2017-04-23 12:12:27 -04:00
William Broach 75c782efdf Specified that the commands need to be ran all in the same dir 2017-04-23 11:53:12 -04:00
William Broach 3e3eb2ceba Note code for rollingupdate for terraform users 2017-04-22 17:49:15 -04:00
chrislovecnm 93c7784e62 typo 2017-04-22 12:56:37 -06:00
chrislovecnm 3b03fe6864 zsh autocompletion and updating docs 2017-04-22 11:55:51 -06:00
prashima 5c92bc6a2d Added featureflag for vSphere cloud. Fixes #26. (#29) 2017-04-20 23:37:40 -07:00
Abrar Shivani 5889814c90 Support for vSphere Cloud Provider 2017-04-20 23:33:21 -07:00
Miao Luo 4f98f5b47e Use CoreDNS for vSphere provider (#2)
* Add support of CoreDNS for vSphere provider.

* Add instructions about how to setup CoreDNS for vSphere provider.

* Address comments for CoreDNS support code.
2017-04-20 23:33:20 -07:00
Miao Luo 716349bf22 Fix the type of vSphere fields in CloudConfig and update auto-generated conversion files.
To make sure the vSphere fields in CloudConfiguration can be successfully serialized
and output into config file.
2017-04-20 23:33:18 -07:00
Miao Luo efdffd1c41 Address comments.
1. Check the emptiness of VSPHERE_USERNAME and VSPHERE_PASSWORD
2. Move vSphere specific fields from clusterSpec to clusterSpec.CloudConfig
2017-04-20 23:33:17 -07:00
Miao Luo 30573e9aaf Add more supports for vsphere.
Accept vSphere's server, datacenter, cluster setting by flags
"vsphere-server", "vsphere-datacenter", and "vsphere-resource-pool".
Username and password can be set by environment variables:
"VSPHERE_USERNAME" and "VSPHERE_PASSWORD".
2017-04-20 23:32:59 -07:00
Chris Love 4f71f49e71 Merge pull request #2001 from justinsb/fix_2000
rolling-update: if filtering IGs, don't warn if IG not found
2017-04-20 22:28:07 -06:00
Chris Love 32f0b39038 Merge pull request #2271 from pronix/feature/extend_PR_398
create encrypted volume during initiation cluster
2017-04-19 19:39:46 -06:00
Justin Santa Barbara 30361eef68 Merge pull request #2328 from andrewsykim/2310
Move cluster delete files to pkg/resources
2017-04-19 21:31:38 -04:00
dima bf06e36a4f change flag to --encrypt-etcd-storage=true 2017-04-19 13:27:56 +02:00
dima 968cf784a9 Merge branch 'master' of https://github.com/kubernetes/kops into feature/extend_PR_398 2017-04-19 12:37:52 +02:00
andrewsykim 440976074d Move cluster delete files to pkg/resources 2017-04-08 10:14:15 -04:00
Justin Santa Barbara f98f078d83 Add missed error handling from nodeup lstat
Issue #2304
2017-04-07 23:46:31 -04:00
Justin Santa Barbara 0ac9b21797 rolling-update: if filtering IGs, don't warn if IG not found
Fix #2000
2017-04-07 23:43:53 -04:00
Justin Santa Barbara 2054ef4fed Merge pull request #2297 from ahl/dns
Support dns=private with terraform #1848
2017-04-07 00:51:05 -04:00
Justin Santa Barbara 8bc48ef10a Merge pull request #2305 from caarlos0/patch-1
Fixed typos: clusteres -> cluster
2017-04-06 21:13:36 -04:00
Chris Love bd564cf7fd Merge pull request #2240 from MrTrustor/delete-f
Implement --filename option for kops delete
2017-04-06 15:41:11 -06:00
Carlos Alexandro Becker 655e34dfd4 typo on rollingupdatecluster 2017-04-06 17:48:30 -03:00