MCPcopy Index your code
hub / github.com/velero-io/velero

github.com/velero-io/velero @v1.18.2 sqlite

repository ↗ · DeepWiki ↗ · release v1.18.2 ↗
8,020 symbols 36,201 edges 938 files 3,071 documented · 38%
README

100

Build Status CII Best Practices GitHub release (latest SemVer)

Overview

Velero (formerly Heptio Ark) gives you tools to back up and restore your Kubernetes cluster resources and persistent volumes. You can run Velero with a public cloud platform or on-premises.

Velero lets you:

  • Take backups of your cluster and restore in case of loss.
  • Migrate cluster resources to other clusters.
  • Replicate your production cluster to development and testing clusters.

Velero consists of:

  • A server that runs on your cluster
  • A command-line client that runs locally

Documentation

The documentation provides a getting started guide and information about building from source, architecture, extending Velero and more.

Please use the version selector at the top of the site to ensure you are using the appropriate documentation for your version of Velero.

Troubleshooting

If you encounter issues, review the troubleshooting docs, file an issue, or talk to us on the #velero channel on the Kubernetes Slack server.

Contributing

If you are ready to jump in and test, add code, or help with documentation, follow the instructions on our Start contributing documentation for guidance on how to setup Velero for development.

Changelog

See the list of releases to find out about feature changes.

Velero compatibility matrix

The following is a list of the supported Kubernetes versions for each Velero version.

Velero version Expected Kubernetes version compatibility Tested on Kubernetes version
1.18 1.18-latest 1.33.7, 1.34.1, and 1.35.0
1.17 1.18-latest 1.31.7, 1.32.3, 1.33.1, and 1.34.0
1.16 1.18-latest 1.31.4, 1.32.3, and 1.33.0
1.15 1.18-latest 1.28.8, 1.29.8, 1.30.4 and 1.31.1
1.14 1.18-latest 1.27.9, 1.28.9, and 1.29.4

Velero supports IPv4, IPv6, and dual stack environments. Support for this was tested against Velero v1.8.

The Velero maintainers are continuously working to expand testing coverage, but are not able to test every combination of Velero and supported Kubernetes versions for each Velero release. The table above is meant to track the current testing coverage and the expected supported Kubernetes versions for each Velero version.

If you are interested in using a different version of Kubernetes with a given Velero version, we'd recommend that you perform testing before installing or upgrading your environment. For full information around capabilities within a release, also see the Velero release notes or Kubernetes release notes. See the Velero support page for information about supported versions of Velero.

For each release, Velero maintainers run the test to ensure the upgrade path from n-2 minor release. For example, before the release of v1.10.x, the test will verify that the backup created by v1.9.x and v1.8.x can be restored using the build to be tagged as v1.10.x.

Extension points exported contracts — how you extend this code

Creator (Interface)
Creator creates an object. [15 implementers]
pkg/client/dynamic.go
DeleteItemAction (Interface)
DeleteItemAction is an actor that performs an operation on an individual item being restored. [70 implementers]
pkg/plugin/velero/delete_item_action.go
ConfigProvider (Interface)
ConfigProvider defines the methods to get configurations of a backup repository [10 implementers]
pkg/repository/provider/provider.go
SecretStore (Interface)
SecretStore defines operations for interacting with credentials that are stored in Secret. [19 implementers]
pkg/test/fake_credential_file_store.go
ObjectBackupStoreGetter (Interface)
ObjectBackupStoreGetter is a type that can get a velero.BackupStore for a given BackupStorageLocation and ObjectStore. [19 …
pkg/persistence/object_store.go
SnapshotExposer (Interface)
SnapshotExposer is the interfaces for a snapshot exposer [12 implementers]
pkg/exposer/snapshot.go
ClusterRoleBindingLister (Interface)
ClusterRoleBindingLister allows for listing ClusterRoleBindings in a version-independent way. [20 implementers]
pkg/util/actionhelpers/rbac.go
Creator (Interface)
Creator creates an object. [15 implementers]
test/pkg/client/dynamic.go

Core symbols most depended-on inside this repo

Result
called by 3265
pkg/repository/udmrepo/repo.go
Get
called by 1104
pkg/plugin/clientmgmt/process/registry.go
Run
called by 839
pkg/controller/interface.go
Phase
called by 637
pkg/builder/pod_builder.go
On
called by 593
internal/restartabletest/restartable_delegate.go
Printf
called by 530
pkg/cmd/util/output/describe.go
ForPod
called by 503
pkg/builder/pod_builder.go
Return
called by 461
pkg/exposer/mocks/PodVolumeExposer.go

Shape

Method 3,938
Function 2,883
Struct 984
Interface 158
TypeAlias 50
FuncType 7

Languages

Go100%
TypeScript1%

Modules by API surface

pkg/apis/velero/v1/zz_generated.deepcopy.go152 symbols
pkg/repository/udmrepo/kopialib/backend/mocks/repository_writer.go124 symbols
pkg/plugin/generated/ObjectStore.pb.go113 symbols
pkg/plugin/generated/VolumeSnapshotter.pb.go103 symbols
pkg/backup/backup_test.go99 symbols
pkg/repository/udmrepo/kopialib/backend/mocks/repository.go82 symbols
pkg/plugin/generated/restoreitemaction/v2/RestoreItemAction.pb.go81 symbols
test/util/velero/velero_utils.go78 symbols
pkg/persistence/object_store.go70 symbols
pkg/plugin/generated/ObjectStore_grpc.pb.go68 symbols
pkg/restore/restore_test.go66 symbols
pkg/plugin/generated/backupitemaction/v2/BackupItemAction.pb.go62 symbols

Dependencies from manifests, versioned

cel.dev/exprv0.25.1 · 1×
cloud.google.com/gov0.121.6 · 1×
cloud.google.com/go/auth/oauth2adaptv0.2.8 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
cloud.google.com/go/monitoringv1.24.3 · 1×
cloud.google.com/go/storagev1.57.2 · 1×
github.com/Azure/azure-sdk-for-go/sdk/azcorev1.20.0 · 1×
github.com/Azure/azure-sdk-for-go/sdk/azidentityv1.13.1 · 1×
github.com/Azure/azure-sdk-for-go/sdk/internalv1.11.2 · 1×
github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/compute/armcompute/v5v5.6.0 · 1×

For agents

$ claude mcp add velero \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact