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

chore: update changelog for release 12.0.0 #871

Merged
merged 4 commits into from
May 9, 2020
Merged
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,27 @@ project adheres to [Semantic Versioning](http://semver.org/).



<a name="v12.0.0"></a>
## [v12.0.0] - 2020-05-08
BUG FIXES:
- Fix Launch Templates error with aws 2.61.0 ([#875](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/875))
- Use splat syntax for cluster name to avoid `(known after apply)` in managed node groups ([#868](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/868))

DOCS:
- Add notes for Kubernetes 1.16 ([#873](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/873))
- Remove useless template provider in examples ([#863](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/863))

FEATURES:
- Create kubeconfig with non-executable permissions ([#864](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/864))
- Change EKS default version to 1.16 ([#857](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/857))
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a breaking change for users who do not set cluster_version. Especially with the deprecated APIs removed in 1.16 and the fun with kubelet attributes that appeared on the PR.

It would be good to skip this feature and still release the rest as 11.2.0. I'm not sure how we'd do that with the fancy new automated changelog?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point.

With the actual release process, I don't think we can do that easily once the PR is merged into master. All release come from the master branch.

If we want to do that, I think we can create a separate branch on which we'll delete the #857 commit and create a new tag from that branch.

But with that said, maybe we can just bump to 12.0.0 and start a discussion to enhance our release process. Use milestone to merge only those needed ? Use different branch for release ? etc. What do you think ?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can also add a section in readme and in breaking change note something like:

The default version is now 1.16. Kubernetes 1.16 includes a number of deprecated API removals, and you need to ensure your applications and add ons are updated, or workloads could fail after the upgrade is complete.

Please set explicitly your cluster version to an older EKS version untill you're ready to upgrade your workload.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be good to modify the release process to have more point releases for non-breaking changes instead of ramping up the major version every time there is a breaking change added. For example here we're under no time pressure to release the "1.16 as default" change. Old releases still support 1.16 fine.

Breaking changes need to be documented somewhere. Previously that was the changelog and it makes sense to put them there. Can you not add custom sections to the changelog any more?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be good to modify the release process to have more point releases for non-breaking changes instead of ramping up the major version every time there is a breaking change added. For example here we're under no time pressure to release the "1.16 as default" change. Old releases still support 1.16 fine.

Agreed. But my point was should we hold this new release until we find a proper release process or just ship this one and start working on something for the next release ?

Breaking changes need to be documented somewhere. Previously that was the changelog and it makes sense to put them there. Can you not add custom sections to the changelog any more?

Sure I can add note or breaking change note in changelog as suggested #871 (comment).

Those note should be added in the commits message and I didn't do that during the merge (squash commit). So if we agree to bump version to 12.0.0, I'll add new commit to add the breaking change note because I don't want to rewrite commits in master.

Copy link
Member Author

@barryib barryib May 7, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dpiddockcmp here is my proposition for this release #873

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are useful changes related to managed node groups. They need releasing.

I think we're a bit limited here by what git-chglog can do.

We'd have to maintain two branches. For example:
"master" that has all the features ready for the next major release.
"release" or "v11" or whatever that has the non-breaking features and regular minor releases for the active major version.

Process:

  • PRs are merged to master.
  • Non-breaking changes cherry-picked in to the release branch
  • Minor releases made
  • Merge changelog back into master?

Issue is how to generate the changelog for the next major release? From playing around it looks like git-chglog duplicates changelog entries when they have different a SHA. So you're re-releasing all the changes made after the two branches diverge. Unless I've missed something in how to configure it?

Would we need to update the git-chglog template with the previously generated content, manually de-duplicate the major release notes, and bump the TAG_QUERY value in Makefile? Would solve the forgotten breaking changes notes 😆


ENHANCEMENTS:
- Remove dependency on external template provider ([#854](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/854))

BREAKING CHANGES:
- The default `cluster_version` is now 1.16. Kubernetes 1.16 includes a number of deprecated API removals, and you need to ensure your applications and add ons are updated, or workloads could fail after the upgrade is complete. For more information on the API removals, see the [Kubernetes blog post](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/). For action you may need to take before upgrading, see the steps in the [EKS documentation](https://docs.aws.amazon.com/eks/latest/userguide/update-cluster.html). Please set explicitly your `cluster_version` to an older EKS version until your workloads are ready for Kubernetes 1.16.


<a name="v11.1.0"></a>
## [v11.1.0] - 2020-04-23
BUG FIXES:
Expand Down Expand Up @@ -50,6 +71,7 @@ TESTS:
- remove unused kitchen test related stuff ([#787](https://github.com/terraform-aws-modules/terraform-aws-eks/issues/787))


[Unreleased]: https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v11.1.0...HEAD
[Unreleased]: https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v12.0.0...HEAD
[v12.0.0]: https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v11.1.0...v12.0.0
[v11.1.0]: https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v11.0.0...v11.1.0
[v11.0.0]: https://github.com/terraform-aws-modules/terraform-aws-eks/compare/v10.0.0...v11.0.0