Commit Graph

38 Commits

Author SHA1 Message Date
Maksym Pavlenko af09869cee Patch invalid proto comments
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-02-22 17:49:39 +00:00
Maksym Pavlenko 1d819cc0c4 Suppress warnings for generated code
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-02-22 17:49:39 +00:00
Maksym Pavlenko b769e85b33 Update vendor
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-02-22 17:49:39 +00:00
Maksym Pavlenko 202c785059 Add update vendor script
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2024-02-22 17:49:39 +00:00
Maksym Pavlenko 85557745e0 Make examples compilable
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-10-03 20:41:38 -07:00
Maksym Pavlenko e9910f30b8 Simplify doc management
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-10-03 20:41:38 -07:00
Bryant Biggs 5e1b7760a1 chore: Standardize Cargo.toml files, enable more workspace dependencies 2023-09-21 13:04:22 -04:00
Maksym Pavlenko 0659a93663
Bump snapshots to 0.3.0
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-08-10 15:09:05 -07:00
jiaxiao zhou 5c55e352de
cargo clippy
Signed-off-by: jiaxiao zhou <jiazho@microsoft.com>
2023-08-02 02:43:05 +00:00
Maksym Pavlenko ddf49a9a52 Fix dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-07-11 10:47:24 -07:00
Maksym Pavlenko 4f66aaffe7 Update tonic dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-05-15 10:19:35 -07:00
Simon Mo 9bf2db776b Implement `list` for snapshotter request
This PR follows up on @wedsonaf's #126 and pass the filters through the list input.
Note that this is not backward compatible but this is a step closer to the protocol
conformance.
2023-04-21 18:39:32 +00:00
Maksym Pavlenko 16e9695e80 Bump snapshots crate
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-04-14 12:26:18 -07:00
Maksym Pavlenko b284957f88
Merge pull request #130 from wedsonaf/kind-eq
Derive `PartialEq` for `Kind`
2023-03-16 04:39:15 +00:00
Wedson Almeida Filho 68c227a774 Derive `PartialEq` for `Kind`
This allows us to use the `==` and `!=` operators to compare instances
of `Kind`, which is useful when we require that a snapshot be of some
specific kind (e.g., committed) before performing an operation on it.

Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
2023-03-16 01:16:09 -03:00
Wedson Almeida Filho 7380fe8528
Use `futures` version from workspace
Co-authored-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
Signed-off-by: Wedson Almeida Filho <wedsonaf@users.noreply.github.com>
2023-03-16 00:59:56 -03:00
Wedson Almeida Filho f071faafc8 Implement `list` function
This is needed by remote snapshotters: once they report "already
exists", containerd tries to find the snapshot via `list`. If
it's not implemented, the "already exists" trick to prevent
layer download doesn't work.

This is still missing a filtering function, but allows remote
snapshotters to work.

Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
2023-03-14 23:59:29 -03:00
Wedson Almeida Filho af7ec66df5 Implement `Serialize` and `Deserialize` for `Kind` and `Info`
This allows us to use `serde` to serialize and deserialize the
information about a particular snapshot so that we can write it
to and read it from storage.

Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
2023-03-14 15:16:58 -03:00
Maksym Pavlenko 98754fd771 Update tokio
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2023-03-13 09:43:52 -07:00
Wedson Almeida Filho cdb52e74e5 Use `?` instead of `match` expression
This is just a simplification of the code to use `map_err` and
the question mark operator to improve readability.

Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
2023-01-19 16:22:50 -03:00
Wedson Almeida Filho 3aeeea0f55 Add `Into<tonic::Status>` bound to `Snapshotter::Error`
This allows implementers to express which grpc status should be
returned to clients on errors.

Prior to this patch, all errors got converted to "internal"
errors (`tonic::Status::internal`), which doesn't work when
specific status are needed. For example, remote snapshotters
need to return "already exists" to indicate that a layer
doesn't need to be downloaded.

Signed-off-by: Wedson Almeida Filho <walmeida@microsoft.com>
2023-01-19 16:18:05 -03:00
Maksym Pavlenko 80e7945674 Use workspace inheritance to describe crates
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-11-04 14:34:49 -07:00
Maksym Pavlenko 55aa661b4d Update Rust to 1.65
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-11-04 14:34:49 -07:00
dependabot[bot] 00b836f8de
build(deps): update simple_logger requirement from 3.0 to 4.0
Updates the requirements on [simple_logger](https://github.com/borntyping/rust-simple_logger) to permit the latest version.
- [Release notes](https://github.com/borntyping/rust-simple_logger/releases)
- [Commits](https://github.com/borntyping/rust-simple_logger/compare/v3.0.0...v4.0.0)

---
updated-dependencies:
- dependency-name: simple_logger
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-27 21:49:35 +00:00
dependabot[bot] 0409907ac4
build(deps): update simple_logger requirement from 2.0 to 3.0
Updates the requirements on [simple_logger](https://github.com/borntyping/rust-simple_logger) to permit the latest version.
- [Release notes](https://github.com/borntyping/rust-simple_logger/releases)
- [Commits](https://github.com/borntyping/rust-simple_logger/compare/v2.0.0...v3.0.0)

---
updated-dependencies:
- dependency-name: simple_logger
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-20 21:52:22 +00:00
Maksym Pavlenko 5ddd3e37bb Run fmt
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-09-29 11:55:31 -07:00
Maksym Pavlenko 78cd9dda69 Fix docs
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-09-22 18:50:31 -07:00
Maksym Pavlenko 9d2ad01aa7 Remove vulnerable dependency found by cargo deny
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-09-19 15:12:58 -07:00
Maksym Pavlenko de34dc8760 Update snapshots dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-09-19 15:12:52 -07:00
Maksym Pavlenko 497f88ca86 Update proto dependencies
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-04-06 09:19:21 -07:00
Maksym Pavlenko 3b2b00f206 Update README
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2022-02-11 10:10:42 -08:00
dependabot[bot] 62755062d3
Update simple_logger requirement from 1.16 to 2.0
Updates the requirements on [simple_logger](https://github.com/borntyping/rust-simple_logger) to permit the latest version.
- [Release notes](https://github.com/borntyping/rust-simple_logger/releases)
- [Commits](https://github.com/borntyping/rust-simple_logger/compare/v1.16.0...v2.0.0)

---
updated-dependencies:
- dependency-name: simple_logger
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-19 21:37:30 +00:00
Maksym Pavlenko fcb5cc5966 Update crate description
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00
Maksym Pavlenko a6b32c32bd Add README
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00
Maksym Pavlenko e5d003c8bb Add snapshots example
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00
Maksym Pavlenko 70f7cacdc1 Implement GRPC wrapper for snapshots
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00
Maksym Pavlenko e3b7f97813 Generate GRPC bindings for snapshots
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00
Maksym Pavlenko b342a674b1 Add snapshots crate
Signed-off-by: Maksym Pavlenko <pavlenko.maksym@gmail.com>
2021-12-18 10:39:28 -08:00