Commit Graph
218 Commits
Author SHA1 Message Date
Lyndon-Li f22fde0bcc pin patch version for golang and base image
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2026-11-06 13:06:01 +08:00
Tiger Kaovilai 6ed67c01a0 Add Dependabot updates for run-jammy-tiny on supported release branches (#10692)
* Add Dependabot docker updates for run-jammy-tiny on supported release branches

The runtime base image is pinned on each release branch and was only
bumped by hand during CVE patch releases, so it goes stale between
releases (release-1.18 pinned 0.2.177, release-1.17 pins 0.2.90).

Add docker ecosystem entries targeting the supported release branches
(the current minor and N-1), limited to the paketobuildpacks/run-jammy-tiny
image and to patch updates.

Dependabot cannot compute target-branch, so add
hack/update-dependabot-release-branches.sh, which regenerates those
entries from the two newest minors with a GA vX.Y.0 tag, and a workflow
that runs it when a release is published (plus weekly and on demand) and
opens a pull request if dependabot.yml changed. Pre-release tags do not
count, so release-1.19 is only picked up once 1.19.0 is out.

Related to https://github.com/velero-io/velero/issues/10681

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>

* Address review feedback on Dependabot release-branch automation

- Replace head with sed in the tag pipeline: with pipefail set, head
  closing early can SIGPIPE the upstream sort and fail the script.
- Allow minor version updates for the runtime base image (only
  semver-major stays ignored), per Paketo's stack bump policy:
  minors are maintainer-selected feature additions that should
  surface as PRs for review. Regenerated dependabot.yml.
- Update development.md wording to match (patch or minor).

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>

* Scope Dependabot automation workflow commit to dependabot.yml

Commit only .github/dependabot.yml instead of all modified files when the automation workflow pushes its branch.

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>

---------

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
2026-11-05 09:56:18 +07:00
Xun Jiang/Bruce Jiang 8eaef0e9b8 Fix image vulnerabilities and bump Go to 1.27 (#10781)
* Update Go dependencies to address main image vulnerabilities
* Bump Go build version to 1.27
* Align Tilt helper image with Go 1.27 trixie
* Align Go tooling with Go 1.27
* Resolve retry deprecation findings from updated staticcheck
* Use explicit retry interval while waiting for target PVC

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-11-04 15:30:04 +08:00
KrishhnaT 3a408a24be e2e: add a target that runs the tests on a kind cluster it creates (#10652)
* e2e: add a target that runs the tests on a kind cluster it creates

Running the e2e tests locally means assembling a cluster, an object
store with two buckets, a credentials file, an address the cluster can
reach MinIO on, and a Velero image built and loaded, before any
GINKGO_LABELS is useful. That is a lot of setup to get wrong, and
nothing in the repo does it.

Add hack/run-e2e-kind.sh and a run-e2e-kind target that wraps it. It
creates the cluster, starts MinIO, builds and loads the image, runs the
suite, and removes what it created on the way out, including when the
tests fail or the run is interrupted. FAIL_FAST=true keeps the test bed
and prints how to remove it, as it does for the suite itself.

The cluster's kubeconfig is written to a temporary directory rather than
merged into the caller's, so ~/.kube/config is untouched and the current
context does not change.

The MinIO container is named after the cluster, and the script refuses to
start if that name is already taken rather than removing a container it
did not create. FEATURES=EnableCSI delegates to
hack/install-csi-hostpath.sh.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* Add changelog for #10652

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* e2e: point the kind target's CSI runs at a CSI-backed StorageClass

The target installs csi-driver-host-path when EnableCSI is asked for, but
left the suite's own StorageClass alone. InstallStorageClasses falls back
to testdata/storage-class/<provider>.yaml when --storage-class-file is
not given, and the kind one provisions with rancher.io/local-path, so the
run installed a snapshot-capable driver and then created
e2e-storage-class on a provisioner that cannot snapshot. The example in
the script's own header could not have worked.

Pass kind-csi.yaml for a CSI run, which is the file the CSI job in CI
already uses. Non-CSI runs pass an empty value, which is what the
Makefile defaults to, so they are unchanged.

While here, match FEATURES as the comma-separated list the flag accepts
rather than comparing the whole value, so EnableCSI,EnableAPIGroupVersions
still installs the driver. Same reasoning as the Go side in #10661.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* e2e: fix five faults in the kind runner found in review

Teardown deleted the cluster whether or not this run created it. The EXIT
trap is installed before the cluster exists, so an early exit, including
the check that refuses an existing MinIO container, removed a cluster
named velero-e2e that belonged to someone else. The script already
refused to remove a MinIO container it did not create, after an earlier
version deleted one that was in use; the cluster needed the same rule and
did not have it. It now refuses a cluster name that is taken and tracks
whether it created one.

MinIO was started with "server /data", which replaces the entrypoint. CI
passes no command and relies on the image starting the server itself, and
the bitnami image this script tells the user to build runs as UID 1001
and cannot create a data directory at the filesystem root, so the
recommended image could not come up. The command is now empty by default,
with MINIO_ARGS for an image that needs one, such as upstream
minio/minio, and the readiness failure says so.

The image name was taken with ${VELERO_IMAGE%%:*}, which strips from the
first colon, so localhost:5000/velero:e2e-local became "localhost" and
the load asked for a tag that was never built. Strip only the final tag.

The loaded tag was hardcoded to -linux-amd64, but the container target
appends the platform from go env when BUILD_OUTPUT_TYPE is docker, so an
arm64 workstation built -linux-arm64 and the load failed before any test
ran. Resolve the platform once and use it for both the load and the
suite.

Finally, the resolved tag was handed to the inner make through the
environment. A command-line assignment to the outer make propagates
through MAKEFLAGS and outranks the environment, so
"make -C test run-e2e-kind VELERO_IMAGE=velero:custom" ran the suite
against velero:custom while the script had loaded
velero:custom-linux-amd64. Pass it as an argument instead.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* e2e: take only the architecture from go env, the image OS is always linux

The container target fixes ALL_OS to linux when BUILD_OUTPUT_TYPE is
docker and takes only the architecture from go env, so the tag it
produces ends in -linux-<arch> on every host. Deriving the OS from
go env GOOS instead meant a Darwin workstation computed
-darwin-<arch> and tried to load a tag that was never built, which
matters because a Darwin host still needs a Linux image to load into
kind.

Suggested in review.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

---------

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>
2026-10-27 14:24:01 -07:00
KrishhnaT 3efaa0c5ee e2e: finish converting the CSI feature checks to FeatureEnabled (#10678)
* e2e: finish converting the CSI feature checks to FeatureEnabled

#10661 routed every check for EnableCSI through FeatureEnabled, which
splits the comma-separated --features value instead of comparing the
whole thing. One site was left on strings.EqualFold, because #10658
introduced it after #10661 had branched and the rebase applied cleanly
without noticing.

The result is that KibishiiVolumesAreHostPath and the Kind branch of
installKibishii, which are inverses of each other and sit twenty-odd
lines apart with comments saying so, disagree whenever a second feature
is enabled. With --features=EnableCSI,EnableAPIGroupVersions on kind the
mapping swaps in the CSI-backed overlay and the predicate still reports
the volumes as hostPath, so the five cases install a cluster they can
snapshot and then skip.

Convert the last site and test the predicate against the list, case and
single-feature shapes, which fails on the list cases before the change.

The test would not have run in CI either: hack/test.sh listed ./test but
not the other unit-testable packages under test/, so the two existing
tests in this package and the five in test/pkg/client and
test/util/velero were never executed. List all four. The e2e and perf
suites stay out, since they call RunSpecs and need a cluster.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* Add changelog for #10678

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

---------

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>
2026-10-27 12:06:36 -07:00
KrishhnaT 642a5bdf87 e2e: match --features as the comma-separated list it is (#10661)
* e2e: match --features as the comma-separated list it is

--features takes a comma-separated list, but every check for EnableCSI in
the suite compares the whole flag value against the single feature name.
With --features=EnableCSI,EnableAPIGroupVersions none of them match, so a
CSI run quietly behaves as a non-CSI one: BeforeSuite skips installing the
VolumeSnapshotClass, installKibishii picks the provider's plain overlay
rather than its CSI one, and BuildSnapshotCheckPointFromVolumeInfo returns
a checkpoint with EnableCSI false and no snapshot handles, so the CSI
snapshot count is never compared against the expected one.

One site already used strings.Contains instead, which handles a list but
matches any feature whose name merely starts with this one, and misses a
value that differs only in case.

Add FeatureEnabled, which splits on commas and compares each entry whole
and case-insensitively, and route all eleven call sites through it. The
table test covers the list, case and prefix shapes that the two previous
idioms each got wrong.

hack/test.sh listed only ./pkg/..., ./internal/... and ./cmd/..., so
nothing under test/ was ever unit tested and this table would not have run
in CI. Add ./test, which holds the suite's shared types and nothing that
needs a cluster. The e2e suites live in subpackages and stay unlisted.

Found while reviewing the kind-csi mapping in #10657, which copied the
EqualFold form from the Azure and AWS branches beside it.

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

* Add changelog for #10661

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>

---------

Signed-off-by: krishhna24 <krishhnatupedev@gmail.com>
2026-10-21 06:10:17 -07:00
Daniel Jiang 6c06da8778 Update for "vmware-tanzu" to "velero-io" update (#10650)
This commit makes change to the code, scripts and some template files to
reflect the change of the org after donation to CNCF.

The files under "/site" "/changelogs" and "/design" are deliberately
excluded in this change.  I'll make follow up changes in these
directories when needed.

Signed-off-by: Daniel Jiang <daniel.jiang@broadcom.com>
2026-10-13 08:40:07 -04:00
KrishhnaT e605fb2d3d Merge pull request #10596 from krishhna24/e2e-csi-hostpath-installer
Run the E2E test on kind / setup-test-matrix (push) Failing after 3s
e2e-test-kind.yaml / extract (push) Failing after 7s
Scorecard supply-chain security / Scorecard analysis (push) Skipped
Run the E2E test on kind / get-go-version (push) Failing after 8s
Run the E2E test on kind / build (push) Skipped
Run the E2E test on kind / run-e2e-test (push) Skipped
push.yml / extract (push) Failing after 6s
Main CI / get-go-version (push) Failing after 7s
Main CI / Build (push) Skipped
e2e: add a script to install CSI snapshot support on kind
2026-10-04 10:06:20 -07:00
Shubham Pampattiwar 1d9391b85e Evaluate changelog exemption labels from live PR state (#10472)
The changelog check decided whether a PR was exempt using the labels in
the triggering event payload (github.event.pull_request.labels). That
payload is frozen at event time, so a PR that gets the
kind/changelog-not-required label after its first run could not pass by
re-running the failed job, and the exemption only took effect if a brand
new event happened to fire afterward.

Move the exemption logic into hack/changelog-check.sh and query the PR's
current labels via the GitHub API instead. Re-runs and labels added after
the initial run are now evaluated correctly. The workflow grants
pull-requests: read and passes github.token so the script can read labels.

The exempt label set (kind/changelog-not-required, Design, Website,
Documentation) is unchanged.

Signed-off-by: Shubham Pampattiwar <spampatt@redhat.com>
2026-09-03 09:58:20 -07:00
LubronandDaniel Jiang cc7b1dbaef Embed CRD manifests via go:embed instead of codegen (#10329)
config/crd/{v1,v2alpha1}/crds/crds.go were generated files that
gzip-compressed the CRD YAML bases into committed []byte literals via
hack/crd-gen, requiring `go generate` and a dedicated CI drift check
(hack/verify-generated-crd-code.sh). This made the files large,
unreviewable in diffs, and a frequent source of merge conflicts.

Replace the generated files with config/crd/{v1,v2alpha1}/crds.go
using `//go:embed bases/*.yaml` to embed the already-committed YAML
manifests directly, decoding them the same way at init. Since Go's
go:embed can't reach outside a file's own directory tree, the crds
package now lives alongside bases/ instead of in a bases-sibling
subdirectory; import paths in pkg/install and pkg/controller were
updated accordingly.

Drop hack/crd-gen and hack/verify-generated-crd-code.sh entirely, and
trim their references from update-3generated-crd-code.sh and the
codespell skip-list. No codegen step remains, so no drift is possible.

Fixes #10328

AI-Tool-Used: Claude Code
AI-Tool-Use-Level: Category 1 (High)
AI-Code-Category: Category 1 (Production)

Signed-off-by: lubronzhan <lubron.zhan@broadcom.com>
Co-authored-by: Daniel Jiang <daniel.jiang@broadcom.com>
2026-08-24 14:17:25 -04:00
chlins 5a615ad580 Verify build tool downloads
Pin architecture-specific SHA-256 checksums for kubebuilder, protoc, and GoReleaser before installation.

Signed-off-by: chlins <chlins.zhang@gmail.com>
2026-08-04 17:22:50 +08:00
Chlins Zhang c95597720a build(image): remove kubectl installation from build image (#10065)
Run the E2E test on kind / setup-test-matrix (push) Successful in 4s
e2e-test-kind.yaml / extract (push) Failing after 12s
Run the E2E test on kind / get-go-version (push) Failing after 13s
Run the E2E test on kind / build (push) Skipped
Run the E2E test on kind / run-e2e-test (push) Skipped
build-image / Build (push) Failing after 12s
push.yml / extract (push) Successful in 12s
Main CI / get-go-version (push) Successful in 13s
Main CI / Build (push) Failing after 27s
Signed-off-by: chlins <chlins.zhang@gmail.com>
2026-07-27 19:34:38 -04:00
Tiger Kaovilai 5ecf38b5d7 Derive dev-tool CLI versions from go.mod (ginkgo, protoc-gen-go, goimports) (#10024)
* Derive Ginkgo CLI version from go.mod in test/Makefile

Hardcoded @v2.22.0 pin drifted from go.mod's v2.28.3, causing
Ginkgo CLI/package version mismatch warnings.

Fixes #10023

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>

* Derive protoc-gen-go and goimports versions from go.mod in build-image

Same drift issue as #10023: Dockerfile hardcoded @v1.33.0 and @v0.33.0
while go.mod had moved on. Build context is hack/build-image, which
doesn't include go.mod, so versions are computed in the Makefile (which
does have go.mod) and passed through as build-args, same as GOPROXY.

protoc-gen-go-grpc and controller-gen/setup-envtest/golangci-lint are
left as-is: no matching go.mod entry, or independently versioned from
the module they live alongside.

Fixes #10023

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>

---------

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
2026-07-23 15:43:47 -04:00
Xun Jiang/Bruce Jiang 52860f986e Use "go install" so the download goes through GOPROXY instead of the GitHub. (#9891)
Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-06-08 13:05:53 -07:00
Xun Jiang 5afe5df122 Bump Velero dependencies to latest version.
* Fix UT failures caused by client-go version bump.
* Some modifications to enhance the UT stability.
* Fix UT errors: non-constant format string in call to ...
* Fix linter issues.

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-05-08 17:38:42 +08:00
lyndon-li b635035d79 Merge branch 'main' into fix-go-releaser-upload-issue 2026-04-27 22:50:02 +08:00
Lyndon-Li 36dde0f88e fix go-releaser upload error
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2026-04-27 22:48:20 +08:00
Lyndon-Li 16ca7739ce add concurrency limit to go-releaser
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2026-04-27 18:05:00 +08:00
Xun Jiang 39db9f9c1e Remove Restic build from Dockerfile, Makefile and Tiltfile.
Delete Restic-build-related scripts.

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-04-15 23:46:31 +08:00
emirot eb0a1814c6 chore: update base image to newer debian image
Signed-off-by: emirot <emirot.nolan@gmail.com>
2026-04-13 13:42:30 +08:00
Xun Jiang 94259e8a5c Pin the sigs.k8s.io/controller-runtime to v0.23.2
The tag used to latest. Due to latest tag v0.23.3 already used
Golang v1.26, Velero main still uses v1.25. Build failed.
To fix this, pin the controller-runtime to v0.23.2

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-04-02 11:41:39 +08:00
Joseph Antony VaikathandClaude Sonnet 4.5 1315399f35 Support all glob wildcard characters in namespace validation (#9502)
Run the E2E test on kind / get-go-version (push) Failing after 1m19s
Run the E2E test on kind / build (push) Has been skipped
Run the E2E test on kind / setup-test-matrix (push) Successful in 3s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
build-image / Build (push) Failing after 16s
Main CI / get-go-version (push) Successful in 13s
Main CI / Build (push) Failing after 36s
Close stale issues and PRs / stale (push) Successful in 16s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 1m56s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-aws, main) (push) Failing after 1m33s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-gcp, main) (push) Failing after 1m30s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-microsoft-azure, main) (push) Failing after 1m40s
* Support all glob wildcard characters in namespace validation

Expand namespace validation to allow all valid glob pattern characters
(*, ?, {}, [], ,) by replacing them with valid characters during RFC 1123
validation. The actual glob pattern validation is handled separately by
the wildcard package.

Also add validation to reject unsupported characters (|, (), !) that are
not valid in glob patterns, and update terminology from "regex" to "glob"
for clarity since this implementation uses glob patterns, not regex.

Changes:
- Replace all glob wildcard characters in validateNamespaceName
- Add test coverage for valid glob patterns in includes/excludes
- Add test coverage for unsupported characters
- Reject exclamation mark (!) in wildcard patterns
- Clarify comments and error messages about glob vs regex

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* Changelog

Signed-off-by: Joseph <jvaikath@redhat.com>

* Add documentation: glob patterns are now accepted

Signed-off-by: Joseph <jvaikath@redhat.com>

* Error message fix

Signed-off-by: Joseph <jvaikath@redhat.com>

* Remove negation glob char test

Signed-off-by: Joseph <jvaikath@redhat.com>

* Add bracket pattern validation for namespace glob patterns

Extends wildcard validation to support square bracket patterns [] used in glob character classes. Validates bracket syntax including empty brackets, unclosed brackets, and unmatched brackets. Extracts ValidateNamespaceName as a public function to enable reuse in namespace validation logic.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* Reduce scope to *, ?, [ and ]

Signed-off-by: Joseph <jvaikath@redhat.com>

* Fix tests

Signed-off-by: Joseph <jvaikath@redhat.com>

* Add namespace glob patterns documentation page

Adds dedicated documentation explaining supported glob patterns
for namespace include/exclude filtering to help users understand
the wildcard syntax.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* Fix build-image Dockerfile envtest download

Replace inaccessible go.kubebuilder.io URL with setup-envtest and update envtest version to 1.33.0 to match Kubernetes v0.33.3 dependencies.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* kubebuilder binaries mv

Signed-off-by: Joseph <jvaikath@redhat.com>

* Reject brace patterns and update documentation

Add {, }, and , to unsupported characters list to explicitly reject
brace expansion patterns. Remove { from wildcard detection since these
patterns are not supported in the 1.18 release.

Update all documentation to show supported patterns inline (*, ?, [abc])
with clickable links to the detailed namespace-glob-patterns page.
Simplify YAML comments by removing non-clickable URLs.

Update tests to expect errors when brace patterns are used.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* Document brace expansion as unsupported

Add {} and , to the unsupported patterns section to clarify that
brace expansion patterns like {a,b,c} are not supported.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

* Update tests to expect brace pattern rejection

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>

---------

Signed-off-by: Joseph <jvaikath@redhat.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-11 12:43:55 -05:00
Xun Jiang f824c3ca3b Bump golang.org/x/crypto to v0.45.0 to fix CVEs.
* CVE-2025-47914
* CVE-2025-58181

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2026-02-03 17:23:01 +08:00
Tiger Kaovilai a1026cb531 Update golangci-lint installation script URL to use HEAD for latest version (#9451)
Run the E2E test on kind / get-go-version (push) Failing after 1m16s
Run the E2E test on kind / build (push) Has been skipped
Run the E2E test on kind / setup-test-matrix (push) Successful in 4s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
build-image / Build (push) Failing after 15s
Main CI / get-go-version (push) Successful in 13s
Main CI / Build (push) Failing after 39s
Close stale issues and PRs / stale (push) Successful in 14s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 1m39s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-aws, main) (push) Failing after 1m8s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-gcp, main) (push) Failing after 1m27s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-microsoft-azure, main) (push) Failing after 1m27s
Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
2025-12-12 12:25:45 -05:00
Xun Jiang 758f6a4847 Bump Golang version from 1.24-bookworm to 1.25-bookworm
Bump golangci-lint to v1.25.0, because golangci-lint start to support
Golang v1.25 since v1.24.0, and v1.26.x was not stable yet.
Align action pr-linter-check's golangci-lint version to v1.25.0

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2025-11-26 14:16:42 +08:00
Lyndon-Li 34f8b73507 bump up kopia to v0.21.1
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2025-07-22 15:56:04 +08:00
iiriix d12b700b90 chore: bump golang.org/x/oauth2 to fix restic CVE-2025-22868
Signed-off-by: Iiriix <1596129+iiriix@users.noreply.github.com>
2025-06-12 09:38:51 -07:00
Xun Jiang a18fe55585 Support Windows E2E.
* Please notice only Kibishii workload support Windows test,
because the other work loads use busybox image, and not support Windows.
* Refactor CreateFileToPod to support Windows.
* Add skip logic for migration test if the version is under 1.16.
* Add main in semver check.

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2025-05-20 15:58:15 +08:00
Xun Jiang d3e8e9a9c2 Remove pushing images to GCR.
Remove dependency with GCR.

Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2025-05-08 20:42:21 +08:00
Xun Jiang/Bruce Jiang 83a0badf96 Bump golang.org/x/net to v0.38.0 to fix CVE. (#8896)
Run the E2E test on kind / build (push) Failing after 6m39s
Run the E2E test on kind / setup-test-matrix (push) Successful in 3s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
Main CI / Build (push) Failing after 36s
Close stale issues and PRs / stale (push) Successful in 10s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 1m11s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-aws, main) (push) Failing after 49s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-gcp, main) (push) Failing after 49s
Trivy Nightly Scan / Trivy nightly scan (velero-plugin-for-microsoft-azure, main) (push) Failing after 53s
Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2025-04-30 12:35:02 -04:00
Matthieu MOREL 5705bcc3f4 chore: bump golangci-lint to v2 (#8839)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-04-17 02:38:19 -04:00
Xun Jiang 96760885dc Bump the golang.org/x/net to v0.36.0 to fix Restic CVE.
Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2025-03-27 11:02:33 +08:00
Matthieu MORELandJanne Kataja aa88d1cfd3 chore: update Go to 1.23 and toolchain to 1.23.6 (#8717)
Run the E2E test on kind / build (push) Failing after 5m45s
Run the E2E test on kind / setup-test-matrix (push) Successful in 2s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
build-image / Build (push) Failing after 9s
Main CI / Build (push) Failing after 21s
Close stale issues and PRs / stale (push) Successful in 7s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 59s
Trivy Nightly Scan / Trivy nightly scan (velero-restore-helper, main) (push) Failing after 47s
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Co-authored-by: Janne Kataja <janne.kataja@sdx.com>
2025-03-04 10:33:33 -05:00
Matthieu MOREL 6a6a237ba7 Bump golangci-lint from v1.57.2 to v1.64.5 (#8641)
Run the E2E test on kind / build (push) Failing after 5m43s
Run the E2E test on kind / setup-test-matrix (push) Successful in 2s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
build-image / Build (push) Failing after 8s
Main CI / Build (push) Failing after 33s
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-03-04 13:55:29 +05:30
Tiger Kaovilai a3cee616dc Upgrade go.mod k8s.io/ go.mod to v0.31.3 and set klog.SetLogger() for client-go (#8450)
Run the E2E test on kind / build (push) Failing after 5m44s
Run the E2E test on kind / setup-test-matrix (push) Successful in 3s
Run the E2E test on kind / run-e2e-test (push) Has been skipped
build-image / Build (push) Failing after 10s
Main CI / Build (push) Failing after 31s
Close stale issues and PRs / stale (push) Successful in 7s
Trivy Nightly Scan / Trivy nightly scan (velero, main) (push) Failing after 59s
Trivy Nightly Scan / Trivy nightly scan (velero-restore-helper, main) (push) Failing after 45s
Also bumped to support upgraded k8s.io/ deps.
- controller-gen to v0.16.5
- sigs.k8s.io/controller-runtime v0.19.2

Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
2025-02-17 15:05:10 -05:00
Xun Jiang e68dca0112 Bump Restic go.mod to fix CVEs.
Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2024-12-24 11:19:02 +08:00
Lyndon-Li 876a1fc30f fix gcr image missing problem
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2024-12-18 20:13:42 +08:00
Lyndon-Li baf74d67a7 build hybrid image
Signed-off-by: Lyndon-Li <lyonghui@vmware.com>
2024-12-04 10:29:34 +08:00
Lyndon-Li cc47be933d Revert "Upload Velero build package saved from build image to Google cloud storage"
This reverts commit 0b6df61eca.
2024-11-19 19:15:41 +08:00
Xun Jiang c0402075fb Remove code-generator from hack/update-3generated-crd.code.sh
Signed-off-by: Xun Jiang <xun.jiang@broadcom.com>
2024-08-15 17:27:30 +08:00
Matthieu MOREL c69f47d5d2 Migrate from github.com/golang/protobuf to google.golang.org/protobuf (#7593)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-07-16 16:28:07 -04:00
Wenkai Yin(尹文开) 33633d8a02 Merge pull request #7834 from reasonerjt/fix-git-status-issue
[CP-to-main]: Fix issue in "git status" in goreleaser.sh
2024-05-28 12:42:29 +08:00
Daniel Jiang 284e23bef3 Bump up goreleaser to v1.26.2
Also make update to the configuration file according to:
https://goreleaser.com/deprecations/#archivesrlcp

Signed-off-by: Daniel Jiang <daniel.jiang@broadcom.com>
2024-05-28 11:25:17 +08:00
Daniel Jiang d00721c874 Fix issue in "git status" in goreleaser.sh
When dry-run the tag-release.sh, there's an error
"fatal: detected dubious ownership in repository at
'/github.com/vmware-tanzu/velero'"

This commit works around this issue to make sure "tag-release.sh"
can finish successful

Signed-off-by: Daniel Jiang <daniel.jiang@broadcom.com>
2024-05-28 10:27:01 +08:00
Tiger Kaovilai 3c937d42dd ignore .git dir when formatting
Signed-off-by: Tiger Kaovilai <tkaovila@redhat.com>
2024-05-10 14:12:29 -04:00
Xun Jiang/Bruce Jiang 5f9c53af6e Merge pull request #7697 from blackpiglet/backup_volumeinfo_cli_update
Modify namespace filter logic for backup with label selector
2024-04-22 15:57:50 +08:00
Xun Jiang a01ef11c92 Fix CVEs reported in GitHub security.
Signed-off-by: Xun Jiang <blackpigletbruce@gmail.com>
2024-04-22 10:05:10 +08:00
Xun Jiang 884bcbec98 Fix the typecheck error reported by the lint GitHub action.
Signed-off-by: Xun Jiang <blackpigletbruce@gmail.com>
2024-04-19 18:41:16 +08:00
Daniel Jiang 1b3fe95980 Bump up golang to v1.22
This commit bumps up the golang for building and testing velero to v1.22

It also updates controller-gen to v0.14.0 to fix an issue under new
versino of go.
More details see https://github.com/golang/go/issues/65637

Signed-off-by: Daniel Jiang <jiangd@vmware.com>
2024-04-14 20:15:51 +08:00
Matthieu MOREL 3c704ba1b1 linter(testifylint): use Len or Empty for arrays testing (#7555)
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2024-03-27 14:16:58 -04:00