From ba7f8d2e62aa226af008847754c5a45661313ea7 Mon Sep 17 00:00:00 2001 From: Steve Kriss Date: Fri, 28 Feb 2020 09:20:02 -0700 Subject: [PATCH] v1.3.0 changelog Signed-off-by: Steve Kriss --- CHANGELOG.md | 4 +- changelogs/CHANGELOG-1.3.md | 80 ++++++++++++------------ changelogs/unreleased/1768-prajyot-parab | 1 - changelogs/unreleased/1937-nrb | 1 - changelogs/unreleased/1999-cognoz | 1 - changelogs/unreleased/2057-skriss | 1 - changelogs/unreleased/2068-skriss | 1 - changelogs/unreleased/2075-skriss | 1 - changelogs/unreleased/2096-dinesh | 1 - changelogs/unreleased/2118-skriss | 1 - changelogs/unreleased/2120-skriss | 1 - changelogs/unreleased/2157-skriss | 1 - changelogs/unreleased/2187-jenting | 1 - changelogs/unreleased/2196-skriss | 1 - changelogs/unreleased/2197-nrb | 1 - changelogs/unreleased/2200-sseago | 1 - changelogs/unreleased/2201-skriss | 1 - changelogs/unreleased/2209-markrity | 1 - changelogs/unreleased/2210-Sh4d1 | 1 - changelogs/unreleased/2216-mynktl | 1 - changelogs/unreleased/2218-cpanato | 1 - changelogs/unreleased/2227-shaneutt | 1 - changelogs/unreleased/2230-skriss | 1 - changelogs/unreleased/2244-jenting | 1 - changelogs/unreleased/2264-nrb | 1 - changelogs/unreleased/2292-RushinthJohn | 1 - 26 files changed, 42 insertions(+), 66 deletions(-) delete mode 100644 changelogs/unreleased/1768-prajyot-parab delete mode 100644 changelogs/unreleased/1937-nrb delete mode 100644 changelogs/unreleased/1999-cognoz delete mode 100644 changelogs/unreleased/2057-skriss delete mode 100644 changelogs/unreleased/2068-skriss delete mode 100644 changelogs/unreleased/2075-skriss delete mode 100644 changelogs/unreleased/2096-dinesh delete mode 100644 changelogs/unreleased/2118-skriss delete mode 100644 changelogs/unreleased/2120-skriss delete mode 100644 changelogs/unreleased/2157-skriss delete mode 100644 changelogs/unreleased/2187-jenting delete mode 100644 changelogs/unreleased/2196-skriss delete mode 100644 changelogs/unreleased/2197-nrb delete mode 100644 changelogs/unreleased/2200-sseago delete mode 100644 changelogs/unreleased/2201-skriss delete mode 100644 changelogs/unreleased/2209-markrity delete mode 100644 changelogs/unreleased/2210-Sh4d1 delete mode 100644 changelogs/unreleased/2216-mynktl delete mode 100644 changelogs/unreleased/2218-cpanato delete mode 100644 changelogs/unreleased/2227-shaneutt delete mode 100644 changelogs/unreleased/2230-skriss delete mode 100644 changelogs/unreleased/2244-jenting delete mode 100644 changelogs/unreleased/2264-nrb delete mode 100644 changelogs/unreleased/2292-RushinthJohn diff --git a/CHANGELOG.md b/CHANGELOG.md index d61051686..9a6307c94 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,11 @@ ## Current release: - * [CHANGELOG-1.2.md][12] + * [CHANGELOG-1.3.md][13] ## Development release: - * [CHANGELOG-1.3.md][13] * [Unreleased Changes][0] ## Older releases: + * [CHANGELOG-1.2.md][12] * [CHANGELOG-1.1.md][11] * [CHANGELOG-1.0.md][10] * [CHANGELOG-0.11.md][9] diff --git a/changelogs/CHANGELOG-1.3.md b/changelogs/CHANGELOG-1.3.md index b8cb7ec56..6fe2ef646 100644 --- a/changelogs/CHANGELOG-1.3.md +++ b/changelogs/CHANGELOG-1.3.md @@ -1,58 +1,58 @@ -## v1.3.0-beta.2 -#### 2020-02-24 +## v1.3.0 +#### 2020-03-02 ### Download -https://github.com/vmware-tanzu/velero/releases/tag/v1.3.0-beta.2 +https://github.com/vmware-tanzu/velero/releases/tag/v1.3.0 ### Container Image -`velero/velero:v1.3.0-beta.2` +`velero/velero:v1.3.0` ### Documentation -https://velero.io/docs/v1.3.0-beta.2/ +https://velero.io/docs/v1.3.0/ ### Upgrading -```bash -kubectl set image \ - --namespace velero \ - deployment/velero velero=velero/velero:v1.3.0-beta.2 +https://velero.io/docs/v1.3.0/upgrade-to-1.3/ + +### Highlights + +#### Custom Resource Definition Backup and Restore Improvements + +This release includes a number of related bug fixes and improvements to how Velero backs up and restores custom resource definitions (CRDs) and instances of those CRDs. + +We found and fixed three issues around restoring CRDs that were originally created via the `v1beta1` CRD API. The first issue affected CRDs that had the `PreserveUnknownFields` field set to `true`. These CRDs could not be restored into 1.16+ Kubernetes clusters, because the `v1` CRD API does not allow this field to be set to `true`. We added code to the restore process to check for this scenario, to set the `PreserveUnknownFields` field to `false`, and to instead set `x-kubernetes-preserve-unknown-fields` to `true` in the OpenAPIv3 structural schema, per Kubernetes guidance. For more information on this, see the [Kubernetes documentation](https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/#pruning-versus-preserving-unknown-fields). The second issue affected CRDs without structural schemas. These CRDs need to be backed up/restored through the `v1beta1` API, since all CRDs created through the `v1` API must have structural schemas. We added code to detect these CRDs and always back them up/restore them through the `v1beta1` API. Finally, related to the previous issue, we found that our restore code was unable to handle backups with multiple API versions for a given resource type, and we’ve remediated this as well. + +We also improved the CRD restore process to enable users to properly restore CRDs and instances of those CRDs in a single restore operation. Previously, users found that they needed to run two separate restores: one to restore the CRD(s), and another to restore instances of the CRD(s). This was due to two deficiencies in the Velero code. First, Velero did not wait for a CRD to be fully accepted by the Kubernetes API server and ready for serving before moving on; and second, Velero did not refresh its cached list of available APIs in the target cluster after restoring CRDs, so it was not aware that it could restore instances of those CRDs. + +We fixed both of these issues by (1) adding code to wait for CRDs to be “ready” after restore before moving on, and (2) refreshing the cached list of APIs after restoring CRDs, so any instances of newly-restored CRDs could subsequently be restored. + +With all of these fixes and improvements in place, we hope that the CRD backup and restore experience is now seamless across all supported versions of Kubernetes. + + +#### Multi-Arch Docker Images + +Thanks to community members [@Prajyot-Parab](https://github.com/Prajyot-Parab) and [@shaneutt](https://github.com/shaneutt), Velero now provides multi-arch container images by using Docker manifest lists. We are currently publishing images for `linux/amd64`, `linux/arm64`, `linux/arm`, and `linux/ppc64le` in [our Docker repository](https://hub.docker.com/r/velero/velero/tags?page=1&name=v1.3&ordering=last_updated). + +Users don’t need to change anything other than updating their version tag - the v1.3 image is `velero/velero:v1.3.0`, and Docker will automatically pull the proper architecture for the host. + +For more information on manifest lists, see [Docker’s documentation](https://docs.docker.com/registry/spec/manifest-v2-2/). + + +#### Bug Fixes, Usability Enhancements, and More + +We fixed a large number of bugs and made some smaller usability improvements in this release. Here are a few highlights: + +- Support private registries with custom ports for the restic restore helper image ([PR #1999](https://github.com/vmware-tanzu/velero/pull/1999), [@cognoz](https://github.com/cognoz)) +- Use AWS profile from BackupStorageLocation when invoking restic ([PR #2096](https://github.com/vmware-tanzu/velero/pull/2096), [@dinesh](https://github.com/dinesh)) +- Allow restores from schedules in other clusters ([PR #2218](https://github.com/vmware-tanzu/velero/pull/2218), [@cpanato](https://github.com/cpanato)) +- Fix memory leak & race condition in restore code ([PR #2201](https://github.com/vmware-tanzu/velero/pull/2201), [@skriss](https://github.com/skriss)) -# if using restic: -kubectl set image \ - --namespace velero \ - daemonset/restic restic=velero/velero:v1.3.0-beta.2 -``` ### All Changes + * Corrected the selfLink for Backup CR in site/docs/master/output-file-format.md (#2292, @RushinthJohn) * Back up schema-less CustomResourceDefinitions as v1beta1, even if they are retrieved via the v1 endpoint. (#2264, @nrb) * Bug fix: restic backup volume snapshot to the second location failed (#2244, @jenting) * Added support of using PV name from volumesnapshotter('SetVolumeID') in case of PV renaming during the restore (#2216, @mynktl) * Replaced deprecated helm repo url at all it appearance at docs. (#2209, @markrity) - -## v1.3.0-beta.1 -#### 2020-02-04 - -### Download -https://github.com/vmware-tanzu/velero/releases/tag/v1.3.0-beta.1 - -### Container Image -`velero/velero:v1.3.0-beta.1` - -### Documentation -https://velero.io/docs/v1.3.0-beta.1/ - -### Upgrading -```bash -kubectl set image \ - --namespace velero \ - deployment/velero velero=velero/velero:v1.3.0-beta.1 - -# if using restic: -kubectl set image \ - --namespace velero \ - daemonset/restic restic=velero/velero:v1.3.0-beta.1 -``` - -### All Changes * added support for arm and arm64 images (#2227, @shaneutt) * when restoring from a schedule, validate by checking for backup(s) labeled with the schedule name rather than existence of the schedule itself, to allow for restoring from deleted schedules and schedules in other clusters (#2218, @cpanato) * bug fix: back up server-preferred version of CRDs rather than always the `v1beta1` version (#2230, @skriss) diff --git a/changelogs/unreleased/1768-prajyot-parab b/changelogs/unreleased/1768-prajyot-parab deleted file mode 100644 index 4c9e94290..000000000 --- a/changelogs/unreleased/1768-prajyot-parab +++ /dev/null @@ -1 +0,0 @@ -added support for ppc64le images and manifest lists diff --git a/changelogs/unreleased/1937-nrb b/changelogs/unreleased/1937-nrb deleted file mode 100644 index 85f0d9af5..000000000 --- a/changelogs/unreleased/1937-nrb +++ /dev/null @@ -1 +0,0 @@ -Wait for CustomResourceDefinitions to be ready before restoring CustomResources. Also refresh the resource list from the Kubernetes API server after restoring CRDs in order to properly restore CRs. diff --git a/changelogs/unreleased/1999-cognoz b/changelogs/unreleased/1999-cognoz deleted file mode 100644 index 602b08621..000000000 --- a/changelogs/unreleased/1999-cognoz +++ /dev/null @@ -1 +0,0 @@ -add support for a private registry with a custom port in a restic-helper image diff --git a/changelogs/unreleased/2057-skriss b/changelogs/unreleased/2057-skriss deleted file mode 100644 index a2d82aa1a..000000000 --- a/changelogs/unreleased/2057-skriss +++ /dev/null @@ -1 +0,0 @@ -return better error message to user when cluster config can't be found via `--kubeconfig`, `$KUBECONFIG`, or in-cluster config diff --git a/changelogs/unreleased/2068-skriss b/changelogs/unreleased/2068-skriss deleted file mode 100644 index e5b52239a..000000000 --- a/changelogs/unreleased/2068-skriss +++ /dev/null @@ -1 +0,0 @@ -remove the `fsfreeze-pause` image being published from this repo; replace it with `ubuntu:bionic` in the nginx example app diff --git a/changelogs/unreleased/2075-skriss b/changelogs/unreleased/2075-skriss deleted file mode 100644 index 760281af5..000000000 --- a/changelogs/unreleased/2075-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: deep-copy backup's labels when constructing snapshot tags, so the PV name isn't added as a label to the backup diff --git a/changelogs/unreleased/2096-dinesh b/changelogs/unreleased/2096-dinesh deleted file mode 100644 index 3e9b9c3d8..000000000 --- a/changelogs/unreleased/2096-dinesh +++ /dev/null @@ -1 +0,0 @@ -Enableing Velero to switch credentials (`AWS_PROFILE`) if multiple s3-compatible backupLocations are present \ No newline at end of file diff --git a/changelogs/unreleased/2118-skriss b/changelogs/unreleased/2118-skriss deleted file mode 100644 index 34e8dc08f..000000000 --- a/changelogs/unreleased/2118-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: don't restore cluster-scoped resources when restoring specific namespaces and IncludeClusterResources is nil diff --git a/changelogs/unreleased/2120-skriss b/changelogs/unreleased/2120-skriss deleted file mode 100644 index cb103f39f..000000000 --- a/changelogs/unreleased/2120-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: restore both `replicasets.apps` *and* `replicasets.extensions` before `deployments` diff --git a/changelogs/unreleased/2157-skriss b/changelogs/unreleased/2157-skriss deleted file mode 100644 index c1893578e..000000000 --- a/changelogs/unreleased/2157-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: only prioritize restoring `replicasets.apps`, not `replicasets.extensions` diff --git a/changelogs/unreleased/2187-jenting b/changelogs/unreleased/2187-jenting deleted file mode 100644 index d1ce3a614..000000000 --- a/changelogs/unreleased/2187-jenting +++ /dev/null @@ -1 +0,0 @@ -Enable pruning unknown CRD fields diff --git a/changelogs/unreleased/2196-skriss b/changelogs/unreleased/2196-skriss deleted file mode 100644 index 14a301d16..000000000 --- a/changelogs/unreleased/2196-skriss +++ /dev/null @@ -1 +0,0 @@ -repopulate backup_last_successful_timestamp metrics for each schedule after server restart diff --git a/changelogs/unreleased/2197-nrb b/changelogs/unreleased/2197-nrb deleted file mode 100644 index faee82c5b..000000000 --- a/changelogs/unreleased/2197-nrb +++ /dev/null @@ -1 +0,0 @@ -When restoring a v1 CRD with PreserveUnknownFields = True, make sure that the preservation behavior is maintained by copying the flag into the Open API V3 schema, but update the flag so as to allow the Kubernetes API server to accept the CRD without error. diff --git a/changelogs/unreleased/2200-sseago b/changelogs/unreleased/2200-sseago deleted file mode 100644 index 5b3569d89..000000000 --- a/changelogs/unreleased/2200-sseago +++ /dev/null @@ -1 +0,0 @@ -Bug fix: Check for nil LastMaintenanceTime in ResticRepository dueForMaintenance diff --git a/changelogs/unreleased/2201-skriss b/changelogs/unreleased/2201-skriss deleted file mode 100644 index 82c120e61..000000000 --- a/changelogs/unreleased/2201-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: fix race condition resulting in restores sometimes succeeding despite restic restore failures diff --git a/changelogs/unreleased/2209-markrity b/changelogs/unreleased/2209-markrity deleted file mode 100644 index 926663434..000000000 --- a/changelogs/unreleased/2209-markrity +++ /dev/null @@ -1 +0,0 @@ -Replaced deprecated helm repo url at all it appearance at docs. \ No newline at end of file diff --git a/changelogs/unreleased/2210-Sh4d1 b/changelogs/unreleased/2210-Sh4d1 deleted file mode 100644 index d731bb534..000000000 --- a/changelogs/unreleased/2210-Sh4d1 +++ /dev/null @@ -1 +0,0 @@ -bump restic to 0.9.6 to fix some issues with non AWS standard regions diff --git a/changelogs/unreleased/2216-mynktl b/changelogs/unreleased/2216-mynktl deleted file mode 100644 index 92e1162cc..000000000 --- a/changelogs/unreleased/2216-mynktl +++ /dev/null @@ -1 +0,0 @@ -Added support of using PV name from volumesnapshotter('SetVolumeID') in case of PV renaming during the restore diff --git a/changelogs/unreleased/2218-cpanato b/changelogs/unreleased/2218-cpanato deleted file mode 100644 index eb3001f70..000000000 --- a/changelogs/unreleased/2218-cpanato +++ /dev/null @@ -1 +0,0 @@ -remove the schedule validation and instead of checking the schedule because we might be in another cluster we check if a backup exist with the schedule name. \ No newline at end of file diff --git a/changelogs/unreleased/2227-shaneutt b/changelogs/unreleased/2227-shaneutt deleted file mode 100644 index 2813bae52..000000000 --- a/changelogs/unreleased/2227-shaneutt +++ /dev/null @@ -1 +0,0 @@ -added support for arm and arm64 images diff --git a/changelogs/unreleased/2230-skriss b/changelogs/unreleased/2230-skriss deleted file mode 100644 index f253d104c..000000000 --- a/changelogs/unreleased/2230-skriss +++ /dev/null @@ -1 +0,0 @@ -bug fix: back up server-preferred version of CRDs rather than always the `v1beta1` version diff --git a/changelogs/unreleased/2244-jenting b/changelogs/unreleased/2244-jenting deleted file mode 100644 index c5f8391ac..000000000 --- a/changelogs/unreleased/2244-jenting +++ /dev/null @@ -1 +0,0 @@ -Bug fix: restic backup volume snapshot to the second location failed diff --git a/changelogs/unreleased/2264-nrb b/changelogs/unreleased/2264-nrb deleted file mode 100644 index 6e47db20e..000000000 --- a/changelogs/unreleased/2264-nrb +++ /dev/null @@ -1 +0,0 @@ -Back up schema-less CustomResourceDefinitions as v1beta1, even if they are retrieved via the v1 endpoint. diff --git a/changelogs/unreleased/2292-RushinthJohn b/changelogs/unreleased/2292-RushinthJohn deleted file mode 100644 index af7e5b62d..000000000 --- a/changelogs/unreleased/2292-RushinthJohn +++ /dev/null @@ -1 +0,0 @@ -Corrected the selfLink for Backup CR in site/docs/master/output-file-format.md