Commit Graph

5551 Commits (e415c1ec1d316f8cdb19aa8ee7f196f2d8cb73b6)

Author SHA1 Message Date
fabriziopandini 4505aa2108 autogenerated 2018-10-24 12:57:42 +02:00
Jordan Liggitt 921c60d30f Generated files 2018-10-23 13:50:03 -04:00
k8s-ci-robot a6e273214b
Merge pull request #69617 from rosti/config-defaults-split
kubeadm: Introduce config print init/join-defaults
2018-10-20 08:04:53 -07:00
k8s-ci-robot 0bf8a51f4b
Merge pull request #69666 from fabriziopandini/kubeadm-graduate-preflight
Kubeadm graduate preflight phase
2018-10-20 05:58:53 -07:00
Lubomir I. Ivanov 8c9cb0c71f docs/admin: add OWNERS file with cmd/kubeadm approvers 2018-10-18 18:45:17 +03:00
Rostislav M. Georgiev 91049ef77b kubeadm: Introduce config print init/join-defaults
In order to improve the UX of kubeadm, it was decided to introduce the
following subcommands:

- `kubeadm config print` - this is currently only a placeholder for subcommands
  that deal printing of some kind of configuration.
- `kubeadm config print init-defaults` - prints the default combination of
  InitConfiguration and ClusterConfiguration. Selected component configs can be
  printed too if the `--component-configs` command line switch is used.
- `kubeadm config print join-defaults` - prints the default JoinConfiguration.
  This command also supports the use of `--component-configs`.
- `kubeadm config print-defaults` is deprecated in favor of
  `kubeadm config print init/join-defaults`.

Signed-off-by: Rostislav M. Georgiev <rostislavg@vmware.com>
2018-10-18 14:21:02 +03:00
fabriziopandini 22da6a66a2 autogenerated 2018-10-18 11:52:15 +02:00
Patrick Barker b8e1250487 adds dynamic audit api generated 2018-10-16 13:07:27 +00:00
k8s-ci-robot d20912c83f
Merge pull request #69728 from SataQiu/fix-2018101201
fix some typos
2018-10-13 21:47:08 -07:00
k8s-ci-robot 2a2c71a6f8
Merge pull request #69772 from cblecker/api-block-inheritance
Disable OWNERS inheritance on key api change directories
2018-10-13 13:19:28 -07:00
Christoph Blecker 617603db18
Disable OWNERS inheritance on key api change directories 2018-10-13 09:44:55 -07:00
k8s-ci-robot 74d0ef2291
Merge pull request #69694 from jessfraz/69647
add default for ProcMountType
2018-10-12 16:01:42 -07:00
Jess Frazelle ce6f716ffd
run make update
Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
2018-10-12 12:16:38 -04:00
SataQiu e1d5b97f3f fix some typos 2018-10-12 22:29:18 +08:00
Mayank Kumar bc3e3afc46 api changes for psp runasgroup policy 2018-10-09 17:32:09 -07:00
k8s-ci-robot 8fa5d386a1
Merge pull request #66605 from islinwb/default_RevisionHistoryLimit
Default extensions/v1beta1 Deployment's RevisionHistoryLimit to MaxInt32
2018-10-08 10:41:46 -07:00
Haowei Cai 6ef3647836 generated 2018-10-02 17:57:51 -07:00
Antoine Pelisse e1eadc5031 Move `diff` command to root rather than alpha
New command is now `kubectl diff` rather than `kubectl alpha diff` since
it's moving out of alpha soon, and will be using dry-run apply to
produce the diff rather than the custom merge logic.
2018-09-27 13:11:43 -07:00
k8s-ci-robot dbba1a5384
Merge pull request #68864 from roycaihw/fix-rollback-doc
Fix openapi spec and api reference: posting a rollback returns a metav1.Status
2018-09-26 19:22:53 -07:00
k8s-ci-robot 170dcc2ea0
Merge pull request #68754 from bradhoekstra/optional-service-env-variables
kubelet: Make service environment variables optional
2018-09-24 10:59:32 -07:00
Haowei Cai 9f78c45c01 generated 2018-09-19 17:35:42 -07:00
Lubomir I. Ivanov 48d52a3075 kubeadm: include the 'certs renew' sub-command in the CLI
The command seems to be missing in the CLI.
Add it as sub-command under 'kubeadm alpha phase certs'.
2018-09-19 05:09:00 +03:00
Brad Hoekstra ac8799a80d kubelet: Make service environment variables optional 2018-09-17 16:27:36 -04:00
Xing Yang 897e3c8d11 Add generated files 2018-09-12 17:34:51 -07:00
k8s-ci-robot 99f319567a
Merge pull request #68015 from damemi/hpa-metrics-specificity
Support backwards compatibility for v1beta1 custom metrics client
2018-09-10 16:12:23 -07:00
fabriziopandini 44e49f00bc kubeadm-annotate-cri 2018-09-10 10:23:46 +02:00
Solly Ross 76bd48b140 Fix up potentially empty fields in HPA v2beta2
There were a few cases where fields that should have been marked optional
were not.  This was causing weird validation issues, but is now fixed.
2018-09-06 15:20:09 -04:00
Janet Kuo 1d6dd86407 Autogen API docs 2018-09-04 11:35:30 -07:00
NickrenREN 159a4358e8 auto generated files 2018-09-03 13:34:26 +08:00
Chao Xu 5273182321 generated 2018-08-31 17:56:12 -07:00
Jess Frazelle 1a4cf7a36e
make update
Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
2018-08-30 18:24:23 -04:00
Kubernetes Submit Queue 37b29297aa
Merge pull request #67432 from lichuqiang/topo_provision_beta
Automatic merge from submit-queue (batch tested with PRs 67745, 67432, 67569, 67825, 67943). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Move volume dynamic provisioning scheduling to beta

**What this PR does / why we need it**:

*  Combine feature gate VolumeScheduling and DynamicProvisioningScheduling into one
* Add allowedTopologies description in kubectl

**Special notes for your reviewer**:
Wait until related e2e and downside plugins are ready.

/hold

**Release note**:

```release-note
Move volume dynamic provisioning scheduling to beta (ACTION REQUIRED: The DynamicProvisioningScheduling alpha feature gate has been removed. The VolumeScheduling beta feature gate is still required for this feature)
```
2018-08-29 15:19:34 -07:00
lichuqiang 795b213455 generated files 2018-08-29 10:30:16 +08:00
Xing Yang 88d3d964e2 Re-generate files 2018-08-28 13:56:03 -07:00
Xing Yang 5a6c5b07a2 Address Tim's comments 2018-08-28 13:26:51 -07:00
Xing Yang 2a9cff2b03 Add generated files 2018-08-28 13:26:51 -07:00
Kubernetes Submit Queue 2eb14e3007
Merge pull request #64973 from nokia/k8s-sctp
Automatic merge from submit-queue (batch tested with PRs 67694, 64973, 67902). 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>.

SCTP support implementation for Kubernetes

**What this PR does / why we need it**: This PR adds SCTP support to Kubernetes, including Service, Endpoint, and NetworkPolicy.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #44485

**Special notes for your reviewer**:

**Release note**:

```release-note

SCTP is now supported as additional protocol (alpha) alongside TCP and UDP in Pod, Service, Endpoint, and NetworkPolicy.  

```
2018-08-28 07:21:18 -07:00
Mike Dame 77d7f9cfa2 Generate files and modifications for autoscaling/v2beta2 and custom_metrics/v1beta2 2018-08-27 11:07:53 -04:00
Laszlo Janosi a6da2b1472 K8s SCTP support implementation for the first pull request
The requested Service Protocol is checked against the supported protocols of GCE Internal LB. The supported protocols are TCP and UDP.

SCTP is not supported by OpenStack LBaaS. If SCTP is requested in a Service with type=LoadBalancer, the request is rejected. Comment style is also corrected.

SCTP is not allowed for LoadBalancer Service and for HostPort. Kube-proxy can be configured not to start listening on the host port for SCTP: see the new SCTPUserSpaceNode parameter

changed the vendor github.com/nokia/sctp to github.com/ishidawataru/sctp. I.e. from now on we use the upstream version.

netexec.go compilation fixed. Various test cases fixed

SCTP related conformance tests removed. Netexec's pod definition and Dockerfile are updated to expose the new SCTP port(8082)

SCTP related e2e test cases are removed as the e2e test systems do not support SCTP

sctp related firewall config is removed from cluster/gce/util.sh. Variable name sctp_addr is corrected to sctpAddr in pkg/proxy/ipvs/proxier.go

cluster/gce/util.sh is copied from master
2018-08-27 05:56:27 +00:00
Kubernetes Submit Queue 40063e8810
Merge pull request #67737 from tallclair/runtimeclass-podapi
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>.

Runtimeclass podapi

Adds (but doesn't implement) the RuntimeClass Pod API proposed in https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md

Based on the result (lazy consensus) of the alpha fields discussion on sig-architecture: https://groups.google.com/forum/#!topic/kubernetes-sig-architecture/y9FulL9Uq6A

For https://github.com/kubernetes/features/issues/585

**Special notes for your reviewer**:

**Release note**:
```release-note
RuntimeClass is a new API resource for defining different classes of runtimes that may be used to run containers in the cluster. Pods can select a RunitmeClass to use via the RuntimeClassName field. This feature is in alpha, and the RuntimeClass feature gate must be enabled in order to use it.
```

/sig node
/kind api-change
/priority important-soon
/milestone v1.12
2018-08-23 16:53:29 -07:00
Tim Allclair f5cc053901 regenerate files 2018-08-23 13:32:10 -07:00
Kubernetes Submit Queue 5a16163c87
Merge pull request #66936 from jennybuckley/dry-run-webhooks
Automatic merge from submit-queue (batch tested with PRs 67576, 66936). 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>.

Support dry run in admission webhooks

**What this PR does / why we need it**:
Follow up to https://github.com/kubernetes/kubernetes/pull/66391
- [x] add DryRun to ```admission.k8s.io/v1beta1.AdmissionReview```
- [x] add DryRunnable to ```admissionregistration.k8s.io/v1beta1.(Valid|Mut)atingWebhookConfiguration```
- [x] add dry run support to (Valid|Mut)atingAdmissionWebhook

Includes all the api-changes outlined by https://github.com/kubernetes/community/pull/2387

/sig api-machinery

**Release note**:
```release-note
To address the possibility dry-run requests overwhelming admission webhooks that rely on side effects and a reconciliation mechanism, a new field is being added to admissionregistration.k8s.io/v1beta1.ValidatingWebhookConfiguration and admissionregistration.k8s.io/v1beta1.MutatingWebhookConfiguration so that webhooks can explicitly register as having dry-run support. If a dry-run request is made on a resource that triggers a non dry-run supporting webhook, the request will be completely rejected, with "400: Bad Request". Additionally, a new field is being added to the admission.k8s.io/v1beta1.AdmissionReview API object, exposing to webhooks whether or not the request being reviewed is a dry-run.
```
2018-08-22 19:41:58 -07:00
Kubernetes Submit Queue 74f44482ec
Merge pull request #66973 from fabriziopandini/kubeadm-ha-upgrade
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>.

Kubeadm ha upgrade

**What this PR does / why we need it**:
This PR implements one of the actions defined by https://github.com/kubernetes/kubeadm/issues/751 (checklist form implementing HA in kubeadm). see [KEP 0015](https://github.com/kubernetes/community/blob/master/keps/sig-cluster-lifecycle/0015-kubeadm-join-master.md) for more context

With this PR, kubeadm implements a new command `kubeadm upgrade node experimental-control-plane` that managed upgrade of control plane components on a secondary control plane instance. 

The entire workflow in case of HA clusters will be:

- Upgrade the control plane
   - run `kubeadm upgrade apply` on a first control plane instance
   - run `kubeadm upgrade node experimental-control-plane` on secondary control plane instances
- Upgrade nodes

**Special notes for your reviewer**:
/CC @timothysc @luxas @chuckha  @kubernetes/sig-cluster-lifecycle-pr-reviews 

**Release note**:
```
kubeadm now has the `kubeadm upgrade node experimental-control-plane` command for upgrading secondary control plane instances created with `kubeadm join --experimental-control-plane`. 
```
2018-08-22 18:02:49 -07:00
Tim Allclair 87164e0b32 Generated code 2018-08-22 17:00:53 -07:00
jennybuckley c61eac7daa Update generated 2018-08-22 16:54:41 -07:00
fabriziopandini aa641ad5e3 autogenerated 2018-08-22 23:09:28 +02:00
Kenjiro Nakayama 811bdbdcbb auto generated code 2018-08-22 21:59:44 +09:00
Kubernetes Submit Queue 1737a43324
Merge pull request #66876 from juanvallejo/jvallejo/prototype-plugins
Automatic merge from submit-queue (batch tested with PRs 67062, 67169, 67539, 67504, 66876). 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>.

Update the kubectl plugin mechanism

**Release note**:
```release-note
The plugin mechanism functionality to closely follow the git plugin design
```

Replace the existing plugin mechanism with the design proposed in https://github.com/kubernetes/community/pull/2437.

~~_The full implementation of the plugin mechanism itself is entirely contained within the first commit._~~

## Walkthrough

Under the new design, there is no plugin installation or loading required to use plugins.
A plugin is simply any executable file on a user's PATH whose name begins with `kubectl-`.
- Plugins receive the inherited environment from the `kubectl` binary. All environment variables
accessible by `kubectl` become accessible by the plugin.
- Plugins decide which command path they wish to implement based on their name. For example, a plugin wanting to provide a new command `foo`, would simply be named `kubectl-foo`.

### Creating a plugin

Below is an example plugin, that we will use for this walkthrough. Plugins may be written in any language, and handle arguments and flags in any way, optionally (as a convention) providing a way to retrieve their version via a `version` subcommand.

```bash
#!/bin/bash

# optional argument handling
if [[ "$1" == "version" ]]
then
    echo "1.0.0"
    exit 0
fi

# optional argument handling
if [[ "$1" == "config" ]]
then
    echo $KUBECONFIG
    exit 0
fi

echo "I am a plugin named kubectl-foo"
```

### Using a plugin

To use a plugin, simply make it executable:

```bash
sudo chmod +x ./kubectl-foo
```

and place it anywhere in your PATH:

```bash
sudo mv ./kubectl-foo /usr/local/bin
```

You may now invoke your plugin as a `kubectl` command:

```bash
$ kubectl foo
I am a plugin named kubectl-foo
```

All args and flags are passed as-is to the executable:

```bash
$ kubectl foo version
1.0.0
```

All environment variables are also passed as-is to the executable:

```bash
$ export KUBECONFIG=~/.kube/config
$ kubectl foo config
/home/<user>/.kube/config

$ KUBECONFIG=/etc/kube/config kubectl foo config
/etc/kube/config
```

Additionally, the first argument that is passed to a plugin will always be the full path to the location where it was invoked (`$0` would equal `/usr/local/bin/kubectl-foo` in our example above).

### Plugin discoverability

Seeing as how the `kubectl plugin` command is left as a no-op with this PR (perhaps it could serve as an entrypoint towards additional plugin functionality in the future), a small subcommand has been included that _lists all available plugin executables on a user's PATH_, along with any warnings it finds.

Example usage of this new subcommand is included below:

```bash
$ kubectl plugin list
The following kubectl-compatible plugins are available:

test/fixtures/pkg/kubectl/plugins/kubectl-foo
plugins/kubectl-foo
  - warning: plugins/kubectl-foo is overshadowed by a similarly named plugin: test/fixtures/pkg/kubectl/plugins/kubectl-foo
plugins/kubectl-invalid
  - warning: plugins/kubectl-invalid identified as a kubectl plugin, but it is not executable
plugins/kubectl-bar

error: 2 plugin warnings were found
```

cc @kubernetes/kubectl-maintainers @kubernetes/sig-cli-pr-reviews @soltysh @seans3 @mengqiy
2018-08-17 11:58:22 -07:00
juanvallejo 4bdc636380
add updated plugin mechanism 2018-08-15 15:06:29 -04:00
Weibin Lin 84ff6c36b0 Autogen 2018-08-14 09:20:45 +08:00