Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Workload API #353

Closed
kow3ns opened this issue Jul 19, 2017 · 19 comments
Closed

Workload API #353

kow3ns opened this issue Jul 19, 2017 · 19 comments
Assignees
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/apps Categorizes an issue or PR as relevant to SIG Apps. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status
Milestone

Comments

@kow3ns
Copy link
Member

kow3ns commented Jul 19, 2017

Feature Description

  • One-line feature description (can be used as a release note): The core workload API (DaemonSet, Deployment, ReplicaSet, StatefulSet) have been moved to the apps group at version v1beta2.
  • Primary contact (assignee): @kow3ns
  • Responsible SIGs: apps
  • Design proposal link (community repo): NA
  • Reviewer(s) - (for LGTM) recommend having 2+ reviewers (at least one from code-area OWNERS file) agreed to review. Reviewers from multiple companies preferred: @Kargakis @janetkuo @foxish @enisoc @crimsonfaith91
  • Approver (likely from SIG/area to which feature belongs): @smarterclayton @erictune
  • Feature branch : https://github.com/kubernetes/kubernetes/tree/feature-workload-ga
  • Feature target (which target equals to which milestone):
    • Beta release target (1.8)
    • GA release target (1.9)

Create a new version in the apps group for the core workloads API.
When we advance the core workloads API (DaemonSet, Deployment, ReplicaSet, and StatefulSet) to v1, we want them to advance as a group and be (where possible) consistent. Prior to doing so, we would like to make any API incompatible changes. In particular we will

  • move DaemonSet to apps
  • remove the TemplateGeneration field of DaemonSet
  • change the StatefulSet ObservedGeneration from a pointer to an int for consistency.
  • remove the /rollback subresource of Deployment, or modify it such that the controller is not required to modify its own spec.
  • add a scale subresource for StatefulSet
  • review the API objects for consistency, and (where appropriate) make changes to bring them into alignment (modifying field names a necessary).
  • ensure that the defaults and validation are consistent and appropriate across all controllers.

We may find other incompatible changes that are required prior to promotion, and we would like to make them in this version, prior to releasing it. When the community is satisfied with the API surface, as contained in this version, and it is stable, we would like to promote all of the core workloads API to GA by moving the contained API to v1.

@krmayankk
Copy link

@kow3ns is this the final list of things being targeted for 1.8 or is there a meeting to discuss this ?

@janetkuo
Copy link
Member

@krmayankk please read sig apps 1.8 planning doc. We discussed it in weekly sig-apps meeting https://docs.google.com/document/d/1LZLBGW2wRDwAfdBNHJjFfk9CFoyZPcIYGWU7R1PQ3ng/

@idvoretskyi idvoretskyi added the stage/beta Denotes an issue tracking an enhancement targeted for Beta status label Jul 25, 2017
@idvoretskyi idvoretskyi added this to the 1.8 milestone Jul 25, 2017
@idvoretskyi idvoretskyi added sig/apps Categorizes an issue or PR as relevant to SIG Apps. kind/feature Categorizes issue or PR as related to a new feature. labels Jul 25, 2017
kow3ns pushed a commit to kow3ns/features that referenced this issue Aug 16, 2017
calebamiles added a commit that referenced this issue Aug 18, 2017
k8s-github-robot pushed a commit to kubernetes/kubernetes that referenced this issue Sep 3, 2017
Automatic merge from submit-queue

Workloads deprecation 1.8

**What this PR does / why we need it**: This PR deprecates the Deployment, ReplicaSet, and DaemonSet kinds in the extensions/v1beta1 group version and the StatefulSet, Deployment, and ControllerRevision kinds in the apps/v1beta1 group version. The Deployment, ReplicaSet, DaemonSet, StatefuSet, and ControllerRevision kinds in the apps/v1beta2 group version are now the current version.

xref kubernetes/enhancements#353

```release-note
The Deployment, DaemonSet, and ReplicaSet kinds in the extensions/v1beta1 group version are now deprecated, as are the Deployment, StatefulSet, and ControllerRevision kinds in apps/v1beta1. As they will not be removed until after a GA version becomes available, you may continue to use these kinds in existing code. However, all new code should be developed against the apps/v1beta2 group version.
```
@jdumars
Copy link
Member

jdumars commented Sep 15, 2017

Contacting @kow3ns to try and track down missing docs for 1.8 release.

@kow3ns
Copy link
Member Author

kow3ns commented Sep 15, 2017

@jdumars
Copy link
Member

jdumars commented Sep 18, 2017

Thanks so much @kow3ns

@mattfarina
Copy link
Contributor

Now that workload controllers are in v1beta2, can this be closed?

@luxas luxas changed the title Workload Controllers v1Beta2 Workload API Oct 7, 2017
@luxas luxas added stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status and removed kind/feature Categorizes issue or PR as related to a new feature. stage/beta Denotes an issue tracking an enhancement targeted for Beta status labels Oct 7, 2017
@luxas luxas modified the milestones: 1.8, 1.9 Oct 7, 2017
@luxas
Copy link
Member

luxas commented Oct 7, 2017

GA promotion plan from @kow3ns in #484:

We will promote the core workload controllers (DaemonSet, Deployment, ReplicaSet, and StatefulSet) to GA in the apps/v1 group version.
The previous implementations of these kinds in the apps/v1beta2 group will be deprecated. No kinds, in any group versions, are removed by this feature.
We intended to promote the apps/v1beta2 group in its entirety. We may make non-breaking changes with respect to selector immutability in the process.
We may deprecate or expand the use of Conditions across the API surface.

Also updated the first comment to include the plan to move to GA in v1.9

@idvoretskyi
Copy link
Member

@luxas thanks

@smarterclayton
Copy link
Contributor

As raised in the linked issue we need to resolve whether daemonset provides at-most-1 pod semantics on nodes before we can promote it to GA. So putting a notice on the feature that we need to reach a decision on the implications before this can proceed.

sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
Automatic merge from submit-queue (batch tested with PRs 55331, 55272, 55228, 49763, 55242). 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>.

Add DaemonSet conditions

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

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
xref kubernetes/enhancements#353, #7856

**Special notes for your reviewer**:
A `conditions` field is added to DaemonSetStatus for consistency. No valid DaemonSet condition type is supported yet.
@kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers.
```

Kubernetes-commit: f644681a803c335ea18838441800a7b2fc791e6c
sttts pushed a commit to sttts/client-go that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/apiserver that referenced this issue Nov 28, 2017
…ndents

Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/enhancements#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
Automatic merge from submit-queue (batch tested with PRs 55331, 55272, 55228, 49763, 55242). 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>.

Add DaemonSet conditions

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

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
xref kubernetes/enhancements#353, #7856

**Special notes for your reviewer**:
A `conditions` field is added to DaemonSetStatus for consistency. No valid DaemonSet condition type is supported yet.
@kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers.
```

Kubernetes-commit: f644681a803c335ea18838441800a7b2fc791e6c
sttts pushed a commit to sttts/client-go that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/apiserver that referenced this issue Nov 28, 2017
…ndents

Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/enhancements#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/api that referenced this issue Nov 28, 2017
Automatic merge from submit-queue (batch tested with PRs 55331, 55272, 55228, 49763, 55242). 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>.

Add DaemonSet conditions

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

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
xref kubernetes/enhancements#353, #7856

**Special notes for your reviewer**:
A `conditions` field is added to DaemonSetStatus for consistency. No valid DaemonSet condition type is supported yet.
@kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers.
```

Kubernetes-commit: f644681a803c335ea18838441800a7b2fc791e6c
sttts pushed a commit to sttts/client-go that referenced this issue Nov 28, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
sttts pushed a commit to sttts/apiserver that referenced this issue Nov 28, 2017
…ndents

Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/enhancements#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
@zacharysarah
Copy link
Contributor

@kow3ns Bump for docs ☝️

/cc @idvoretskyi

k8s-publishing-bot pushed a commit to k8s-publishing-bot/api that referenced this issue Nov 29, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
k8s-publishing-bot pushed a commit to k8s-publishing-bot/api that referenced this issue Nov 29, 2017
Automatic merge from submit-queue (batch tested with PRs 55331, 55272, 55228, 49763, 55242). 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>.

Add DaemonSet conditions

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

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
xref kubernetes/enhancements#353, #7856

**Special notes for your reviewer**:
A `conditions` field is added to DaemonSetStatus for consistency. No valid DaemonSet condition type is supported yet.
@kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers.
```

Kubernetes-commit: f644681a803c335ea18838441800a7b2fc791e6c
k8s-publishing-bot pushed a commit to k8s-publishing-bot/client-go that referenced this issue Nov 29, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
k8s-publishing-bot pushed a commit to k8s-publishing-bot/apiserver that referenced this issue Nov 29, 2017
…ndents

Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/enhancements#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
@idvoretskyi
Copy link
Member

@kow3ns @kubernetes/sig-apps-feature-requests any updates on the docs status?

A friendly reminder on docs deadline tomorrow.

/cc @zacharysarah

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Nov 30, 2017
k8s-publishing-bot pushed a commit to k8s-publishing-bot/api that referenced this issue Dec 7, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
k8s-publishing-bot pushed a commit to k8s-publishing-bot/api that referenced this issue Dec 7, 2017
Automatic merge from submit-queue (batch tested with PRs 55331, 55272, 55228, 49763, 55242). 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>.

Add DaemonSet conditions

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

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
xref kubernetes/enhancements#353, #7856

**Special notes for your reviewer**:
A `conditions` field is added to DaemonSetStatus for consistency. No valid DaemonSet condition type is supported yet.
@kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers.
```

Kubernetes-commit: f644681a803c335ea18838441800a7b2fc791e6c
k8s-publishing-bot pushed a commit to k8s-publishing-bot/client-go that referenced this issue Dec 7, 2017
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

kubernetes/enhancements#353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```

Kubernetes-commit: 2ecb36802666b9088495d34da7ab486cd3347e65
k8s-publishing-bot pushed a commit to k8s-publishing-bot/apiserver that referenced this issue Dec 7, 2017
…ndents

Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/enhancements#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
@luxas
Copy link
Member

luxas commented Dec 22, 2017

Great, thanks everyone in SIG Apps for the great work in bringing this API to GA 🙌!

@luxas luxas closed this as completed Dec 22, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. sig/apps Categorizes an issue or PR as relevant to SIG Apps. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status
Projects
None yet
Development

No branches or pull requests

10 participants