Releases: kubernetes/release
v0.3.3
Changes by Kind
Deprecation
- Removed
krel patch-announcein favor of the more generalkrel announcesubcommand (#1315, @saschagrunert) [SIG Release]
API Change
- Added
mail.NewSender(apiKey string)API function for mail client creation (#1319, @saschagrunert) [SIG Release] - Changed
anagoto always expect to be run inside GCB.
This means local runs ofanagoare not possible any more.
The flag--gcbdoes not exist any more and is enforced insideanagoviaexport FLAGS_gcb=1(#1326, @saschagrunert) [SIG Release]
Feature
- Add
github.ListBranches()to the package and clients to list the branches of a GitHub repository . - When creating pull requests, verify that branches do not exist before pushing new revisions of the release notes draft or patches to the website. (#1310, @puerco) [SIG Release]
- Added
krel announcesubcommand which can be used to announce any release to the[email protected]mailing list (#1173, @saschagrunert) [SIG Release] - Added
krel announe--print-only,-pflag to print the email content without sending the mail (#1318, @saschagrunert) [SIG Release] - Adds schedule parser to generate markdown text based on the machine-readable format (#1313, @cpanato) [SIG Release]
- Automate the creation of pull requests to update the release notes draft in
kubernetes/sig-release - Automate the creation of pull requests in
kubernetes-sigs/release-notesto update relnotes.k8s.io (#1304, @puerco) [SIG Release] - Automatically infer the
krel announcedefault sender address and name from sendgrid if the flags (--email,-eand--name,-n) are not set (#1316, @saschagrunert) [SIG Release] - gh2gcs: Add go-based CLI for uploading GH releases to GCS (#1311, @justaugustus) [SIG Network, Node and Release]
- gh2gcs: add download only option (#1337, @cpanato) [SIG Release]
- kubepkg: Bundle CNI plugins (v0.8.6) in kubelet deb/rpm packages (#1330, @justaugustus) [SIG Network and Release]
Documentation
- Change release-notes/README.md to correctly state that the default value of
--dependenciesistrue(#1305, @saschagrunert) [SIG Release] - gh2gcs: add initial documentation (#1338, @cpanato) [SIG Release]
Bug or Regression
- Fixed
release-notestable of contents to also contain dependency report if available (#1341, @saschagrunert) [SIG Release] - Fixed invalid previous tag selection on
krel changelogfor beta releases > 0 (#1334, @saschagrunert) [SIG Release] - Fixed not working
kubepkgflag parsing (#1332, @saschagrunert) [SIG Release] - gh2gcs: clean temporary folder if output-dir is not set (#1324, @cpanato) [SIG Release]
- kubepkg: Allow processing multiple arches, channels, and packages via flag (#1329, @justaugustus) [SIG Release]
- Modified the release notes and changelog templates to fix rendering problems in headings, itemized lists and multiline comments.
Fixed a bug wherekrel release-notesproduced json output when invoked with--format=markdown(#1306, @puerco) [SIG Release]
Other (Cleanup or Flake)
- Improve the algorithm used to determine the startTag and branch when generating the JSON version of the release notes for a specific tag
- Fix a small bug in the git pkg where
git.PreviousTag()would return an incorrect tag when passing a non existing tag (#1307, @puerco) [SIG Release] - krel/announce: remove --sendgrid-api-key flag in favor to env var only (#1335, @cpanato) [SIG Release]
- kubepkg: Use k8s-artifacts-cri-tools GCS bucket as source for CRI tools (#1321, @justaugustus) [SIG Release]
- packages: Forward-port Build Admin scripts to master branch (#1342, @justaugustus) [SIG Release]
- Removed
release-notifybash script in favor ofkrel announce(#1323, @saschagrunert) [SIG Release] - Update github.com/bazelbuild/rules_go dependency to v0.23.1
- Update k8s.io/utils dependency to v0.0.0-20200414100711-2df71ebbae66 (#1301, @cpanato) [SIG Release]
Dependencies
Added
Nothing has changed.
Changed
- github.com/bazelbuild/rules_go: v0.22.1 → v0.23.1
- github.com/mattn/go-runewidth: v0.0.7 → v0.0.9
- github.com/maxbrunsfeld/counterfeiter/v6: v6.2.2 → v6.2.3
- github.com/psampaz/go-mod-outdated: v0.5.0 → v0.6.0
- github.com/sclevine/spec: v1.2.0 → v1.4.0
- github.com/spf13/cobra: v0.0.7 → v1.0.0
- github.com/yuin/goldmark: v1.1.27 → v1.1.30
- golang.org/x/tools: 9497f49 → 066e0c0
Removed
Nothing has changed.
v0.1.5
Changes by Kind
Deprecation
- Bundle CNI plugins (v0.8.6) in kubelet deb/rpm packages (#1309, @justaugustus) [SIG Network and Release]
Bug or Regression
- Systemd would now start the kubelet service after the network-online.target is reached. (#1250, @justaugustus) [SIG Node and Release]
Other (Cleanup or Flake)
- Use k8s-artifacts-cri-tools GCS bucket as source for CRI tools (#1322, @justaugustus) [SIG Release]
v0.3.2
Changes by Kind
API Change
- Added
kubepkg.Clientstruct type to allow better encapsulation (has to be created viakubepkg.New()) (#1282, @saschagrunert) - Added dedicated
optionspackage for configuringkubepkg(#1285, @saschagrunert) - Added new
anagoflag--type=[alpha|beta|rc|official]which deprecates the--officialand--rcflags - Changed the
krel gcbmgr--typeflag to now acceptalpha,beta,rcandofficialas well (#1286, @saschagrunert) - Switched to go-git/v5 dependency which makes manual import path adaption required (#1283, @saschagrunert)
Feature
- Add
DependencyChanges()function to thenotespackage to be able to collect Kubernetes dependency changes (#1253, @saschagrunert) - Add
--dependenciesoption tokrel release-notes(default:true) (#1298, @saschagrunert) - Add
RepoIsForkOf()to check repository inheritance. - Add
GetRepository()functions in all clients to get repository data from the GitHub API. (#1287, @puerco) - Added
--dependenciesflag torelease-notestool to add a dependency report (#1292, @saschagrunert) - Added
git.IsDirty()method to verify the state of a local repository krel gcbmgrnow verifies that the local copy of k/release is neither dirty nor diverged with the latest remote commit (#1284, @saschagrunert)- Added dependency report to generated CHANGELOG.{md,html} when running
krel changelog(#1291, @saschagrunert) - Added flag validation for
anago --type, which must be eitheralpha,beta,rcorofficial. (#1289, @saschagrunert) - K8s-cloud-builder: Build cross1.14 variant on kube-cross:v1.14.3-1 (#1299, @justaugustus)
- kube-cross: Build v1.14.3-1 image (#1294, @justaugustus)
Bug or Regression
- Changed
git.OpenRepoto now correctly choose the path when prefixed with~/(#1297, @saschagrunert) - lib/release: Fix version label logic for release cuts
- Move branch creation to RC cuts
- Enable beta cuts on master
- Disallow alpha releases after a beta has been cut (#1288, @justaugustus)
- [krel] gcbmgr: Add validation method for GcbmgrOptions (#1293, @justaugustus)
Dependencies
Added
- github.com/saschagrunert/ccli: b68f755
- github.com/saschagrunert/go-modiff: v1.2.0
- github.com/urfave/cli/v2: v2.2.0
Changed
- github.com/fatih/color: v1.7.0 → v1.9.0
- github.com/mattn/go-isatty: v0.0.8 → v0.0.11
- github.com/onsi/ginkgo: v1.11.0 → v1.12.0
- github.com/onsi/gomega: v1.8.1 → v1.10.0
- github.com/yuin/goldmark: v1.1.25 → v1.1.27
Removed
Nothing has changed.
v0.3.1
Changes by Kind
API Change
- Added
--format go-template:inline:<template-string>options torelease-notestool - Removed deprecated
FormatSpecMarkdownfromoptionspackage (#1271, @saschagrunert) [SIG Release] - Added
document.GatherReleaseNotesDocumentandnotes.GatherReleaseNotesAPI - Changed
document.CreateDocumenttodocument.Newwhich now needs a start and end tag for later rendering as well (#1272, @saschagrunert) [SIG Release] - Removed deprecated
document.RenderMarkdownfunction (#1274, @saschagrunert) [SIG Release]
Feature
- Add
CreatePullRequest()to the github package (#1268, @puerco) [SIG Release] - Added
MatchesExcludeFilterandMatchesIncludeFilterpublic functions tonotespackage (#1270, @saschagrunert) [SIG Release] - k8s-cloud-builder: Build images on kube-cross v1.14.2-4 and v1.13.9-5 (#1280, @justaugustus) [SIG Release]
- [krel] anago: Initial commit (#1106, @justaugustus) [SIG Release]
- images/k8s-cloud-builder: Support building against multiple kube-cross versions in parallel
- kube-cross: Build v1.14.2-4 and v1.13.9-5 images (#1279, @justaugustus) [SIG Release]
Bug or Regression
- Fixed
krel changelogstart revision retrieval issue (#1276) (#1277, @saschagrunert) [SIG Release] - pkg/gcp: Swap
GCloudExecutableandTarExecutableconst values - anago: Add '--branch' to krel gcbmgr command tip (#1275, @justaugustus) [SIG Release]
Dependencies
v0.3.0
Changes by Kind
Deprecation
- The shell-based gcbmgr tool is now deprecated (#1219, @saschagrunert) [SIG Release]
API Change
- Removed
git.DescribeTagandgit.GetTagin favor of the new methodgit.Describe().
This method takes the new typegit.DescribeOptionsto ensure enough flexibility for the future. (#1220, @saschagrunert) [SIG Release] - The functions
GetRepoURL,GetKubernetesRepoURL, andGetDefaultKubernetesRepoURL
of thegitpackage are not able to error any more and return only the resultingstring. (#1213, @saschagrunert) [SIG Release]
Feature
- Add
LsRemote()method togitpackage repository (#1252, @saschagrunert) [SIG Release] - Add file location to debug log output of kubepkg (#1262, @saschagrunert) [SIG Release]
- Add release notes inline template support (via
go-template:inline:<string>) todocument.RenderMarkdownTemplate()(#1266, @saschagrunert) [SIG Release] - Added
testgridpackage to retrieve the blocking testgrid tests (#1226, @saschagrunert) [SIG Release] - Added support for kind/regression on release notes generation (#1232, @saschagrunert) [SIG Release]
- Adds "patch-to-latest" discover mode. (#1245, @msau42) [SIG Release]
- Kube-cross: Build v1.14.2-3 and v1.13.9-4 images
- Dependency updates:
- PROTOBUF_VERSION to 3.11.4
- ETCD_VERSION to v3.4.7
- SKOPEO_VERSION to v0.2.0 (#1264, @justaugustus)
- Dependency updates:
- Kube-cross: Support building against multiple Go versions in parallel (#1258, @justaugustus) [SIG Release]
- Kube-cross: Update to go1.14.2 (#1246, @justaugustus)
- Update k8s-cloud-builder to use kube-cross:v1.13.9-2 (#1209, @justaugustus) [SIG Release]
- [VDF] anago: Publish container images on K8s Infra (k8s-staging-kubernetes) (#1199, @justaugustus) [SIG Release]
krel gcbmgrnow validates that the latest remote commit of the release repository
is available in the local repository checkout. To ensure that a newgitAPI
methodBranch()has been added as well. (#1254, @saschagrunert) [SIG Release]krel gcbmgrnow validates the state of the currently checked out release repository (branch and remote) (#1221, @saschagrunert) [SIG Release]
Bug or Regression
- Fixed missing
release_versionfield in generatedkrel release-notesJSON output (#1217, @saschagrunert) [SIG Release] - Fixed very slow performance of
repo.Add()method within thegitpackage (#1215, @saschagrunert) [SIG Release] - Gcbmgr: default to 5 last jobs when a negative number is set (#1235, @cpanato) [SIG Release]
- Images: add skopeo binary for the 1.15 releases (#1242, @cpanato) [SIG Release]
- Systemd would now start the kubelet service after the network-online.target is reached. (#1249, @rosti) [SIG Node and Release]
- Testgridshot: removed canned_acl option when uploading to K8s Infra (#1210, @cpanato) [SIG Release]
Other (Cleanup or Flake)
- Dependencies/cobra: update cobra to v0.0.7 (#1237, @cpanato) [SIG Release]
- Dependencies/google.golang.org/api: update google.golang.org/api to v0.21.0 (#1238, @cpanato) [SIG Release]
- Dependencies/testgrid: update to use release v0.0.10 (#1240, @cpanato) [SIG Release]
- Lib/release: Use regex to prevent ACL changes on K8s Infra GCS buckets (#1223, @justaugustus) [SIG Release]
- Modify the krel release-notes subcommand to always create clean checkouts of k/sig-release and k-sigs/release-notes instead of re-using existing clones. Removed --kubernetes-sigs-fork-path and --sigrelease-fork-path flags. (#1126, @JamesLaverack) [SIG Release]
- [VDF] Partial revert of k8s.gcr.io cutover (#1229, @justaugustus) [SIG Release]
krel gcbmgrdoes not require theyqdependency any more- Added
gcppackage which contains aPreCheckfunction to validate the system requirements (#1251, @saschagrunert) [SIG Release]
v0.2.7
Changes by Kind
Deprecations
- This change soft-deprecates the
--format="markdown"option which is excepted but will be deprecated soon. Thego-template:defaultoption is now the default format. Since pr#1008 when this option is given, the internal default template is used anyway. AdditionallyDocument.RenderMarkdown()is soft deprecated as it will be removed in #1019. Finally for API usersDocument.NotesByKindis deprecated. (#1148, @j0n3lson)
Feature
-
Added
Addwriter(),AddErrorWriter()andAddOutputWriter()to command package which allows commands to specify additional writers, for example when having the need for logging to files. (#1198, @saschagrunert) -
Changed
krel gcbmgrto check for available packages (jq, git, bsdmainutils) and binaries (gsutil, gcloud) on the host system (#1171, @saschagrunert) -
This change adds four new flags to the krel release-notes subcommand:
--create-website-pr- Flag to enable the release notes json generator--website-org- GitHub Organization of the users fork of kubernetes/sig-release--website-repo- Repository containing the fork of the user's repo--kubernetes-sigs-fork-path- Filesystem path to the user's fork of k/sig-release
After this change it is not longer possible to run
--create-website-prand--create-draft-prduring the same invocation.
Implementation of --create-website-pr in the krel release-notes subcommand to generate the release notes in json format for relnotes.k8s.io (#1185, @puerco) -
Images/releng-ci-bazel: Add jq, bsdmainutils and google-cloud-sdk (#1170, @saschagrunert)
-
Images: Move kube-cross image building to k/release (#1140, @justaugustus)
-
Kube-cross: Update to go1.13.9 (#1200, @justaugustus)
-
Kube-cross: Update to go1.14.1 (#1208, @justaugustus)
Documentation
- Added documentation to
options.Optionsstructure (#1183, @saschagrunert) - First batch of krel usage documents. Main README.md and a doc for each subcommand. (#1201, @puerco)
Failing Test
- Kube-cross: Fix image pushing job failures (#1202, @justaugustus)
Other (Bug, Cleanup or Flake)
- Change
krel changelogto remove non release branch relatedCHANGELOG/CHANGELOG-*.mdonly on the first release candidate (for examplev1.18.0-rc.1) (#1182, @saschagrunert) - Changed
util.EnvDefault()to also return the default if the set value is empty (aka"") (#1197, @saschagrunert) - Changed kubepkg to take GITHUB_TOKEN into account for doing authenticated GitHub requests (#1177, @saschagrunert)
- Fix building of deb packages in kubepkg (#1188, @saschagrunert)
- Increased log verbosity of
krel changelog(#1190, @saschagrunert) - krel gcbmgr now defaults to the
masterbranch if no--branchis provided (#1205, @saschagrunert) - Configure releng GCB jobs to use new staging project and add VDF TODOs (#1172, @justaugustus)
- Testgridshot: removed canned_acl option when uploading to K8s Infra (#1210, @cpanato)
- Update GoogleCloudPlatform/testgrid to v0.0.7 (#1193, @cpanato)
v0.2.5
Changes by Kind
Feature
- Added
git.HasRemoteandgit.RemotesAPI- Added pre-check in
krel release-notesif the fork remote is already available (#1122, @saschagrunert)
- Added pre-check in
- The function
git.Remotifydoes not remotify remotes which have been already remotified (#1118, @saschagrunert) - Add --create-draft-pr --draft-org and --draft-repo flags to automate the creation of the release notes draft
Add --output-dir to output a copy of the release notes. (#1102, @puerco) - [krel] gcbmgr: Dynamically retrieve build version from CI markers (#1114, @justaugustus)
Documentation
- Add and enhance the documentation on
krel -h(#1138, @saschagrunert)
Other (Bug, Cleanup or Flake)
- Changed
git.CloneOrOpenRepo()to not take a separateuseSSHindicator any more (#1111, @saschagrunert) - Add dedicated
githubpackage (#1136, @saschagrunert) - Change
git.Remotesto always return the remotes sorted alphabetically (#1130, @saschagrunert) - Changed
krel ffto restore the currently checked out git branch (#1123, @saschagrunert) - Enhanced
krel ffdocumentation and fixed--refto be taken into consideration (#1117, @saschagrunert) - Fixed wrong CHANGELOG link not targeting to the release tag any more (#1137, @saschagrunert)
- Remove
ownerfromgit.CloneOrOpenDefaultGitHubRepoSSHand use the default one (kubernetes) (#1116, @saschagrunert) - Removed
branchffscript in favor ofkrel ff(#1129, @saschagrunert) - Updated
krel changelogto correctly choose the start tag for a release (#1135, @saschagrunert) - Images: Update k8s-cloud-builder to use the new kube-cross location (#1141, @justaugustus)
- Removes federation release kind option from krel push (#1128, @hasheddan)
- Update go dependencies
- github.com/google/go-github/v29 (v29.0.2 --> v29.0.3)
- github.com/pkg/errors (v0.8.1 --> v0.9.1)
- github.com/spf13/cobra (v0.0.5 --> v0.0.6)
- github.com/stretchr/testify (v1.4.0 --> v1.5.1)
- k8s.io/utils (v0.0.0-20200117235808-5f6fbceb4c31 --> v0.0.0-20200229041039-0a110f9eb7ab)
- sigs.k8s.io/yaml (v1.1.0 --> v1.2.0) (#1142, @justaugustus)
- [krel] changelog: Include CHANGELOG/README.md in master commit logic (#1143, @justaugustus)