v0.5.0
Changes by Kind
API Change
Feature
- Added
RsyncRecursive()API to gcs package to rungsutil rsync(#1627, @saschagrunert) - Added
--fastflag tokrel push(#1575, @saschagrunert) - Added
--validate-imagesflag tokrel pushto validate the existence of the remote images (default:false) (#1582, @saschagrunert) - Added
NewImages().Publish()API toreleasepackage. (#1568, @saschagrunert) - Added
krel anago pushsubcommand for publishing anago stage and release artifacts. (#1597, @saschagrunert) - Added
release.PushReleaseArtifactsAPI which is now used in anago to push artifacts to GCS (#1603, @saschagrunert) - Added additional image validation step to
krel anago push --stageto 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)
- Removes
- 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
- Now built with go1.15.3 (#1650, @justaugustus)
- images: Build kube-cross:v1.15.3-1 and v1.15.3-canary-1
- 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:cip-mmpromobot-filespromobot-generate-manifest(#1652, @justaugustus)
- New
release.GitObjectPusherobject to handle pushes to remote git repos - New remote tag functions:
git.RemoteTags()andgit.HasRemoteTag()which return the tags in the default remote repository and check if one exists - 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 aSetMaxRetries()function to enable retrying git ops when a network error occurs.
Bug or Regression
-
Adjust the way
krel release-notesdetermines the start tag to match the post 1.19 branching strategy (#1573, @puerco) -
Changed
krel changelogto always generate the release notes against the latest minor on alpha.1 pre-release cuts. (#1572, @saschagrunert) -
Fixed
--fastupload location forkrel push(#1583, @saschagrunert) -
Fixed a bug in
krel anago pushwhere it did downloadkubernetes.tarinto the wrong local destination path. (#1617, @saschagrunert) -
Fixed bug where a
commandexecution 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/editorgets 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)
- Added
release.BuildDIrconst for referencing the default build directory_output(#1586, @saschagrunert) - Changed
gcp.GSUtilExecutableto be private. Please use thegcp.GSUtil()function instead. (#1649, @saschagrunert) - Deps: Update to cip/[email protected] (#1653, @justaugustus)
- Fixed broken
update-deps-goMakefile target (#1601, @saschagrunert) - Fixes #1556 introducing a new make target called test-go-integration (#1600, @gianarb)
- Images/k8s-cloud-builder: Update skopeo to v1.2.0 (#1588, @saschagrunert)
- Implement parallelism ourselves in
github.DownloadReleaseAssets()instead of using k8s.io/apimachinery (#1598, @puerco) - Pkg/release: Use semver for release version generation (#1581, @saschagrunert)
- Removed
--release-typeflag fromkrel push. Please use--ciinstead. (#1587, @saschagrunert) - Removed
nomockoption fromkrel push(#1602, @saschagrunert) - Removed
prinandscript-templatefrom the repository. (#1584, @saschagrunert) - Removed unnecessary flags
--local-gcs-stage-path,--local-release-images-path,--gcs-suffix,--staged-bucketfromkrel anago push(#1618, @saschagrunert) - Update
cloud.google.com/go/storagedependency to v1.12.0 which is the latest available and has the following changes
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/GoogleCloudPlatform/k8s-cloud-provider: 27a4ced
- github.com/aws/aws-sdk-go: v1.31.6
- github.com/bgentry/speakeasy: v0.1.0
- github.com/cockroachdb/datadriven: 80d97fb
- github.com/coreos/go-oidc: v2.1.0+incompatible
- github.com/dnaeon/go-vcr: v1.0.1
- github.com/docker/cli: a8ff7f8
- github.com/dustin/go-humanize: v1.0.0
- github.com/google/go-containerregistry: v0.1.3
- github.com/gophercloud/gophercloud: v0.1.0
- github.com/jmespath/go-jmespath: v0.3.0
- github.com/pelletier/go-buffruneio: v0.2.0
- github.com/pquerna/cachecontrol: 0dec1b3
- github.com/remyoudompheng/bigfft: 52369c6
- github.com/rubiojr/go-vhd: 0bfd3b3
- github.com/satori/go.uuid: v1.2.0
- github.com/src-d/gcfg: v1.4.0
- github.com/vdemeester/k8s-pkg-credentialprovider: v1.17.4
- github.com/vmware/govmomi: v0.20.3
- go.etcd.io/etcd: 3cf2f69
- gonum.org/v1/gonum: 3d26580
- gonum.org/v1/netlib: 7672324
- gopkg.in/cheggaaa/pb.v1: v1.0.25
- gopkg.in/gcfg.v1: v1.2.0
- gopkg.in/natefinch/lumberjack.v2: v2.0.0
- gopkg.in/src-d/go-billy.v4: v4.3.2
- gopkg.in/src-d/go-git-fixtures.v3: v3.5.0
- gopkg.in/src-d/go-git.v4: v4.13.1
- k8s.io/apiserver: v0.17.4
- k8s.io/cloud-provider: v0.17.4
- k8s.io/csi-translation-lib: v0.17.4
- k8s.io/legacy-cloud-providers: v0.17.4
- modernc.org/cc: v1.0.0
- modernc.org/golex: v1.0.0
- modernc.org/mathutil: v1.0.0
- modernc.org/strutil: v1.0.0
- modernc.org/xc: v1.0.0
- sigs.k8s.io/k8s-container-image-promoter/pkg: v0.3.0
- sigs.k8s.io/structured-merge-diff/v3: v3.0.0
- sigs.k8s.io/structured-merge-diff: b1b620d
Changed
- cloud.google.com/go/storage: v1.11.0 → v1.12.0
- cloud.google.com/go: v0.65.0 → v0.66.0
- github.com/Azure/go-autorest/autorest/adal: v0.8.2 → v0.8.3
- github.com/Azure/go-autorest/autorest: v0.9.6 → v0.10.2
- github.com/alecthomas/template: fb15b89 → a0175ee
- github.com/alecthomas/units: c3de453 → 2efee85
- github.com/coreos/go-semver: v0.2.0 → v0.3.0
- github.com/go-kit/kit: v0.9.0 → v0.8.0
- github.com/go-sql-driver/mysql: v1.4.0 → v1.5.0
- github.com/google/pprof: 1a94d86 → acf8798
- github.com/grpc-ecosystem/go-grpc-middleware: v1.0.0 → f849b54
- github.com/grpc-ecosystem/grpc-gateway: v1.9.0 → v1.9.5
- github.com/hashicorp/golang-lru: v0.5.1 → v0.5.3
- github.com/matttproud/golang_protobuf_extensions: c182aff → v1.0.1
- github.com/moby/term: 672ec06 → 7f0af18
- github.com/munnerz/goautoneg: a547fc6 → a7dc8b6
- github.com/prometheus/client_golang: v1.7.1 → v1.1.0
- github.com/prometheus/client_model: v0.2.0 → 14fe0d1
- github.com/prometheus/common: v0.10.0 → v0.6.0
- github.com/prometheus/procfs: v0.1.3 → v0.0.3
- github.com/psampaz/go-mod-outdated: v0.6.0 → v0.7.0
- github.com/sendgrid/sendgrid-go: v3.6.3+incompatible → v3.6.4+incompatible
- github.com/sirupsen/logrus: v1.6.0 → v1.7.0
- golang.org/x/net: 62affa3 → 4acb6c0
- golang.org/x/time: 555d28b → 89c76fb
- golang.org/x/tools: 39188db → d647fc2
- google.golang.org/genproto: 0bd0a95 → 7abf4a1
- google.golang.org/grpc: v1.31.1 → v1.32.0
- honnef.co/go/tools: v0.0.1-2020.1.4 → v0.0.1-2020.1.5
- k8s.io/api: v0.19.2 → v0.18.8
- k8s.io/client-go: v0.19.2 → v0.18.8
- k8s.io/code-generator: v0.19.2 → v0.17.2
- k8s.io/component-base: v0.19.2 → v0.17.4
- k8s.io/gengo: 8167cfd → 3a45101
- k8s.io/klog/v2: v2.2.0 → v2.3.0
- k8s.io/klog: v0.3.0 → v1.0.0
Removed
- github.com/MakeNowJust/heredoc: bb23615
- github.com/cespare/xxhash/v2: v2.1.1
- github.com/chai2010/gettext-go: c6fed77
- github.com/daviddengcn/go-colortext: 511bcaf
- github.com/exponent-io/jsonpath: d6023ce
- github.com/fatih/camelcase: v1.0.0
- github.com/golangplus/bytes: 45c989f
- github.com/golangplus/fmt: 2a5d6d7
- github.com/golangplus/testing: af21d9c
- github.com/liggitt/tabwriter: 89fcab3
- github.com/lithammer/dedent: v1.1.0
- github.com/mitchellh/go-wordwrap: v1.0.0
- k8s.io/cli-runtime: v0.19.2
- k8s.io/kubectl: v0.19.2
- k8s.io/metrics: v0.19.2
- sigs.k8s.io/kustomize: v2.0.3+incompatible