Skip to content

Releases: kubernetes/release

v0.5.0

21 Oct 20:47
v0.5.0
a947968
Compare
Choose a tag to compare

Changes by Kind

API Change

  • Modify git.HasRemoteBranch() to split output into a bool and error. (#1620, @puerco)

Feature

  • Added RsyncRecursive() API to gcs package to run gsutil rsync (#1627, @saschagrunert)
  • Added --fast flag to krel push (#1575, @saschagrunert)
  • Added --validate-images flag to krel push to validate the existence of the remote images (default: false) (#1582, @saschagrunert)
  • Added NewImages().Publish() API to release package. (#1568, @saschagrunert)
  • Added krel anago push subcommand for publishing anago stage and release artifacts. (#1597, @saschagrunert)
  • Added release.PushReleaseArtifacts API which is now used in anago to push artifacts to GCS (#1603, @saschagrunert)
  • Added additional image validation step to krel anago push --stage to test for the image promotion. (#1633, @saschagrunert)
  • Added container images push feature to krel anago push (#1606, @saschagrunert)
  • Images: Build debian-iptables:stretch-v1.2.0
    • Removes iptables-wrapper, which was extraneous for the stretch
      variant of this image (#1623, @justaugustus)
  • Images: Build releng-ci with go1.15.3
    • images: Build kube-cross:v1.15.3-1 and v1.15.3-canary-1
      • Now built with go1.15.3
    • images: Build go-runner:buster-v2.1.0
  • Krel promote-images will now accept more than one --tag when patching the promotion manifest (#1641, @puerco)
  • Krel/gcbmgr: add build-at-head flag (#1589, @cpanato)
  • Migrate promotion CLI tools to k/release
    The following tools have been added to the repo:
  • New release.GitObjectPusher object to handle pushes to remote git repos
    • New krel anago push-git-objects subcommand that pushes branches and tags to a repository remote (#1595, @puerco)
  • New remote tag functions: git.RemoteTags() and git.HasRemoteTag() which return the tags in the default remote repository and check if one exists
    • git.LSRemote() now honors Repo.maxRetries and will retry when a network failure occurs (#1625, @puerco)
  • Pkg/release: Add release.StageLocalArtifacts() API (#1593, @saschagrunert)
  • Pull requests done to the Release Notes website will now include edits from the release team. This are read from the mapping files stored in kubernetes/sig-release. (#1648, @puerco)
  • git.Repo() now has a SetMaxRetries() function to enable retrying git ops when a network error occurs.
    • New function repo.HasBranch() added to the git package
    • Added a NetworkError type that wraps the golang standard error and can be queried to check if errors can be retried
    • git.Push() and git.HasRemoteBranch() now have retry capability (#1621, @puerco)

Bug or Regression

  • Adjust the way krel release-notes determines the start tag to match the post 1.19 branching strategy (#1573, @puerco)

  • Changed krel changelog to always generate the release notes against the latest minor on alpha.1 pre-release cuts. (#1572, @saschagrunert)

  • Fixed --fast upload location for krel push (#1583, @saschagrunert)

  • Fixed a bug in krel anago push where it did download kubernetes.tar into the wrong local destination path. (#1617, @saschagrunert)

  • Fixed bug where a command execution could dead-lock when only producing stderr output. Both streams are now in sync. (#1604, @saschagrunert)

  • Fixed image verification step to always stick to the provided container registry and not automatically use k8s.gcr.io (#1631, @saschagrunert)

  • New package k8s.io/release/pkg/editor gets rid of the dependency to the editor package in kubectl. (#1599, @puerco)

  • Starting with Debian Buster, nftables is available as a replacement for
    iptables, by default.

    More details here: https://wiki.debian.org/nftables

    This introduces both a "legacy" and an "nft" iptables variant.
    To deal with this, an iptables-wrapper script was introduced to detect the
    correct variant and run update-alternatives:

    A corresponding Dockerfile change was created to use iptables-wrapper.
    These now apply to the stretch image build, and assume that the legacy/nft
    variants exist, but they do not. This change removes the alternative
    handling, which is not applicable back in Debian Stretch.

    This is needed to build a new version of debian-iptables with a newer
    debian-base than we currently have available in the public repos. (#1613, @wespanther)

Other (Cleanup or Flake)

Dependencies

Added

  • cloud.google.com/go/logging: v1.1.0
  • github.com/Azure/azure-sdk-for-go: v42.3.0+incompatible
  • github.com/Azure/go-autorest/autorest/to: v0.3.0
  • github.com/Azure/go-autorest/autorest/validation: v0.2.0
  • github.com/GoogleCloudPlat...
Read more

v0.4.2

02 Oct 10:08
33412b2
Compare
Choose a tag to compare

Changes by Kind

Feature

  • Added --validate-images flag to krel push to validate the existence of the remote images (default: false) (#1582, @saschagrunert) [SIG Release]
  • Added krel anago push subcommand for publishing anago stage and release artifacts. (#1597, @saschagrunert) [SIG Release]
  • Krel/gcbmgr: add build-at-head flag (#1589, @cpanato) [SIG Release]
  • Pkg/release: Add release.StageLocalArtifacts() API (#1593, @saschagrunert) [SIG Release]

Bug or Regression

  • Fixed --fast upload location for krel push (#1583, @saschagrunert) [SIG Release]
  • New package k8s.io/release/pkg/editor gets rid of the dependency to the editor package in kubectl. (#1599, @puerco) [SIG Release]

Other (Cleanup or Flake)

  • Added release.BuildDIrconst for referencing the default build directory _output (#1586, @saschagrunert) [SIG Release]
  • Fixed broken update-deps-go Makefile target (#1601, @saschagrunert) [SIG Release]
  • Images/k8s-cloud-builder: Update skopeo to v1.2.0 (#1588, @saschagrunert) [SIG Release]
  • Implement parallelism ourselves in github.DownloadReleaseAssets() instead of using k8s.io/apimachinery (#1598, @puerco) [SIG Release]
  • Pkg/release: Use semver for release version generation (#1581, @saschagrunert) [SIG Release]
  • Removed --release-type flag from krel push. Please use --ci instead. (#1587, @saschagrunert) [SIG Release]
  • Removed nomock option from krel push (#1602, @saschagrunert) [SIG Release]
  • Removed prin and script-template from the repository. (#1584, @saschagrunert) [SIG Release]
  • Update cloud.google.com/go/storage dependency to v1.12.0 which is the latest available and has the following changes
    • Update golang.org/x/net dependency to v0.0.0-20200925080053-05aa5d4ee321 (#1590, @cpanato) [SIG Release]

Dependencies

Added

Nothing has changed.

Changed

Removed

  • github.com/Azure/go-autorest/autorest/adal: v0.8.2
  • github.com/Azure/go-autorest/autorest/date: v0.2.0
  • github.com/Azure/go-autorest/autorest/mocks: v0.3.0
  • github.com/Azure/go-autorest/autorest: v0.9.6
  • github.com/Azure/go-autorest/logger: v0.1.0
  • github.com/Azure/go-autorest/tracing: v0.5.0
  • github.com/MakeNowJust/heredoc: bb23615
  • github.com/NYTimes/gziphandler: 56545f4
  • github.com/PuerkitoBio/purell: v1.1.1
  • github.com/PuerkitoBio/urlesc: de5bf2a
  • github.com/cespare/xxhash/v2: v2.1.1
  • github.com/chai2010/gettext-go: c6fed77
  • github.com/daviddengcn/go-colortext: 511bcaf
  • github.com/docker/spdystream: 449fdfc
  • github.com/docopt/docopt-go: ee0de3b
  • github.com/elazarl/goproxy: 947c36d
  • github.com/emicklei/go-restful: v2.9.5+incompatible
  • github.com/evanphx/json-patch: v4.9.0+incompatible
  • github.com/exponent-io/jsonpath: d6023ce
  • github.com/fatih/camelcase: v1.0.0
  • github.com/go-openapi/jsonpointer: v0.19.3
  • github.com/go-openapi/jsonreference: v0.19.3
  • github.com/go-openapi/spec: v0.19.3
  • github.com/go-openapi/swag: v0.19.5
  • github.com/golangplus/bytes: 45c989f
  • github.com/golangplus/fmt: 2a5d6d7
  • github.com/golangplus/testing: af21d9c
  • github.com/googleapis/gnostic: v0.4.1
  • github.com/gregjones/httpcache: 9cad4c3
  • github.com/liggitt/tabwriter: 89fcab3
  • github.com/lithammer/dedent: v1.1.0
  • github.com/mailru/easyjson: v0.7.0
  • github.com/mitchellh/go-wordwrap: v1.0.0
  • github.com/munnerz/goautoneg: a547fc6
  • github.com/mxk/go-flowrate: cca7078
  • github.com/peterbourgon/diskv: v2.0.1+incompatible
  • gopkg.in/inf.v0: v0.9.1
  • k8s.io/api: v0.19.2
  • k8s.io/apimachinery: v0.19.2
  • k8s.io/cli-runtime: v0.19.2
  • k8s.io/client-go: v0.19.2
  • k8s.io/code-generator: v0.19.2
  • k8s.io/component-base: v0.19.2
  • k8s.io/gengo: 8167cfd
  • k8s.io/kube-openapi: 6aeccd4
  • k8s.io/kubectl: v0.19.2
  • k8s.io/metrics: v0.19.2
  • sigs.k8s.io/kustomize: v2.0.3+incompatible
  • sigs.k8s.io/structured-merge-diff/v4: v4.0.1

v0.4.1

24 Sep 06:39
v0.4.1
ebd41a9
Compare
Choose a tag to compare

Changes by Kind

API Change

  • Add new function git.ParseRepoSlug()
  • Fix a bug where the draft pull request was not created when the release-notes subdirs did not exist
  • New krel release-notes flag --fork that replaces --org, --draft-repo and --website-repo. (#1543, @puerco) [SIG Release]
  • Changed anago's --buildversion flag to be required (#1489, @saschagrunert) [SIG Release]
  • Changed release-notes --github-[org,repo] flags to be just --org and --repo (#1495, @saschagrunert) [SIG Release]
  • Removed release-notes --release-version option since it has only being used for the JSON blob in the website (#1520, @saschagrunert) [SIG Release]

Feature

  • Add configurable timeout to test-go.sh with a new -t|--timeout flag (#1558, @puerco) [SIG Release]

  • Add release.ReadReleaseImageTags() function to read image tags from generated tar files
    Add release.GetTarManifest() function to read the manifest.json file in an image
    Add release.GetOCIManifest() function which return the image manifest in an OCI Image manifest (#1486, @puerco) [SIG Release]

  • Added --fast flag to krel push (#1575, @saschagrunert) [SIG Release]

  • Added NewImages().Publish() API to release package. (#1568, @saschagrunert) [SIG Release]

  • Added krel set-release-version command to be used from anago (#1522, @saschagrunert) [SIG Release]

  • Added release.CopyBinaries to copy built Kubernetes binaries into the pre-defined target directories (#1538, @saschagrunert) [SIG Release]

  • Added release.WriteChecksums() API for writing release checksums (mainly used by krel push) (#1562, @saschagrunert) [SIG Release]

  • Added util.WrapText() which allows to word wrap text to a specified line size

  • Improvements to util.Ask() to recognize more choices, invalid expected answers and a default value. (#1454, @puerco) [SIG Release]

  • Added automatic skip for dependency report if release-notes start and end SHA are the same. (#1507, @saschagrunert) [SIG Release]

  • Bootstrap docker buildx usage for multiarch containers (#1511, @justaugustus) [SIG Release]

  • Deps: Update repo-infra to v0.1.1

  • deps: Add dependency versions check via zeitgeist (#1561, @justaugustus) [SIG Release]

  • Go.mod: Update to go1.15 directives

  • deps: Move tools to its own module

  • deps: Update all dependencies (#1553, @justaugustus) [SIG Release]

  • Images: Build debian-base:v1.2.0

    New Debian images are available upstream, so this is just a periodic
    image update. (#1537, @justaugustus) [SIG Release]

  • Images: Build debian-hyperbase-base:buster-v1.2.0

  • Uses debian-iptables:buster-v1.3.0 (#1542, @justaugustus) [SIG Release]

  • Images: Build debian-iptables:buster-v1.3.0

  • Uses debian-base:buster-v1.2.0

  • Updates iptables to 1.8.5 (#1540, @justaugustus) [SIG Release]

  • Images: Build go-runner:buster-v2.0.0 using go1.15

  • images/go-runner: Allow PLATFORMS to be configurable

  • images/go-runner: Echo platform value before starting build

  • images/go-runner: Use multiarch/qemu-user-static

  • images/go-runner: Allow fallback to 'direct' for GOPROXY (#1499, @justaugustus) [SIG Release]

  • Images: Build go1.15.1 images (kube-cross, go-runner)

  • kube-cross:v1.15.1-1

    • etcd updated to v3.4.13
  • go-runner:buster-v2.0.1

  • kube-cross: Remove variant building for go1.13 (which is out of support)

  • kube-cross: Remove variant building for go1.14 (which is unused in k/k) (#1514, @justaugustus) [SIG Release]

  • Images: Build k8s-cloud-builder:v1.15.1-1

  • Update to go1.15.1

  • Update skopeo to v1.1.1 (#1516, @justaugustus) [SIG Release]

  • Images: Build k8s-cloud-builder:v1.15.2-1

  • Uses kube-cross:v1.15.2-1 (#1550, @justaugustus) [SIG Release]

  • Images: Build kube-cross v1.15.2-1 and v1.15.2-canary-1

  • images: Build go-runner:buster-v2.0.2 (using go1.15.2) (#1533, @justaugustus) [SIG Release]

  • Images: Migrate go-runner image building to k/release

  • images/go-runner: Enable variant building

  • images/go-runner: Add 'buster' variant

  • images/go-runner: Allow configurable go versions and use go1.13.15

  • images/go-runner: Fixup go module and build files (#1498, @justaugustus) [SIG Release]

  • Images: Update env to k8s-testimages/gcb-docker-gcloud:v20200824-5d057db

  • kube-cross: Enable building via docker buildx

    Use go-runner Makefile pattern for multi-arch

  • images: Use shell for loops to "simplify" platform building/pushing

  • images: Standardize Makefiles for build images

    Here we create a few "common" Makefiles for image building:

    • images/Makefile.common-image

    • images/build/Makefile.build-image

      Makefile.common-image takes the targets from the go-runner Makefile and
      makes them reusable for both go-runner and kube-cross.

      Makefile.build-image is intended to contain information specific to
      images that will be built in the k8s-staging-build-image GCP project.
      Right now, it only contains the target Google Container Registry.

      images/build/{go-runner,kube-cross}/Makefile now only contains variables
      specific to the image and includes the aforementioned "common" Makefiles
      via the 'include' directive.

      (This is borrowed from how k-sigs/kind handles their image building.)

  • go-runner: Drop extraneous pre-build step in Dockerfile

    This seems like it might be causing build failures on s390x.

  • images: Fix image manifests annotating 'os/arch' instead of 'arch'

    Use make functions for string substitution instead of sed.
    Frankly, the sed was hard for me for comprehend.

    For amending manifests to the final manifest list, we were previously
    pushing images with the full platform name:

    e.g., "linux/amd64" (OS/architecture) instead of "amd64" (just arch)

    This commit properly strips the OS during manifest list creation.

    (The same issue was fixed for image tags in a previous commit.) (#1418, @justaugustus) [SIG Release]

  • Images: Use OS codenames to construct clearer versions for Debian images (#1496, @justaugustus) [SIG Release]

  • K8s-cloud-builder: Build on kube-cross:v1.15.0-1 (#1490, @justaugustus) [SIG Release]

  • Krel/announcement: Add krel command to build the Kubernetes announcement file (#1502, @cpanato) [SIG Release]

  • Kube-cross: Build v1.15.0-1 image (#1487, @justaugustus) [SIG Release]

  • New krel promote-images subcommand to create the image promotion pull requests

  • API to read and write image lists in an image promoter thin-manifest (#1544, @puerco) [SIG Release]

  • Packages: Update to CNI plugins v0.8.7

  • images: Build debian-hyperkube-base:buster-v1.1.4

  • Release Notes Editing Flow. Adds the --fix flag to the krel release-notes subcommand to enable the team to edit the release notes during the release cycle. It also adds logic to handle editing sessions and pushing the modified Draft back to k/sig-release (#1467, @puerco) [SIG Release]

Documentation

  • Update repo...
Read more

v0.4.0

10 Aug 15:23
v0.4.0
854a7b4
Compare
Choose a tag to compare

Changes by Kind

API Change

  • Changed notes.ReleaseNotes to be a wrapper struct which now contains the notes by PR and the history.
    Necessary API fields to retrieve and set the notes have been added as well, like notes.NewReleaseNotes(). (#1423, @saschagrunert)
  • New standaolne functions git.GetUserName() and git.GetUserEmail() (#1453, @puerco)
  • Removed --build-at-head flag from anago (#1394, @saschagrunert)

Feature

  • Add record/replay functionality to github.GetReleaseByTag (#1377, @saschagrunert)
  • Added Commands structure which can be used to run multiple commands sequentially by preserving
    the working directory and verbosity mode. The structure can be used by calling the
    Add(cmd string, args string...) method of Command or Commands.
    Calling Run() on Commands will run each command in sequence by aborting if the first command fails. (#1391, @saschagrunert)
  • Added Signed-off-by: User Name <[email protected]> line to git.UserCommit() (#1436, @saschagrunert)
  • Added command.SetGlobalVerbose(bool) and command.GetGlobalVerbose() bool functions to
    globally set the commands verbosity mode
  • Changed commands to be automatically verbose when the specified log-level=[debug,trace] (#1393, @saschagrunert)
  • Added command.Verbose() method which enables verbose output (printing the command before execution) for the command invocation (#1390, @saschagrunert)
  • Added gcp.GSUtil() function to run GCP commands
  • Added release.GetJobCache() method to retrieve the job cache for a job name (#1308, @saschagrunert)
  • Added release.BuildVersionClient and the corresponding API BuildVersionClient.SetBuildVersion which searches for a
    successful build version in the CI. (#1395, @saschagrunert)
  • Added release.SetReleaseVersion() API method (#1397, @saschagrunert)
  • Anago: set the Golang version used to build the release when creating the announcement (#1451, @cpanato)
  • Base-images: Build debian-hyperkube-base:v1.1.3 (#1483, @justaugustus)
  • Base-images: Build [email protected] (#1458, @justaugustus)
  • Base-images: Build [email protected] (#1456, @justaugustus)
  • Changed release-notes --format flag to only support markdown and json.
    Added a new release-notes flag --go-template which can be used to specify
    the golang template when --format=markdown. (#1419, @saschagrunert)
  • Gh2gcs: add yaml config option (#1380, @cpanato)
  • Hack: Add k8s-rapture.sh for publishing debs and rpms to Google-owned infra (#1378, @listx)
  • Images/build/debian-**: Enable variant building
  • base-images: Build [email protected] (#1476, @justaugustus)
  • Images: Build debian-base:v2.1.3
  • images: Build debian-iptables:v11.1.0 (#1478, @justaugustus)
  • Images: Build debian-iptables:v12.1.2 (#1480, @justaugustus)
  • Images: Migrate Debian base image building to k/release
  • third_party: Add multiarch/qemu-user-static@22b0013
  • [VDF] Reference k8s.gcr.io instead of us.gcr.io/k8s-artifacts-prod
  • base-images: Build [email protected] (#1450, @justaugustus)
  • Increased release notes parsing logging verbosity.
    It now displays which PRs contain release notes for which commit. (#1409, @saschagrunert)
  • K8s-cloud-builder: Build on kube-cross:v1.14.5-1 and v1.13.13-1 (#1407, @justaugustus)
  • K8s-cloud-builder: Build on kube-cross:v1.14.6-1 and v1.13.14-1 (#1417, @justaugustus)
  • K8s-cloud-builder: Build on kube-cross:v1.14.7-1 and v1.13.15-1 (#1475, @justaugustus)
  • K8s-cloud-builder: Build on kube-cross:v1.15.0-rc.1-1 and add canary (#1439, @justaugustus)
  • K8s-cloud-builder: Build on kube-cross:v1.15.0-rc.2-1 (#1484, @justaugustus)
  • Krel: add generate subcommand to build the metrics for the gh issue (#1369, @cpanato)
  • Kube-cross: Build v1.13.14-1 and v1.15.0-beta.1-canary-1 images (#1415, @justaugustus)
  • Kube-cross: Build v1.14.5-1 and v1.13.13-1 images (#1406, @justaugustus)
  • Kube-cross: Build v1.14.6-1 (#1411, @mkumatag)
  • Kube-cross: Build v1.14.7-1 and v1.13.15-1 images (#1473, @justaugustus)
  • Kube-cross: Build v1.15.0-beta.1-1 image (#1420, @justaugustus)
  • Kube-cross: Build v1.15.0-rc.1-1 image (#1437, @justaugustus)
  • Kube-cross: Build v1.15.0-rc.2-1 image (#1482, @justaugustus)
  • Make hack/verify-shellcheck.sh work with docker-compatible container runtimes, for example
    by setting CONTAINER_RUNTIME=podman hack/verify-shellcheck.sh (#1351, @saschagrunert)
  • New capability in release notes pkg to read map files which can modify release notes data and add new, arbitrary fields.
  • Function ApplyMap() was added to ReleasNote type to enable it to get a map and modify itself
  • New interface MapProvider which gets release notes map files
  • New flag in krel release-notes to enable map providers: --maps-from (#1373, @puerco)
  • Push-build: Support pushing cross builds to a /cross subdirectory (#1386, @justaugustus)
  • Push-build: Support uploading multiple version markers (#1385, @justaugustus) [SIG Release and Testing]

Documentation

Failing Test

Bug or Regression

  • Anago: Push images during staging and validate manifests during release
  • lib/release: Cleanup container registry variables
  • Use GCRIO_PATH_PROD to construct KUBE_CROSS_REGISTRY
  • Rename GCRIO_PATH_TEST to GCRIO_PATH_STAGING
  • Add GCRIO_PATH_MOCK (gcr.io/k8s-staging-kubernetes/mock) for mocks
  • lib/release: Use a mock location for images when running mock stages (#1455, @justaugustus)
  • Changelog: remove changelog files from other releases when we cut the first official release (#1416, @cpanato)
  • Fixed bug on error population for krel release-notes if the website PR draft fails. ([#1413](https://github.com/kubernetes/releas...
Read more

v0.3.4

23 Jun 21:11
v0.3.4
5b86e68
Compare
Choose a tag to compare

Changes by Kind

Feature

Documentation

Bug or Regression

Other (Cleanup or Flake)

  • Function BranchExists() has been ported to the github package.
  • The addReferenceToAssetsFile() function idempotent to enable re-generation of json files
  • The GitHub organization flag to create PRs is now simply --org
  • The --website-org and --draft-org have been removed
  • Fork checking is now done in an independent block which can be called independently
  • --create-draft-pr and --create-website-pr can now be run at the same time
  • Running krel release-notes without any option now shows usage info and exits (#1350, @puerco)
  • Schedule-builder: add unit tests (#1349, @cpanato)
  • Update github.com/go-git/go-git dependency to v5.1.0
  • Update github.com/sendgrid/rest dependency to v2.6.0
  • Update github.com/sendgrid/sendgrid-go dependency to v3.6.0
  • Update github.com/stretchr/testify dependency to v1.6.1
  • Update github.com/yuin/goldmark dependency to v1.1.32
  • Update github.com/bazelbuild/rules_go dependency to v0.23.3
  • Update golang.org/x/net dependency to v0.0.0-20200602114024-627f9648deb9 (#1357, @cpanato)

Dependencies

Added

  • github.com/NYTimes/gziphandler: 56545f4
  • github.com/PuerkitoBio/purell: v1.0.0
  • github.com/PuerkitoBio/urlesc: 5bd2802
  • github.com/docker/spdystream: 449fdfc
  • github.com/elazarl/goproxy: 947c36d
  • github.com/emicklei/go-restful: ff4f55a
  • github.com/evanphx/json-patch: v4.2.0+incompatible
  • github.com/go-logr/logr: v0.1.0
  • github.com/go-openapi/jsonpointer: 46af16f
  • github.com/go-openapi/jsonreference: 13c6e35
  • github.com/go-openapi/spec: 6aced65
  • github.com/go-openapi/swag: 1d0bd11
  • github.com/google/gofuzz: v1.1.0
  • github.com/googleapis/gnostic: v0.1.0
  • github.com/imdario/mergo: v0.3.9
  • github.com/json-iterator/go: v1.1.8
  • github.com/mailru/easyjson: d5b7844
  • github.com/modern-go/concurrent: bacd9c7
  • github.com/modern-go/reflect2: v1.0.1
  • github.com/munnerz/goautoneg: a547fc6
  • github.com/mxk/go-flowrate: cca7078
  • gopkg.in/inf.v0: v0.9.1
  • gopkg.in/yaml.v3: 9f266ea
  • k8s.io/apimachinery: v0.18.3
  • k8s.io/gengo: 0689ccc
  • k8s.io/kube-openapi: 61e04a5
  • sigs.k8s.io/structured-merge-diff/v3: v3.0.0

Changed

Removed

Nothing has changed.

v0.3.3

07 Jun 23:37
v0.3.3
3a27330
Compare
Choose a tag to compare

Changes by Kind

Deprecation

  • Removed krel patch-announce in favor of the more general krel announce subcommand (#1315, @saschagrunert) [SIG Release]

API Change

  • Added mail.NewSender(apiKey string) API function for mail client creation (#1319, @saschagrunert) [SIG Release]
  • Changed anago to always expect to be run inside GCB.
    This means local runs of anago are not possible any more.
    The flag --gcb does not exist any more and is enforced inside anago via export 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 announce subcommand which can be used to announce any release to the [email protected] mailing list (#1173, @saschagrunert) [SIG Release]
  • Added krel announe --print-only,-p flag 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-notes to update relnotes.k8s.io (#1304, @puerco) [SIG Release]
  • Automatically infer the krel announce default sender address and name from sendgrid if the flags (--email,-e and --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

Bug or Regression

  • Fixed release-notes table of contents to also contain dependency report if available (#1341, @saschagrunert) [SIG Release]
  • Fixed invalid previous tag selection on krel changelog for beta releases > 0 (#1334, @saschagrunert) [SIG Release]
  • Fixed not working kubepkg flag 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 where krel release-notes produced 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-notify bash script in favor of krel 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

Removed

Nothing has changed.

v0.1.5

02 Jun 04:17
v0.1.5
843311f
Compare
Choose a tag to compare

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

19 May 19:26
v0.3.2
f647485
Compare
Choose a tag to compare

Changes by Kind

API Change

  • Added kubepkg.Client struct type to allow better encapsulation (has to be created via kubepkg.New()) (#1282, @saschagrunert)
  • Added dedicated options package for configuring kubepkg (#1285, @saschagrunert)
  • Added new anago flag --type=[alpha|beta|rc|official] which deprecates the --official and --rc flags
  • Changed the krel gcbmgr --type flag to now accept alpha, beta, rc and official as well (#1286, @saschagrunert)
  • Switched to go-git/v5 dependency which makes manual import path adaption required (#1283, @saschagrunert)

Feature

  • Add DependencyChanges() function to the notes package to be able to collect Kubernetes dependency changes (#1253, @saschagrunert)
  • Add --dependencies option to krel 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 --dependencies flag to release-notes tool to add a dependency report (#1292, @saschagrunert)
  • Added git.IsDirty() method to verify the state of a local repository
  • krel gcbmgr now 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 either alpha, beta, rc or official. (#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.OpenRepo to 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

Removed

Nothing has changed.

v0.3.1

13 May 06:12
v0.3.1
c600d12
Compare
Choose a tag to compare

Changes by Kind

API Change

  • Added --format go-template:inline:<template-string> options to release-notes tool
  • Removed deprecated FormatSpecMarkdown from options package (#1271, @saschagrunert) [SIG Release]
  • Added document.GatherReleaseNotesDocument and notes.GatherReleaseNotes API
  • Changed document.CreateDocument to document.New which now needs a start and end tag for later rendering as well (#1272, @saschagrunert) [SIG Release]
  • Removed deprecated document.RenderMarkdown function (#1274, @saschagrunert) [SIG Release]

Feature

  • Add CreatePullRequest() to the github package (#1268, @puerco) [SIG Release]
  • Added MatchesExcludeFilter and MatchesIncludeFilter public functions to notes package (#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 changelog start revision retrieval issue (#1276) (#1277, @saschagrunert) [SIG Release]
  • pkg/gcp: Swap GCloudExecutable and TarExecutable const values
  • anago: Add '--branch' to krel gcbmgr command tip (#1275, @justaugustus) [SIG Release]

Dependencies

  • Dependencies/logrus: update logrus to v1.6.0 (#1236, @cpanato) [SIG Release]

v0.3.0

07 May 06:29
v0.3.0
abf58af
Compare
Choose a tag to compare

Changes by Kind

Deprecation

API Change

  • Removed git.DescribeTag and git.GetTag in favor of the new method git.Describe().
    This method takes the new type git.DescribeOptions to ensure enough flexibility for the future. (#1220, @saschagrunert) [SIG Release]
  • The functions GetRepoURL, GetKubernetesRepoURL, and GetDefaultKubernetesRepoURL
    of the git package are not able to error any more and return only the resulting string. (#1213, @saschagrunert) [SIG Release]

Feature

  • Add LsRemote() method to git package 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>) to document.RenderMarkdownTemplate() (#1266, @saschagrunert) [SIG Release]
  • Added testgrid package 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)
  • 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 gcbmgr now validates that the latest remote commit of the release repository
    is available in the local repository checkout. To ensure that a new git API
    method Branch() has been added as well. (#1254, @saschagrunert) [SIG Release]
  • krel gcbmgr now validates the state of the currently checked out release repository (branch and remote) (#1221, @saschagrunert) [SIG Release]

Bug or Regression

  • Fixed missing release_version field in generated krel release-notes JSON output (#1217, @saschagrunert) [SIG Release]
  • Fixed very slow performance of repo.Add() method within the git package (#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 gcbmgr does not require the yq dependency any more
  • Added gcp package which contains a PreCheck function to validate the system requirements (#1251, @saschagrunert) [SIG Release]