## Description Helper functions that allow finding the most recent complete (and maybe incomplete) snapshots for a given set of tags. The returned snapshots can later be used to do more efficient kopia snapshots by allowing kopia to determine it's already uploaded a file and skip uploading it again. The number of most recent snapshots to return can be tuned (right now it returns 1 most recent), but may cause more memory usage during backups. Kopia currently has some oddities when getting snapshot manifests via tags: * tag values cannot be empty or the comparison returns always true, selecting all snapshot manifests * kopia does not currently tag snapshot manifests made during checkpoints. A patch to upstream kopia is needed to fix this. All other manifests that match the tags will be returned though Added code is not currently connected to any backup logic. Viewing by commit may help as there was a tad of lift'n'shift code movement for the sake of organization ## Type of change <!--- Please check the type of change your PR introduces: ---> - [x] 🌻 Feature - [ ] 🐛 Bugfix - [ ] 🗺️ Documentation - [ ] 🤖 Test - [ ] 💻 CI/Deployment - [ ] 🐹 Trivial/Minor ## Issue(s) * #1404 ## Test Plan <!-- How will this be tested prior to merging.--> - [ ] 💪 Manual - [x] ⚡ Unit test - [ ] 💚 E2E
Corso
Corso is the first open-source tool that aims to assist IT admins with the critical task of protecting their Microsoft 365 data. It provides a reliable, secure, and efficient data protection engine. Admins decide where to store the backup data and have the flexibility to perform backups of their desired service through an intuitive interface. As Corso evolves, it can become a great building block for more complex data protection workflows.
Corso is currently in ALPHA and should NOT be used in production.
Corso supports M365 Exchange and OneDrive with SharePoint and Teams support in active development. Coverage for more services, possibly beyond M365, will expand based on the interest and needs of the community.
Getting Started
See the Corso Documentation for more information.
Building Corso
To learn more about working with the project source core and building Corso, see the Developer section of the Corso Documentation.
Roadmap
You can learn more about the Corso roadmap and how to interpret it here.
If you have feature requests, please file a GitHub issue
and attach the enhancement label to the issue.
Contribution Guidelines
Code of Conduct
It's important that our community is inclusive and respectful of everyone. We ask that all Corso users and contributors take a few minutes to review our Code of Conduct.
License
Corso is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.