velero
Copilot instructions10k starsChanged 19 days agoApache-2.0View on GitHub
Velero uses per-PR changelog fragments that are assembled into release notes. Every shipping PR must add exactly one file at: - <PRNUMBER> is the pull request number (e.g. 10200). - <githubusername> is the GitHub login of the PR author (e.g. jdoe). - The file has no extension. - The file content is a single line describing the change (the PR title is a sensible default). Example: PR #10200 by jdoe → changelogs/unreleased/10200-jdoe The easiest way to create this file is:
We split this copilot-instructions.md into the rules it gives an agent
10 rules. About 0 are common, 6 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 9
Every shipping PR must add exactly one file at:
- Distinctive: line 46
When you open or review a PR that falls into one of the above categories (and does
- Very specific: line 49
kind/changelog-not-required: instead of requesting a changelog entry. - Very specific: line 69
Changelog-not-required: if the source PR is labeled kind/changelog-not-required, that label is copied to the backport PR so it isn't …
- Very specific: line 72
DCO signoff: every commit on a backport branch is re-signed with the bot's Signed-off-by trailer (git rebase --signoff), including …
- Distinctive: line 76
Only repository owners, members, and collaborators may trigger these commands.
- Distinctive: line 80
Follow the existing code style of the file being edited.
- Very specific: line 81
Add unit tests for new exported functions in pkg/.
- Distinctive: line 82
Do not commit secrets, credentials, or API tokens.
- Distinctive: line 83
Keep PRs focused; prefer small, reviewable changes over large omnibus PRs.
≈ “Common” is an estimate: at least 1 in 5 of the 3,669 Copilot instructions files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
GitHub Copilot instructions for velero-io/velero
Changelog requirement
Velero uses per-PR changelog fragments that are assembled into release notes.
File naming convention
Every shipping PR must add exactly one file at:
changelogs/unreleased/<PR_NUMBER>-<github_username><PR_NUMBER>is the pull request number (e.g.10200).<github_username>is the GitHub login of the PR author (e.g.jdoe).- The file has no extension.
- The file content is a single line describing the change (the PR title is a sensible default).
Example: PR #10200 by jdoe → changelogs/unreleased/10200-jdoe
The easiest way to create this file is:
make new-changelog CHANGELOG_BODY="Brief description of the change"make new-changelog reads the PR number and author from gh pr view; the file
is written automatically to the correct path with the correct name.
The CI check (hack/changelog-check.sh) looks for
changelogs/unreleased/<PR_NUMBER>-* and fails if no file is found.
When a changelog is NOT required
A changelog entry is not required when a PR exclusively changes non-shipping content, i.e. the only files touched belong to one or more of these categories:
| Category | Paths |
| GitHub Actions / CI workflows | .github/** |
| Documentation | site/content/docs/**, site/**, docs/**, *.md |
| Website (non-docs) | site/** (excluding site/content/docs/**) |
When you open or review a PR that falls into one of the above categories (and does
not modify pkg/, internal/, cmd/, vendor/, hack/, Makefile,
go.mod, go.sum, or changelogs/**), apply the label
kind/changelog-not-required instead of requesting a changelog entry. The
labeler.yml auto-labeler handles this automatically for most cases; apply the
label manually if the auto-labeler did not.
Backport / cherry-pick workflow
Velero uses .github/workflows/backport.yml to automate cherry-picks onto release
branches.
- Before merge: comment
/backport release-1.17(or/cherrypick release-1.17) to add the labelbackport release-1.17to the PR. Multiple branches can be space-delimited:/backport release-1.17 release-1.18. The label causes the backport to run automatically when the PR merges. - After merge: the same comment immediately creates the backport PR.
- Shorthand: a bare version like
/backport 1.17is automatically expanded torelease-1.17; this works generically for anyX.Yversion. - Changelog filename: the cherry-picked commit(s) carry over the source
PR's
changelogs/unreleased/<source_pr>-<user>file. The workflow automatically renames it to<backport_pr>-<user>on the backport branch sohack/changelog-check.shpasses and release notes cite the correct PR. - Changelog-not-required: if the source PR is labeled
kind/changelog-not-required, that label is copied to the backport PR so it isn't flagged as missing a changelog. - DCO signoff: every commit on a backport branch is re-signed with the
bot's
Signed-off-bytrailer (git rebase --signoff), including cherry-picked commits from the original author, so the DCO check always passes on backport PRs. - Only repository owners, members, and collaborators may trigger these commands.
General coding guidelines
- Follow the existing code style of the file being edited.
- Add unit tests for new exported functions in
pkg/. - Do not commit secrets, credentials, or API tokens.
- Keep PRs focused; prefer small, reviewable changes over large omnibus PRs.
Trending
More talk lately.about the whole repository
Who's talking about vmware-tanzu/velero
- velero-io/velero“S3 client-side encryption support”GitHub · Jan 2, 2021 · 95 reactions
- velero-io/velero“Backup CSI Volume Snapshots to S3 (Feature Request)”GitHub · Mar 8, 2021 · 82 reactions
- velero-io/velero“Design doc for multiple cluster support”GitHub · Mar 6, 2021 · 42 reactions
- velero-io/velero“Add a new data movement layer to Velero's architecture”GitHub · Jan 11, 2021 · 41 reactions
- velero-io/velero“No backup locations were ready to be verified - reword BSL controller status message”GitHub · Sep 17, 2020 · 41 reactions
The biggest 5 of 51 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 51
Talked about on GitHub and Stack Overflow (51 times).
On GitHub · 47
- Jan 2, 2021S3 client-side encryption support — velero-io/velero95 reactions · 13 comments
- Mar 8, 2021Backup CSI Volume Snapshots to S3 (Feature Request) — velero-io/velero82 reactions · 18 comments
- Mar 6, 2021Design doc for multiple cluster support — velero-io/velero42 reactions
- Jan 11, 2021Add a new data movement layer to Velero's architecture — velero-io/velero41 reactions · 3 comments
- Sep 17, 2020No backup locations were ready to be verified - reword BSL controller status message — velero-io/velero41 reactions · 16 comments
42 more on GitHub
- Feb 6, 2026[Sandbox] Velero — cncf/sandbox40 reactions · 14 comments
- Sep 12, 2021Exclude folders for backing up — velero-io/velero32 reactions · 12 comments
- Sep 21, 2020Add option to define custom tags in Schedule/Backup. — velero-io/velero31 reactions · 15 comments
- Feb 6, 2023Add the ability to optionally skip some annotations from being passed from Schedule to backup — velero-io/velero29 reactions · 8 comments
- Feb 28, 2022restore with object metadata.ownerreference and metadata.finalizer — velero-io/velero27 reactions · 19 comments
- May 15, 2020enable velero backups by using local instead of hostpath — rancher/local-path-provisioner25 reactions · 33 comments
- Mar 15, 2024Use of x-amz-sdk-checksum-algorithm breaks B2 compatibility and potentially others — velero-io/velero23 reactions · 8 comments
- Mar 3, 2021Restore issue with MutatingWebhookConfiguration v1beta1 API version — velero-io/velero23 reactions · 4 comments
- Jul 14, 2022Support filter the resource by name during the backup — velero-io/velero20 reactions · 7 comments
- Feb 14, 2025Avoid overwriting during backup to support object lock enabled buckets — velero-io/velero19 reactions · 6 comments
- Feb 13, 2024Aws Pod Identity provider not working — velero-io/velero19 reactions · 12 comments
- Jan 26, 2024velero server will crash when there is no bsl named `default` — velero-io/velero19 reactions · 18 comments
- Sep 21, 2023Backup partially failed with csi plugin 0.6.0-rc2 on OVH cluster — velero-io/velero18 reactions · 15 comments
- May 11, 2021Azure Government Cloud/backup-location: Confidential Client is not supported in Cross Cloud request — velero-io/velero18 reactions · 19 comments
- Aug 28, 2020Backups and restores not adopted when the velero pod is restarted — velero-io/velero18 reactions · 3 comments
- Oct 8, 2021velero backup using a mix of restic and csi snapshots — velero-io/velero16 reactions · 15 comments
- Mar 4, 2021Allow not skipping Complete jobs in velero restores. — velero-io/velero16 reactions · 14 comments
- Sep 9, 2020Velero backup location stuck in unknown on GCP — velero-io/velero16 reactions · 13 comments
- Jun 5, 2020Don't create a backup immediately after creating a schedule — velero-io/velero16 reactions · 4 comments
- Jun 16, 2025Hardcoded `velero` Deployment name prevents restore process — velero-io/velero15 reactions · 18 comments
- Apr 14, 2025Implement VoulumeGroupSnapshot (VGS) support in Velero — velero-io/velero15 reactions · 3 comments
- Mar 6, 2021Manage backup/restore in multiple clusters from a single Velero instance — velero-io/velero15 reactions · 2 comments
- Feb 11, 2021Velero restore gets stuck restoring an nfs-pv using restic — velero-io/velero15 reactions · 7 comments
- Oct 4, 2024Provide S3 plugin that aims to support any S3 compatible object storage. — velero-io/velero14 reactions · 8 comments
- Mar 14, 2022Possible race condition when removing a backup in New phase and backups overlapping — velero-io/velero14 reactions · 7 comments
- Feb 29, 2024Add design for only restore volume data. — velero-io/velero13 reactions · 15 comments
- Sep 22, 2021Error thrown for empty files during backup — velero-io/velero13 reactions · 9 comments
- May 19, 2022Propose Shubham Pampattiwar as a maintainer — velero-io/velero6 reactions
- Sep 1, 2022Document purpose of `iam.serviceAccounts.signBlob` — velero-io/velero-plugin-for-gcp5 reactions · 2 comments
- Jul 31, 2025feat: add apply flag to install command — velero-io/velero4 reactions · 42 comments
- Feb 6, 2026Fix SSE-C signed URLs — velero-io/velero-plugin-for-aws3 reactions · 5 comments
- Feb 28, 2025Issue 3159: Added support for AzureStackHub and Azure private cloud identification — velero-io/velero3 reactions · 6 comments
- Sep 6, 2024Send md5 of customer key — velero-io/velero-plugin-for-aws3 reactions · 2 comments
- Nov 29, 2021Build for `darwin-arm64` — velero-io/velero3 reactions · 1 comment
- Nov 18, 2021Don't use storage account key for object storage if SP or MI is provided — velero-io/velero-plugin-for-microsoft-azure3 reactions · 40 comments
- Aug 17, 2020[velero] A one time job to install/upgrade/delete CRDs — vmware-tanzu/helm-charts3 reactions · 8 comments
- Oct 8, 2026Fix concurrent map writes crash in pvcPvMap — velero-io/velero2 reactions · 2 comments
- Mar 10, 2026[oadp-1.5] Fix DBR stuck when CSI snapshot no longer exists in cloud provider — openshift/velero2 reactions · 4 comments
- Jul 7, 2025Design for node agent soothing — velero-io/velero2 reactions · 1 comment
- Feb 20, 2025OADP-5611: Copy SecurityContext from Containers[0] if present for PVR — openshift/velero2 reactions · 6 comments
- Nov 8, 2024velero: 1.14.1 -> 1.15.0 — NixOS/nixpkgs2 reactions
- Aug 20, 2022Build and publish multi-arch images — vmware-tanzu/velero-plugin-for-csi2 reactions · 3 comments
On Stack Overflow · 4
- May 16, 2021How do I "freeze" an nfs mount in kubernetes to snapshot it if fsfreeze sends operation not permitted?3 votes
- Jul 16, 2020How to quickly backup and restore kubernetes cluster in GCP2 votes
- Jun 10, 2020Migrate zookeeper data on Kubernetes to new storage0 votes
- Jan 20, 2020Accidentally deleted Kubernetes namespace0 votes
Where files are headingNew Copilot instructions files have more rules about branches and pull requests, and fewer about code style.
Of the Copilot instructions files we read, the 2,297 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

