Commit Graph

1277 Commits

Author SHA1 Message Date
Kubernetes Prow Robot a5b47e9c18
Merge pull request #9407 from hakman/master-node-image
Add master and node image options when creating a cluster
2020-06-20 11:08:39 -07:00
Ciprian Hacman 279fd313ec Address review comments
Co-authored-by: Peter Rifel <rifelpet@users.noreply.github.com>
2020-06-20 19:33:42 +03:00
John Gardiner Myers 99c8c4b8fc Move apply logic down into pkg for import use 2020-06-19 23:51:41 -07:00
John Gardiner Myers 87a981093b Remove unused loading code from Loader 2020-06-19 23:30:56 -07:00
Peter Rifel 75ccf45eb7
Fold multiple integration test cases into the complex cluster test
Each integration test cluster adds many LoC and some overhead in running the integration tests.
Since many of the tests are only testing a specific feature, it would be simpler to combine all of the non-mutually exclusive features into the complex cluster.
2020-06-19 22:09:22 -05:00
Ciprian Hacman fa9b4ac217 Add master and node image options when creating a cluster 2020-06-19 22:23:05 +03:00
Peter Rifel 9eba72c2b4
Add a couple more "area" labels 2020-06-18 07:01:05 -05:00
Ole Markus With acaa1e1dfc Implement VFS for vault 2020-06-18 13:02:37 +02:00
Kubernetes Prow Robot eb39ab7349
Merge pull request #9355 from johngmyers/move-port
Move host-network services off of port 8080
2020-06-16 09:10:04 -07:00
John Gardiner Myers 0d74344a43 Remove the baremetal cloud provider 2020-06-14 10:38:29 -07:00
John Gardiner Myers 4bf8302f14 Move kube-apiserver-healthcheck to port 3990 2020-06-12 22:00:14 -07:00
Kubernetes Prow Robot 54d4a81ea8
Merge pull request #9289 from johngmyers/launch-template
Use launch templates by default
2020-06-11 13:40:57 -07:00
Ole Markus With 2abded190a Update cmd help text 2020-06-11 08:37:10 +02:00
John Gardiner Myers 3ce8dd165b Use launch templates by default 2020-06-10 09:34:48 -07:00
Peter Rifel ba62bbea74
Fix NPD when creating a kube-router cluster 2020-06-10 07:04:40 -05:00
Peter Rifel 0895218e3d
Disable kubeproxy when creating a kube-router cluster 2020-06-09 21:53:53 -05:00
Peter Rifel bc074e857c
Use ec2.DescribeInstanceTypes in awsup.GetMachineTypeInfo
This requires passing a cloud object in additional places throughout the validation package and originating mostly from cmd/kops

This means that some kops commands now require valid cloud provider credentials, but I don't think this is an issue because the vast majority of use-cases already require the same cloud provider credentials in order to interact with the state store.
2020-06-09 10:13:01 -05:00
ZouYu 2fc52ec6be fix some go-lint warning
Signed-off-by: ZouYu <zouy.fnst@cn.fujitsu.com>
2020-06-09 08:52:50 +08:00
Kubernetes Prow Robot d18e97140e
Merge pull request #9130 from johngmyers/pki-refactor
Refactor cert issuance code
2020-06-05 01:43:43 -07:00
John Gardiner Myers f9b0415093 Update generated files 2020-06-04 12:13:49 -07:00
John Gardiner Myers e88e0cf7ec Remove code supporting dropped k8s versions 2020-06-04 12:11:51 -07:00
John Gardiner Myers c142483cfa Move cert issuance code to pki module 2020-06-04 10:26:42 -07:00
Kubernetes Prow Robot c6dcaa8199
Merge pull request #9154 from MoShitrit/issue-9031
Add support for encryption in Cilium
2020-06-04 03:11:15 -07:00
Ole Markus With 991549a5f4 Remove support for Romana 2020-06-03 08:23:53 +02:00
Peter Rifel 0117881962
Remove redundant ValidateInstanceGroup call
The `cloudup.PopulateInstanceGroupSpec` directly after this calls `ValidateInstanceGroup` so this first call is redundant.

This is minor cleanup to help simplify the aws instance type validation PR
2020-06-02 22:01:02 -05:00
Zhou Hao deb90e4ea4 Add example for describe secret
Signed-off-by: Zhou Hao <zhouhao@cn.fujitsu.com>
2020-06-02 10:38:34 +08:00
Kubernetes Prow Robot 7b067983df
Merge pull request #9177 from olemarkus/remove-vsphere
Remove vsphere cloud provider
2020-06-01 06:19:54 -07:00
Justin SB ac36147372 GCE: fix typo 2020-05-31 23:37:16 -04:00
John Gardiner Myers 121cd926eb Remove unused file 2020-05-30 17:15:47 -07:00
Ole Markus With 7342525872 Remove vsphere from kops files 2020-05-30 13:36:55 +02:00
Kubernetes Prow Robot ba08b248f0
Merge pull request #9198 from q384566678/add-example
Add example for delete secret
2020-05-29 19:23:53 -07:00
Zhou Hao 6f1fcf1944 Add example for delete secret
Signed-off-by: Zhou Hao <zhouhao@cn.fujitsu.com>
2020-05-29 08:40:29 +08:00
Kubernetes Prow Robot 6830cf6d44
Merge pull request #9065 from johngmyers/remove-distro
Remove support for CoreOS and Jessie
2020-05-27 23:22:01 -07:00
MoShitrit 316a0e2b00 Adding encryption support for Cilium
Adding support for 'secret-name' flag

Adding instructions to enable encryption

Updating docs for cli

Addressing comments

Adding ciliumpassword subcommand to 'kops create secret'

Updating command to generate ciliumpassword secret
2020-05-25 01:54:24 -04:00
John Gardiner Myers 2d98e5609c Remove/fix more CoreOS references 2020-05-22 20:54:41 -07:00
Ole Markus With 6e04586361 Docs fixes 2020-05-22 08:08:58 +02:00
Ole Markus With e3055a6906 Inline supportsPrivateTopology 2020-05-22 08:08:58 +02:00
Ole Markus With eebb605c9c Remove as much of the classic networking logic as we can 2020-05-22 08:08:58 +02:00
Ole Markus With d1ff25bb4e Remove some rather long networking nil checks 2020-05-22 08:08:58 +02:00
Ole Markus With 95d2170fa6 Update networking in kops create
* Remove classic from cli docs. Add missing providers
* Use cilium instead of weave in example since we don't consider weave stable
2020-05-22 08:08:58 +02:00
John Gardiner Myers 8a6d29cd40 Remove support for reading legacy-format keypairs 2020-05-20 13:28:13 -07:00
Kubernetes Prow Robot 50a1a8edfb
Merge pull request #9121 from atmosx/master
Add EC2 Instance LifeCycle label
2020-05-15 11:17:37 -07:00
Panagiotis Atmatzidis 31acabf8cd
Add EC2 instance lifecycle label to nodes
When using a "mixed instance policy"[1] instance group spot and onDemand nodes are part of the same
ASG. The ASG handles the percentage of spot vs onDemand instances. There are no annotations, EC2 tags or labels to identify which
instances are onDemand vs spot. There is a field called `InstanceLifecycle` accessible through `EC2.DescribeInstances`.

The field `InstanceLifecycle` is available only in `spot` and
`scheduled` AWS EC2 instance types.

This PR introduces a new label to be attached on AWS EC2 spot nodes.

The label is:

```
node-role.kubernetes.io/spot-worker: "true"
```

or

```
node-role.kubernetes.io/scheduled-worker: "true"
```

[^1]: https://github.com/kubernetes/kops/blob/master/docs/instance_groups.md#mixedinstancepolicy-aws-only
2020-05-15 09:33:37 +03:00
John Gardiner Myers 154833e652 Fail cluster validation if too few nodes for ig's target size 2020-05-12 22:28:26 -07:00
Kubernetes Prow Robot 6e0aea35ce
Merge pull request #9108 from olemarkus/zsh-completion
Fix zsh completion
2020-05-12 06:14:21 -07:00
Jesse Haka b242c44dd2 use v3 api in kubernetes also 2020-05-11 08:17:47 +03:00
Ole Markus With 520ba275f3 Fix zsh completion 2020-05-10 15:40:54 +02:00
Kubernetes Prow Robot 8768178082
Merge pull request #9084 from rifelpet/gce-tf-metadata
Dont use terraform's file() for singleline strings in GCE metadata
2020-05-08 16:21:51 -07:00
Justin SB 75fd939a62
kube-apiserver: healthcheck via sidecar container
kube-apiserver doesn't expose the healthcheck via a dedicated
endpoint, instead relying on anonyomous-access being enabled.  That
has previously forced us to enable the unauthenticated endpoint on
127.0.0.1:8080.

Instead we now run a small sidecar container, which
proxies /healthz and /readyz requests (only) adding appropriate
authentication using a client certificate.

This will also enable better load balancer checks in future, as these
have previously been hampered by the custom CA certificate.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-05-07 08:06:52 -04:00
Peter Rifel ef6abbcd5c
Don't use file references for single line strings in gce's metadata fields 2020-05-06 23:06:24 -05:00
Kubernetes Prow Robot 486c20f724
Merge pull request #9053 from johngmyers/channels-dependency
Allow cluster maintenance when channel is unavailable
2020-05-06 07:39:09 -07:00
John Gardiner Myers 843e5b9b16 Move GCEServiceAccount into CloudConfig 2020-05-03 20:35:32 -07:00
John Gardiner Myers 126c4c8d37 Allow cluster maintenance when channel is unavailable 2020-05-03 13:48:15 -07:00
Ole Markus With 4978932213 Make it possible to switch zone for an IG
* Ensure every master runs etcd
* Make it possible to remove masters
* "Cross" Validate on IG creation
2020-04-28 13:28:15 +02:00
Martin Tomes 462ca78f2a Import package aliases modified
Modified api -> kopsapi aliases of imports of k8s.io/kops/pkg/apis/kops
2020-04-17 16:55:08 +02:00
Justin Santa Barbara ffb6cd61aa Rolling-update validation harmonization
This is a follow-on to #8868; I believe the intent of that was to
expose the option to do more (or fewer) retries.

We previously had a single retry to prevent flapping; this basically
unifies the previous behaviour with the idea of making it
configurable.

* validate-count=0 effectively turns off validation.

* validate-count=1 will do a single validation, without flapping
  detection.

* validate-count>=2 will require N succesful validations in a row,
waiting ValidateSuccessDuration in between.

A nice side-effect of this is that the tests now explicitly specify
ValidateCount=1 instead of setting ValidateSuccessDuration=0, which
had the side effect of doing the equivalent to ValidateCount=1.
2020-04-17 01:40:02 -04:00
Ole Markus With d174faf116 Add some integration tests for cilium 2020-04-16 16:22:58 +02:00
Justin Santa Barbara 31bb16d4d1 Add context.Context to most signatures
The client-go signature for most methods adds a context.Context
object, and also makes Options mandatory.  Feed through a
context.Context through many of our methods (but use context.TODO to
stop it getting totally out of hand!)
2020-04-11 14:44:17 -04:00
Kubernetes Prow Robot 47b9b23a30
Merge pull request #8873 from justinsb/update_gomod_for_k8s_1_17
Update go.mod for k8s 1.17
2020-04-08 07:01:43 -07:00
Justin Santa Barbara dfb75b8f89 Skip GCE cloudprovider flag cloud-provider-gce-l7lb-src-cidrs
It isn't meaningful as a kops flag.
2020-04-08 08:52:34 -04:00
Jesse Haka 11eaacd53e validationtimes -> validationcount 2020-04-08 13:55:29 +03:00
Jesse Haka e1e79790ef validate cluster n times in rolling update 2020-04-08 13:55:24 +03:00
Peter Rifel fa2d64c3a3 Update expected outputs of terraform tests 2020-04-05 21:24:49 -05:00
eric-hole c59314a799 Adds some initial tests. Fixes some logic
Need to fix service account implementation first

Fixing tests and iterating on the serviceaccount logic

Run the gce_byo_sa test
2020-04-04 21:20:31 -07:00
eric-hole b3d65ffce0 Adds a gce-service-account flag so you BYO service-account
Generated code and some cleanup

Not sure where that code went

Tests for service account

fixes case on gceserviceaccount
2020-04-04 21:15:56 -07:00
Peter Rifel afd9aa1a4d Enable stamping on bazel image builds
Currently the images have a timestamp of epoch 0:

```
$ docker inspect kope/kops-controller:1.18.0-alpha.2 -f '{{ .Created }}'
1970-01-01T00:00:00Z
```

The `container_image` bazel rule [0] mentions that `creation_time` has a default value of 0 unless `stamp = True`, so this should be enabled on all container_image rules that are pushed to a docker registry.

[0] https://github.com/bazelbuild/rules_docker#container_image-1
2020-04-02 20:27:14 -05:00
Peter Rifel a0e1672cdc add terraform testing 2020-03-31 14:50:45 -05:00
Peter Rifel 54c3b2f69c Only check for bastion user data files in integration tests if they should exist 2020-03-31 09:40:55 -05:00
Peter Rifel db50663452 refactor integration tests 2020-03-31 07:34:16 -05:00
John Gardiner Myers b645dac752 Remove support for v1alpha1 and before 2020-03-24 19:49:15 -07:00
John Gardiner Myers d9e999d377 Convert TestMinimal_json to v1alpha2 API 2020-03-24 19:49:07 -07:00
Kubernetes Prow Robot 51e8563bd5
Merge pull request #8515 from hakman/validate-wait-consecutive
Wait for validation to succeed N consecutive times
2020-03-20 05:02:35 -07:00
eric-hole 31285f921b Adds a minimal GCE integration test 2020-03-17 01:19:49 -07:00
eric-hole c4daebfa8e Add lifecycleOverrides to runTestGCE 2020-03-17 01:01:26 -07:00
Kubernetes Prow Robot 4996383116
Merge pull request #8758 from hakman/launch-tepmplates-tests
Add LaunchTemplate integration tests
2020-03-16 09:34:43 -07:00
Ciprian Hacman 7398f9bd47 Add LaunchTemplate integration tests 2020-03-16 16:01:57 +02:00
John Gardiner Myers 2e920d75c1 Fix command descriptions to match new cluster validation behavior 2020-03-15 17:25:13 -07:00
eric-hole b52e322159 Adds metadata concealment addon for GCE node 2020-03-14 12:18:05 -07:00
John Gardiner Myers 33e23166e4 Support the kops.k8s.io/needs-update annotation on nodes 2020-03-09 22:43:09 -07:00
John Gardiner Myers b098e4c4c2 Fix punctuation 2020-03-02 19:11:12 -08:00
Ciprian Hacman e6076ee913 Fail validation if any consecutive validation fails 2020-03-02 18:33:49 +02:00
Kubernetes Prow Robot 92a8c1b0ed
Merge pull request #8573 from justinsb/fix_2881_option_2
Don't try to configure a bastion DNS name in gossip mode
2020-02-23 20:40:47 -08:00
Justin Santa Barbara 1e69835693
Don't try to configure a bastion DNS name in gossip mode
It can't be done anyway; instead we make it work (as far as we can),
and we document the workaround (which is to access it via the ELB DNS
name).

In future we could make it easier to discover this DNS name!

Issue #2881
2020-02-22 15:29:02 -05:00
Ciprian Hacman ad247a9c75 Wait for validation to succeed N consecutive times 2020-02-21 16:18:04 +02:00
Matt Ouille f025ff0e70
Add External Policies (AWS managed policy attachments) 2020-02-16 21:54:12 -08:00
Justin SB 46c8cc6d86 makefile: use more hash helpers when building images
It's cleaner & more consistent.
2020-02-16 13:10:31 -05:00
John Gardiner Myers 8844b97fe3 Fix field names in api validation 2020-02-15 14:52:27 -08:00
John Gardiner Myers 323130ebbf Merge branch 'master' into validate-multiple 2020-02-10 09:05:47 -08:00
Justin SB 0cb35638f2
Stop logging to /var/log/kops-controller.log
Writing to a hostPath from a non-root container requires file
ownership changes, which is difficult to roll out today.  See
discussion in #8454

We were primarily using the logfile for e2e diagnostics, so we're
going to look into collecting the information via other means instead.

We also haven't yet shipped this logfile in a released version (though
we have shipped it in beta releases)
2020-02-04 06:41:25 -05:00
Kubernetes Prow Robot b9623543ba
Merge pull request #7319 from lcrisci/fix-template-clustername-behavior
Fix template clusterName behavior
2020-01-28 08:23:40 -08:00
John Gardiner Myers 8f6529879b Return more errors at once during InstanceGroup validation 2020-01-28 08:22:44 -08:00
Kubernetes Prow Robot 34caaf2d82
Merge pull request #8145 from mccare/gce-terraform-json-output
Enabling JSON output for Terraform instead of writing the HCL syntax …
2020-01-22 22:16:48 -08:00
Peter Rifel 3f8c85c7e4 Add a warning when using file:// state store 2020-01-17 16:45:08 -06:00
Christian van der Leeden 549f54de48 Enabling JSON output for Terraform instead of writing the HCL syntax tf file. JSON syntax is officially supported in 0.12 and a terraform version requirement will be set. For previous installations you need to delete the .tf file by hand. JSON generation will fail if kubernetes.tf is present.
Added Integration Test using minimal test setup

Added documentation. For terraform 0.12 support the resource names need to be changed still
2020-01-17 22:03:19 +01:00
Justin Santa Barbara a8831b5df0
Move kubectl dependency to k8s.io/kubectl
Helps pare down our dependency on kubernetes/kubernetes
2020-01-17 06:24:24 -05:00
Austin Moore 4a88f7b5a5
Add ability to specify no ssh key by setting sshKeyName to empty
Add tests for no ssh key functionality

Add docs for setting no ssh key

Disable sshKey rendering for cloudformation if nosshkey is set

Fix broken test

make goimports

Fix

Formatting fix

Update kubernetes version for tests

Update expected test output

Fix imports in mesh.pb.go

Run hack/update-expected.sh

Change digital ocean logic to handle *string for SSHKeyName

Fix expected output

Missed a few
2020-01-15 15:24:32 -05:00
Nicolas Vanheuverzwijn 8d3df18a51 test: fix integration test to always include bastion userdata 2020-01-13 15:53:13 -05:00
Justin SB cf5c53c87d
Add tests for manifest normalization
(The tests are split out for easier cherry-picking, should we choose to)
2020-01-11 22:41:18 -05:00
Kubernetes Prow Robot 6cf867198f
Merge pull request #7914 from joshbranham/remove-disabling-darwin-cgos
Remove forcing disabled cgos Darwin
2020-01-06 00:23:41 -08:00
Kubernetes Prow Robot 121d9f461f
Merge pull request #7909 from johngmyers/remove-drain-feature-flag
Remove DrainAndValidateRollingUpdate feature flag
2020-01-05 11:15:40 -08:00
Peter Rifel 21c5a82ed3 Update mock kops version 2020-01-03 08:17:02 -06:00
tanjunchen 6d584b63d6 cmd/kops/ staticcheck and remove one mom 2019-12-31 14:23:30 +08:00
Ciprian Hacman 4c4400c5f3 Add code simplifications for staticheck 2019-12-30 17:40:24 +02:00
vvbogdanov87@gmail.com 607666228b Fix typo 2019-12-28 15:50:12 +08:00
Kubernetes Prow Robot c1f5c7acd6
Merge pull request #8202 from johngmyers/kops-staticcheck
Fix cmd/kops staticcheck failures
2019-12-27 09:30:31 -08:00
Kubernetes Prow Robot 6978d68e87
Merge pull request #8179 from vvbogdanov87/add-all-export-config
Add all flag to export cluster command
2019-12-27 09:30:15 -08:00
Kubernetes Prow Robot 8664fa69c4
Merge pull request #8172 from hakman/container-runtime-cli-flag
containerd: Add --container-runtime cli flag
2019-12-27 09:29:59 -08:00
Kubernetes Prow Robot dd608e879b
Merge pull request #7770 from mitch000001/external-cloud-controller-feature-flag
Guard External cloud controller manager with its feature flag
2019-12-26 14:03:38 -08:00
John Gardiner Myers d127b9b1a1 Fix cmd/kops staticcheck failures 2019-12-25 14:59:27 -08:00
Peter Rifel 57e85f7c67 Update links printed by Kops to use new docs site 2019-12-23 18:47:58 -06:00
vvbogdanov87@gmail.com 1f439e4eb3 Fail if both all flag and args are specified 2019-12-23 08:07:33 +08:00
Ciprian Hacman 70f5b276f5 Fix --networking to use the value from InitDefaults() 2019-12-22 22:16:08 +02:00
Ciprian Hacman 8b15e5b03a Add --container-runtime cli flag 2019-12-22 22:16:04 +02:00
vvbogdanov87 526cdce3c7 Add all flag to export cluster command 2019-12-22 19:46:04 +08:00
Kubernetes Prow Robot ebd7a29612
Merge pull request #8169 from johngmyers/dns-controller-nonroot
Run dns-controller and kops-controller as non-root user
2019-12-22 02:09:32 -08:00
John Gardiner Myers 14bc441d8d Run dns-controller and kops-controller as non-root user 2019-12-21 21:28:44 -08:00
Kubernetes Prow Robot 015efe0b26
Merge pull request #8132 from zehuaiWANG/kops-change-main
kops-change-main
2019-12-19 22:17:45 -08:00
Justin Santa Barbara 2c770aa7a5
Merge branch 'master' into split-containerd 2019-12-19 07:03:33 -05:00
Kubernetes Prow Robot db11481e37
Merge pull request #8110 from vvbogdanov87/validate-cluster-kubeconfig
Add kubeconfig flag to validate cluster command
2019-12-17 06:41:59 -08:00
Kubernetes Prow Robot fc4b21d30a
Merge pull request #8122 from geojaz/fix/create_cluster_cmd_fix
Cleans up the create cluster CLI prompts
2019-12-16 21:45:58 -08:00
zehuaiWANG 3273e55c0d kops-change-main 2019-12-17 13:30:43 +08:00
zehuaiWANG ed6b976316 a little change 2019-12-16 19:50:02 +08:00
eric-hole d3e7448236 Cleans up the create cluster CLI docs
They were missing `\`'s and could use a refresh.
2019-12-15 23:26:20 -08:00
Ciprian Hacman 1a4d8bf49c Add support for containerd container runtime - tests 2019-12-15 21:37:57 +02:00
vvbogdanov87 c696bfc08f Add kubeconfig flag to validate cluster command
Signed-off-by: vvbogdanov87 <vvbogdanov87@gmail.com>
2019-12-15 10:20:48 +08:00
Jesse Haka 44183aef7f validate cluster twice 2019-12-12 08:48:15 +02:00
John Gardiner Myers 2e36124f77 Expose ValidateTickDuration for use by unit tests 2019-12-09 18:43:20 -08:00
Ciprian Hacman dfee0547c5 Make distro detection less strict 2019-12-09 11:10:54 +02:00
Ciprian Hacman f21df7cd6f Fix mounting Calico "flexvol-driver-host" in CoreOS 2019-12-08 16:43:29 +02:00
Kubernetes Prow Robot 7ec1a8f18c
Merge pull request #8053 from rifelpet/integration-test-nat-cf
Update integration test to cover CloudFormation output of NAT gateways
2019-12-06 19:53:08 -08:00
Peter Rifel bb3140deba Update integration test to cover CloudFormation output of NAT gateways 2019-12-06 14:04:35 -06:00
Kashif Saadat fcf6f0098c Canal Typha spec and apimachinery 2019-12-06 15:36:48 +00:00
John Gardiner Myers 4eccd3d53f Remove DrainAndValidateRollingUpdate feature flag 2019-12-05 22:50:04 -08:00
Kubernetes Prow Robot e11f394f05
Merge pull request #8002 from srikiz/DO-7956-FixEtcdNameLogic
[Issue-7956] - [Digital Ocean] Minor fix to have proper indexing for digital ocean regions
2019-12-05 07:42:32 -08:00
Kubernetes Prow Robot 094fe2a645
Merge pull request #7925 from johngmyers/optimize-validation
Pass the cloud object to validator from caller
2019-12-03 15:40:58 -08:00
Srikanth 9542b20bea Fix formatting 2019-11-26 00:04:16 +05:30
Kubernetes Prow Robot 2c446c6c34
Merge pull request #7997 from joshbranham/patch-1
cleanup whitespace in root.go
2019-11-25 08:25:33 -08:00
Srikanth 143bebc2eb Minor fix to have proper indexing for digital ocean regions that end with numbers other than one like sfo2 2019-11-25 08:23:14 +05:30
Srikanth 7467d1a6a4 Remove ununsed code 2019-11-24 12:56:46 +05:30
Srikanth 7b8eb2bfee Initial work for kops-controller to support digital ocean 2019-11-24 12:56:46 +05:30
Srikanth 90f3ebee57 Initial work 2019-11-24 12:56:23 +05:30
Josh Branham 017e1df085
clear whitespace 2019-11-23 18:37:27 -05:00
Peter Rifel 3dc06afa12 Fix goimports errors
It turns out we werent running verify-goimports in our CI jobs.

While we work to get that enabled, we can at least unblock the releases by doing a one-time fix of the failing goimports
2019-11-19 05:05:02 -08:00
John Gardiner Myers bd4e1277ae Pass the cloud object to validator from caller 2019-11-13 22:19:55 -08:00
Josh Branham 2f1ad0c638 Remove forcing disabled cgos Darwin 2019-11-11 20:28:35 -05:00
Justin Santa Barbara 5a0b199119
Merge branch 'master' into fix-roll-validation 2019-11-07 20:54:10 -05:00
Kubernetes Prow Robot e29a04e5af
Merge pull request #7854 from FayerZhang/master
fix golint failures
2019-11-07 11:37:43 -08:00
John Gardiner Myers 63e0c5e726 Add tests for cluster validation during rolling update 2019-11-04 16:26:39 -08:00
feifei.zhang@huawei.com 4b49412105 fix golint failures 2019-10-31 20:22:37 +08:00
Michael Wagner ad85ca0681 docs(addons): fix broken links 2019-10-29 15:51:49 +01:00
Jesse Haka 5e3b94ae17 use existing network and subnet 2019-10-27 08:21:25 +02:00
Justin SB c210eb8d15
Move kops-controller to daemonset
We also scale-down the old Deployment to have 0 replicas, to be sure
to stop it.

We can remove it later when we have proper pruning here.
2019-10-14 10:44:49 -04:00
Justin SB d3bad10aa9
Move kops-controller to use a yaml configuration file
This is more in keeping with componentconfig, and lets us add more
options easily in future.
2019-10-13 07:27:52 -07:00
Kubernetes Prow Robot ff1d94c7cb
Merge pull request #7692 from zetaab/kops_ctrl_openstack
Kops controller support for OpenStack
2019-10-11 09:13:41 -07:00
Thomas Jackson 85db3dce27 make apimachinery 2019-10-10 13:13:38 -07:00
Michael Wagner 92ffa79f06 chore(external-ccm): warn user about missing feature flag 2019-10-10 21:38:50 +02:00
Justin SB e5d710616a
Add test for float args
We likely need to change from floats to resource.Quantity, so we need
to estabilsh more test coverage before we can safely make the change.
2019-09-29 13:14:21 -04:00
Justin SB 49258971fc
Publish kops-controller container dump to S3/GCS
We then `docker load` it when using a KOPS_BASE_URL.

This should simplify the development process (particularly once we
also do this for dns-controller; at that point we won't need a
registry at all).

This should also fix the problems in CI, where the kops-controller
image isn't available.  We've been getting away with testing with the
previous version for dns-controller, which changes pretty slowly.  But
that's not a good idea for kops-controller, which is likely to be more
critical and evolve more rapidly.
2019-09-28 22:43:46 -04:00
Jesse Haka ed8dbc41d0 kops controller support for openstack 2019-09-28 10:06:39 +03:00
Justin SB cdaa7a3a48
Fix boilerplate: headers & packages 2019-09-25 12:48:14 -04:00
Justin SB 3ccc84dcf8
kops-controller container image
Based on distroless for security / stability
2019-09-25 12:04:36 -04:00
Justin SB 728e582360
Fill out kops controller functionality
k8s 1.16 requires that we move label setting away from the kubelet, to
a central controller.  kops-controller is that controller.
2019-09-25 12:04:34 -04:00
Justin SB 0fa65236aa
Scaffolded kops-controller with kubebuilder 2 2019-09-25 10:45:59 -04:00
Kubernetes Prow Robot 927094fcda
Merge pull request #7371 from justinsb/kops_validate_now_supports_wait
Add --wait argument to kops validate
2019-09-19 11:57:00 -07:00
Pascal Bourdier 0102567457 add cilium in error message
add cilium in error message like other networks
2019-09-16 14:27:17 +02:00
mikesplain 9e55b8230a Update copyright notices
Also cleans some white spaces
2019-09-09 14:47:51 -04:00
Justin SB 96aa37d03d
Remove unused ClientGetter from Drain code
This is no longer needed now we are using the k8s drain code.
2019-09-03 07:04:37 -07:00
Justin SB 97c83b677b
Replace resource.FilenameOptions with []string
It was hiding what was actually going on here, which just a slice.
2019-08-30 21:34:22 -07:00
Jesse Haka 59b0dd5aa5 move OpenStack from alpha to beta 2019-08-29 22:55:36 +03:00
Justin SB 17186ff7ba
Generated vendor & bazel from `make gomod`
Automatically generated vendor & BUILD.bazel files
2019-08-25 16:00:41 -04:00
Justin SB b1f8f84306
Code changes for 1.15 2019-08-25 16:00:39 -04:00
Justin SB b7dd6bec66
Remove kops-server
We will replace with CRDs
2019-08-25 16:00:39 -04:00
Justin SB e28b4192ab
cloudformation tests: use standard file comparison
This allows us to auto-fix the expected output also.
2019-08-22 09:14:49 -04:00
xichengliudui 931ebe2bc8 fix Typo 'the the' -> 'the' 2019-08-20 08:47:17 -04:00
Justin SB 6a6bd7d8a0
Add --wait argument to kops validate
With this argument, kops validate will poll until the timeout expires,
waiting for readiness.  On readiness or on timer expiration, it exits
as if wait was not present.
2019-08-16 09:50:29 -04:00
Kashif Saadat 4514215656 Set and mount the correct volume plugin dir based on OS 2019-08-01 17:54:08 +01:00
Austin Moore 29b46624e2
Fix test after rebase 2019-07-26 12:28:42 -04:00
Austin Moore 66a8d1de90
Add integration test for cross-zone-load-balancing 2019-07-26 12:21:43 -04:00
Austin Moore 938dc11a16
Expose --lifecycle-overrides flag as an env var called KOPS_LIFECYCLE_OVERRIDES 2019-07-26 12:21:42 -04:00
Laurent Crisci 970c978790
Fix template clusterName behavior
This commit will allow you to define clusterName from the template's values file.
Before that our clusterName value would be overriden by the cli flag ( whether defined or not ).

Now we have an approach where if the value is defined, it will have priority over the cli flag.
This commit will also align with the official documentation under https://github.com/kubernetes/kops/blob/master/docs/cluster_template.md
2019-07-24 18:49:25 +01:00
Kubernetes Prow Robot 0e27206973
Merge pull request #7290 from justinsb/rationalize_golden_output_comparison
Rationalize golden-output comparison
2019-07-23 00:20:55 -07:00
Kubernetes Prow Robot cdd3496c8a
Merge pull request #6229 from justinsb/gce_ipalias
GCE: support ipalias networking mode, named "gce"
2019-07-22 06:26:51 -07:00
Justin SB 512378b335
Rationalize golden-output comparison
Create a single helper function: AssertMatchesFile

Also a few output files that weren't consistent.
2019-07-21 23:08:48 -04:00
Justin SB 28648207b3
Replace use of cmdutil IsFilenameSliceEmpty
The function was trivial, and it is changed in a later k8s version.
2019-07-19 09:35:52 -04:00
Justin SB 62f7c26f98
Support "gce" networking mode, which uses ip aliases 2019-07-19 07:54:13 -04:00
Jesse Haka ddaa0dd502 Possibility to use openstack without lbaas 2019-06-24 08:56:34 +03:00
Peter Rifel adef332fe3 Add integration test for mixed instances / launch templates 2019-06-07 14:29:34 -07:00
Kubernetes Prow Robot 81c42c549a
Merge pull request #6747 from justinsb/faster_roll
Speed up rolling-update - longer timeout on validation, less scheduled holds
2019-05-20 06:09:15 -07:00
Justin SB 71ff24be2d
Support using kops CLI with CRDs
Not terribly useful yet, as we still need an S3 state store (or
comparable), but getting closer!
2019-05-16 15:48:03 -04:00
Justin SB 9df2e4bbfb
Speed up rolling-update - longer timeout on validation, less scheduled holds
We reduce the amount of time we wait on a purely scheduled basis
during a rolling-update, and instead increase the timeout on the
validation.

This will be a behavioural change - particularly for `--cloudonly`
mode, but that mode seems more useful when things are going wrong
anyway, when people will likely set _even lower_ timeouts.
2019-05-16 03:37:35 -07:00
Justin SB ba9a4afc43
apigroup -> kops.k8s.io: Tests & supporting changes
Autogenerated code, docs & test changes

Also a new test for the older "kops" apiGroup, to make sure that
continues to work.
2019-05-06 22:26:29 -04:00
Justin SB 044395c588
Call klog.InitFlags to enable logging 2019-05-06 13:00:31 -04:00
Justin SB 76d03b3f71
Generated files: glog -> klog 2019-05-06 12:56:03 -04:00
Justin SB 3e33ac7682
Change code from glog to klog
We don't call klog.InitFlags yet, because that will cause a flag
redefinition error until we get everyone to stop using glog.  That
will happen when we update to k8s 1.13.
2019-05-06 12:54:51 -04:00
Justin SB 78ebe93f9f
Update kubernetes dependencies to 1.13.5
Notable changes:

* openapi-gen moved to k8s.io/kube-openapi/cmd/openapi-gen
* templates moved to k8s.io/kubernetes/pkg/kubectl/util/templates
2019-05-06 09:58:37 -04:00
Rodrigo Menezes 4b1e92617a Add terraform support for additional CIDR blocks now that it has support. 2019-03-28 00:47:08 -07:00
Kubernetes Prow Robot 09e5cad1cb
Merge pull request #5955 from adamyy/export_kubecfg_add_kubeconfig_option
Add --kubeconfig flag to `kops export kubecfg`
2019-03-15 10:38:56 -07:00
Gennady Trafimenkov acf9c9f016 Update bazel configuration 2019-03-03 16:11:33 +03:00
Gennady Trafimenkov 15bd566746 Correcly handle CRLF in the manifest
kops replace/create/delete now correctly handle crlf in the manifest.

This fixes issue #6532
2019-03-03 14:33:49 +03:00
Jesse Haka ae3ad36a28 add router subnet specify option 2019-02-27 14:29:30 +02:00