Commit Graph

2393 Commits (52504b548dd63d249f7ebceebc6a8c9ab95b4a66)

Author SHA1 Message Date
Zadkiel 52504b548d
fix typo in item_hook_handler (#3361)
Signed-off-by: GitHub <noreply@github.com>
2021-02-18 13:32:32 -05:00
Bridget McErlean 9dbd238c89
Use controller-runtime client to get restic secrets (#3320)
* Use kubebuilder client for fetching restic secrets

Instead of using a SecretInformer for fetching secrets for restic, use
the cached client provided by the controller-runtime manager.

In order to use this client, the scheme for Secrets must be added to the
scheme used by the manager so this is added when creating the manager in
both the velero and restic servers.

This change also refactors some of the tests to add a shared utility for
creating a fake controller-runtime client which is now used among all
tests which use that client. This has been added to ensure that all
tests use the same client with the same scheme.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Add builder for SecretKeySelector

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-18 10:30:52 -08:00
codegold79 6bdd4ac192
Restore API group version by priority (#3133)
* Restore API group version by priority

Signed-off-by: F. Gold <fgold@vmware.com>

* Add changelog

Signed-off-by: F. Gold <fgold@vmware.com>

* Correct spelling

Signed-off-by: F. Gold <fgold@vmware.com>

* Refactor userResourceGroupVersionPriorities(...) to accept config map, adjust unit test

Signed-off-by: F. Gold <fgold@vmware.com>

* Move some unit tests into e2e

Signed-off-by: F. Gold <fgold@vmware.com>

* Add three e2e tests using Testify Suites

Summary of changes

Makefile - add testify e2e test target
go.sum - changed with go mod tidy
pkg/install/install.go - increased polling timeout
test/e2e/restore_priority_group_test.go - deleted
test/e2e/restore_test.go - deleted
test/e2e/velero_utils.go - made restic optional in velero install
test/e2e_testify/Makefile - makefile for testify e2e tests
test/e2e_testify/README.md - example command for running tests
test/e2e_testify/common_test.go - helper functions
test/e2e_testify/e2e_suite_test.go - prepare for tests and run
test/e2e_testify/restore_priority_apigv_test.go - test cases

Signed-off-by: F. Gold <fgold@vmware.com>

* Make changes per @nrb code review

Signed-off-by: F. Gold <fgold@vmware.com>

* Wait for pods in e2e tests

Signed-off-by: F. Gold <fgold@vmware.com>

* Remove testify suites e2e scaffolding moved to PR #3354

Signed-off-by: F. Gold <fgold@vmware.com>

* Make changes per @brito-rafa and Velero maintainers code reviews

- Made changes suggested by @brito-rafa in GitHub.
- We had a code review meeting with @carlisia, @dsu-igeek, @zubron, and @nrb
- and changes were made based on their suggetions:
  - pull in logic from 'meetsAPIGVResotreReqs()' to restore.go.
  - add TODO to remove APIGroupVersionFeatureFlag check
  - have feature flag and backup version format checks in separate `if` statements.
  - rename variables to be sourceGVs, targetGVs, and userGVs.

Signed-off-by: F. Gold <fgold@vmware.com>

* Convert Testify Suites e2e tests to existing Ginkgo framework

Signed-off-by: F. Gold <fgold@vmware.com>

* Made changes per @zubron PR review

Signed-off-by: F. Gold <fgold@vmware.com>

* Run go mod tidy after resolving go.sum merge conflict

Signed-off-by: F. Gold <fgold@vmware.com>

* Add feature documentation to velero.io site

Signed-off-by: F. Gold <fgold@vmware.com>

* Add config map e2e test; rename e2e test file and name

Signed-off-by: F. Gold <fgold@vmware.com>

* Update go.{mod,sum} files

Signed-off-by: F. Gold <fgold@vmware.com>

* Move CRDs and CRs to testdata folder

Signed-off-by: F. Gold <fgold@vmware.com>

* Fix typos in cert-manager to pass codespell CICD check

Signed-off-by: F. Gold <fgold@vmware.com>

* Make changes per @nrb code review round 2

- make checkAndReadDir function private
- add info level messages when priorties 1-3 API group versions can not be used

Signed-off-by: F. Gold <fgold@vmware.com>

* Make user config map rules less strict

Signed-off-by: F. Gold <fgold@vmware.com>

* Update e2e test image version in example

Signed-off-by: F. Gold <fgold@vmware.com>

* Update case A music-system controller code

Signed-off-by: F. Gold <fgold@vmware.com>

* Documentation updates

Signed-off-by: F. Gold <fgold@vmware.com>

* Update migration case documentation

Signed-off-by: F. Gold <fgold@vmware.com>
2021-02-16 12:36:17 -05:00
Nolan Brubaker 2c6adab903
Document design doc template (#3443)
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-11 12:46:12 -08:00
Nolan Brubaker 09d59aa8ee
Really fix the Github pull request template (#3444)
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-11 15:36:22 -05:00
JenTing Hsiao a460caae13
Merge pull request #3446 from nrb/fix-CAPI-panic 2021-02-11 11:25:21 +08:00
codegold79 6455350940
Use label to select Velero deployment in plugin cmd (#3447)
* Use label to select Velero deployment in plugin cmd

Signed-off-by: F. Gold <fgold@vmware.com>

* Move veleroLabel constant closer to usage

Signed-off-by: F. Gold <fgold@vmware.com>

* Add changelog

Signed-off-by: F. Gold <fgold@vmware.com>

* Remove year from copyright in new file

Signed-off-by: F. Gold <fgold@vmware.com>

* Export and use install.Labels() function

Signed-off-by: F. Gold <fgold@vmware.com>
2021-02-10 20:42:04 -05:00
Nolan Brubaker 502fb8d7be
Remove pull request processing from prow action (#3445)
The prow action does not support running commands except for /lgtm in
PRs.

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-10 17:00:09 -05:00
Nolan Brubaker 8bb1b12c2f Add changelog
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-10 14:28:43 -05:00
Nolan Brubaker 64667ee704 Restore CAPI cluster objects in a better order
Restoring CAPI workload clusters without this ordering caused the
capi-controller-manager code to panic, resulting in an unhealthy cluster
state.

This can be worked around
(https://community.pivotal.io/s/article/5000e00001pJyN41611954332537?language=en_US),
but we provide the inclusion of these resources as a default in order to
provide a better out-of-the-box experience.

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-10 14:23:06 -05:00
Bridget McErlean 2a4586ba08
Use correct suffix for Labeler config file (#3441)
The labeler action was failing as it was looking for
`.github/labels.yaml` but the file has the suffix `.yml`. This change
fixes the path used by the labeler action.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-10 12:58:17 -05:00
JenTing Hsiao 3070feaeb2
Merge pull request #3409 from nrb/add-credentials-to-vsls
Add credentials to VSLs
2021-02-10 09:07:41 +08:00
JenTing Hsiao 7a2fea07ca
Merge pull request #3190 from carlisia/c-bsl-credential
Add credential field to the bsl
2021-02-10 09:00:27 +08:00
JenTing Hsiao 2c14f25f48
Merge pull request #3435 from nrb/unify-labels
Unify labels across GitHub Actions
2021-02-10 08:16:48 +08:00
JenTing Hsiao 2f55f520ee
Merge pull request #3436 from nrb/add-pr-template 2021-02-10 08:06:52 +08:00
JenTing Hsiao 124c618a0b
Merge pull request #3437 from nrb/prow-on-prs 2021-02-10 08:04:38 +08:00
JenTing Hsiao fe8aea3f81
Merge pull request #3439 from nrb/pin-labeler 2021-02-10 08:03:30 +08:00
Nolan Brubaker 0be45888d6 Pin version of labeler action
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 16:36:50 -05:00
Carlisia 930508be60 Better validation
Signed-off-by: Carlisia <carlisia@vmware.com>
2021-02-09 13:18:45 -08:00
Carlisia b7c2f2d7ed Better help messages and validation check
Signed-off-by: Carlisia <carlisia@vmware.com>
2021-02-09 13:18:45 -08:00
Carlisia 60cbac1e9f Fix typo
Signed-off-by: Carlisia <carlisia@vmware.com>
2021-02-09 13:17:49 -08:00
Carlisia 4b2aae308c Add changelog
Signed-off-by: Carlisia <carlisia@vmware.com>
2021-02-09 13:11:12 -08:00
Carlisia 9dbb8b6906 Add credential field to the bsl
Signed-off-by: Carlisia <carlisia@vmware.com>
2021-02-09 13:11:11 -08:00
Nolan Brubaker f57b934420 Enable Prow commands when opening or readying PRs
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 14:17:50 -05:00
Nolan Brubaker 9caba99f69 Correct PR template file name
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 14:06:13 -05:00
Nolan Brubaker 4c01494abc Unify labels across GitHub Actions
The prow-action plugin will pre-pend `area` or `kind` to labels, so
unify them into a common format.

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 14:00:23 -05:00
Nolan Brubaker 2a234a75bb
Update version of prow-action (#3434)
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 13:51:22 -05:00
Mikael Manukyan 36fc42761b
Add colors to describe command (#3275)
* Add colors to describe command

* Add colors to describe backups/restore/schedules commands
* Make name in the output bold
* Disable colors via `--colorized` flag or if velero isn't in TTY

Co-authored-by: Clay Kauzlaric <ckauzlaric@vmware.com>
Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>
Signed-off-by: Mikael Manukyan <mmanukyan@vmware.com>

* Add changelog
* and run make update

Co-authored-by: Mikael Manukyan <mmanukyan@vmware.com>
Signed-off-by: Mikael Manukyan <mmanukyan@vmware.com>
Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>

* Add colorized to the client config file

Co-authored-by: Mikael Manukyan <mmanukyan@vmware.com>
Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>
Co-authored-by: Mikael Manukyan <mmanukyan@vmware.com>

* allow client config to use string values

* the command `velero client config set colorized=false` writes a string
value of "false" into the config. This change allows that string to be
accepted and converted into a boolean when used in program.

Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>

* Add docs about colored CLI output

Co-authored-by: Mikael Manukyan <mmanukyan@vmware.com>
Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>

* Update site/content/docs/main/customize-installation.md

Co-authored-by: JenTing Hsiao <jenting.hsiao@suse.com>
Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>

* docs: remove comma

* as per @carlisia 's suggestion

Signed-off-by: Clay Kauzlaric <ckauzlaric@vmware.com>

Co-authored-by: Clay Kauzlaric <ckauzlaric@vmware.com>
Co-authored-by: Clay Kauzlaric <clay.kauzlaric@gmail.com>
Co-authored-by: JenTing Hsiao <jenting.hsiao@suse.com>
2021-02-09 08:39:41 -08:00
Nolan Brubaker 5940a47789
Enable automatic labeling of PRs via Actions (#3431)
* Automatically label PRs based on the file paths

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Enable prow-like commands

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Require filling in the PR template

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Update contributor docs to reference PR template

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Expand checklist and ask for issue number on PRs

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Document why we're not enabling /lgtm yet

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>

* Combine PR assignment and labeling workflow

Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-09 10:12:48 -05:00
Nolan Brubaker fc152e6dcb
Close issues after 35 total days of inactivity. (#3427)
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-08 16:02:53 -05:00
Bridget McErlean 3286834a90
Download restic binary using curl (#3421)
With #3327, the restic binary for the Tilt Velero image is downloaded on
the local machine using the `./hack/download-restic.sh` script. This
script relies on `wget` being availabe on the local machine. `wget` is
not commonly available on macOS but `curl` is. This change modifies the
`./hack/download-restic.sh` script to use `curl` instead as it is
available on both Linux and macOS and is available in our `golang`
docker build image.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-08 10:31:20 -08:00
JenTing Hsiao e115949d9b
feat: support set BackupStorageLocation(BSL) CA certificate (#3167)
* Rename --cacert-file to --cacert in the CLI design doc

Signed-off-by: JenTing Hsiao <jenting.hsiao@suse.com>

* Add a new flag --cacert under `velero backup-location set`

Signed-off-by: JenTing Hsiao <jenting.hsiao@suse.com>

* Add changelog

Signed-off-by: JenTing Hsiao <jenting.hsiao@suse.com>

* Changelog rewording

Signed-off-by: JenTing Hsiao <jenting.hsiao@suse.com>

* Revert CLI design doc

Signed-off-by: JenTing Hsiao <jenting.hsiao@suse.com>
2021-02-08 13:28:47 -05:00
Taeuk Kim 529e05d6b2
Modify InitContainer checking function that potentially incurs error (#3198)
Signed-off-by: Taeuk Kim <taeuk_kim@tmax.co.kr>
2021-02-08 13:26:56 -05:00
Nolan Brubaker e0ccc9942c Instantiate the flag map on set
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-08 13:07:20 -05:00
Bridget McErlean 38c08e087b
Replace NewObjectBackupStore with interface (#3329)
In preparation for modifying the instantiation of `BackupStores` to be
able to load credentials, change the function `NewObjectBackupStore` to
be an interface that is passed in to all controllers.

Previously, the function to get a new backup store was configurable but
for many controllers was fixed to use `NewObjectBackupStore`. This
change introduces an interface for getting the backup store and wraps
the functionality from `NewObjectBackupStore` in a type which implements
this interface. This will allow more flexibility when introducing
credentials for a specific backup store as it will allow us to create a
new `ObjectBackupStoreGetter` type which can be configured to add
credentials config when creating the ObjectBackupStore without needing
to change the API used by the controllers.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-08 13:04:08 -05:00
Bridget McErlean 65c16a1d00
Download restic binary outside container (#3327)
In #3310, the Dockerfile for the Tilt Velero container was modified to
call the `./hack/download-restic.sh` script. A side effect of this
change was that the context for the docker build was much larger as it
was the root of the Velero repo, rather than just the `_tiltbuild`
directory. With the frequent rebuilds of the image that happen when
using Tilt, a large amounts of disk space was being consumed by the
different layers of images builds in the Docker overlay filesystem (as
diffs could include the `.go` directory which can be several GBs).

This change modifies the `download-restic.sh` script to allow the output
directory for the restic binary to be configured. This means that the
script can be called directly from the Tiltfile and can be managed
outside the container build. This allows us to restore the previous
`_tiltbuild` context. It also speeds up image builds as we can download
restic once and use it for all builds rather than redownloading
frequently.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-08 09:42:15 -08:00
David L. Smith-Uchida 4823f49198
Merge pull request #3408 from a-mccarthy/remove-faqs
remove FAQ pages
2021-02-06 18:47:55 -08:00
Nolan Brubaker e5d83197f6 Add changelog entry
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-05 14:00:09 -05:00
Nolan Brubaker 328ba8228b Add snapshot-location set command
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-05 13:54:08 -05:00
Nolan Brubaker c7bbb9870d Add credential arg to snapshot-location create
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-05 13:40:33 -05:00
Nolan Brubaker 31e4cc0e3b Add credential field to VolumeSnapshotLocation
Signed-off-by: Nolan Brubaker <brubakern@vmware.com>
2021-02-05 13:40:08 -05:00
Carlisia Thompson 23ebf00999
Proposal for handling multiple credential secrets (#2403)
* Proposal for handling multiple credential secrets

Signed-off-by: Carlisia <carlisia@vmware.com>

* Update mulitple credentials design

The changes here are based on [this comment](https://github.com/vmware-tanzu/velero/pull/2403#issuecomment-728132546)
and a discussion with @carlisia.

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Update multiple credentials design doc

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Clarify points around node-based auth

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Add more details around setting env vars

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Fix spelling

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Update design to detail selected approach

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Add title for design doc

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

* Remove usage of AIM

Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>

Co-authored-by: Bridget McErlean <bmcerlean@vmware.com>
2021-02-05 13:15:38 -05:00
Abigail McCarthy f31c1f4921 remove FAQ pages
Signed-off-by: Abigail McCarthy <mabigail@vmware.com>
2021-02-05 12:48:55 -05:00
David L. Smith-Uchida 1fd49f4fd6
Added information about minimum space required for Minio install. (#3393)
https://github.com/vmware-tanzu/velero/issues/3108

Signed-off-by: Dave Smith-Uchida <dsmithuchida@vmware.com>
2021-02-02 05:24:01 -08:00
Madhav Jivrajani 75fd5a187d
Update docs for running velero locally (#3363)
* add documentation for running velero locally, specifically for --plugin-dir flag requireing binary to be present locally

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>

* add changelog

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>

* remove changelog

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2021-02-01 09:52:04 -05:00
JenTing Hsiao e258ec65c5
Merge pull request #3360 from zubron/reword-message-in-issue-template
Reword message for Q&A issue template
2021-01-29 09:10:16 +08:00
Abigail McCarthy 9d19f87706
Remove references to zenhub (#3357)
Signed-off-by: Abigail McCarthy <mabigail@vmware.com>
2021-01-28 14:21:28 -05:00
Bridget McErlean 3e7857b474 Reword message for Q&A issue template
Signed-off-by: Bridget McErlean <bmcerlean@vmware.com>
2021-01-28 11:51:33 -05:00
steve_chph a8ef1a65ff
Fix typo (#3352)
Signed-off-by: peihongchen <171250610@smail.nju.edu.cn>
2021-01-27 08:59:23 -05:00
JenTing Hsiao e4b6f947f8
Merge pull request #3202 from georgettica/georgettica/bump-external-snapshotter-version
Georgettica/bump external snapshotter version (fixes #2966)
2021-01-27 06:56:53 +08:00