buildx/vendor/github.com/containerd/continuity
Tonis Tiigi 13a426fca6
vendor: update buildkit to v0.18.0-rc1
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2024-11-21 12:57:27 -08:00
..
devices vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
driver vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
fs vendor: update buildkit to v0.18.0-rc1 2024-11-21 12:57:27 -08:00
pathdriver test: add basic integration tests 2023-05-18 14:26:12 +01:00
proto test: add basic integration tests 2023-05-18 14:26:12 +01:00
sysx vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
testutil vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
.gitignore test: add basic integration tests 2023-05-18 14:26:12 +01:00
.golangci.yml vendor: update buildkit to v0.18.0-rc1 2024-11-21 12:57:27 -08:00
.mailmap test: add basic integration tests 2023-05-18 14:26:12 +01:00
AUTHORS vendor: update moby/buildkit 2022-05-25 10:20:57 +01:00
LICENSE vendor: initial vendor 2019-03-22 16:27:37 -07:00
Makefile vendor: update buildkit to v0.18.0-rc1 2024-11-21 12:57:27 -08:00
README.md test: add basic integration tests 2023-05-18 14:26:12 +01:00
context.go vendor: update buildkit to master@c36941f4a10e 2023-05-30 09:10:52 +01:00
digests.go test: add basic integration tests 2023-05-18 14:26:12 +01:00
groups_unix.go test: add basic integration tests 2023-05-18 14:26:12 +01:00
hardlinks.go vendor: update buildkit to master@c36941f4a10e 2023-05-30 09:10:52 +01:00
hardlinks_unix.go vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
hardlinks_windows.go test: add basic integration tests 2023-05-18 14:26:12 +01:00
ioutils.go vendor: update buildkit to master@c36941f4a10e 2023-05-30 09:10:52 +01:00
manifest.go vendor: update buildkit to v0.18.0-rc1 2024-11-21 12:57:27 -08:00
resource.go test: add basic integration tests 2023-05-18 14:26:12 +01:00
resource_unix.go vendor: update buildkit to v0.17.0-rc2 2024-10-28 15:39:50 -07:00
resource_windows.go test: add basic integration tests 2023-05-18 14:26:12 +01:00

README.md

continuity

Go Reference Build Status

A transport-agnostic, filesystem metadata manifest system

This project is a staging area for experiments in providing transport agnostic metadata storage.

See opencontainers/runtime-spec#11 for more details.

Manifest Format

A continuity manifest encodes filesystem metadata in Protocol Buffers. Refer to proto/manifest.proto for more details.

Usage

Build:

$ make

Create a manifest (of this repo itself):

$ ./bin/continuity build . > /tmp/a.pb

Dump a manifest:

$ ./bin/continuity ls /tmp/a.pb
...
-rw-rw-r--      270 B   /.gitignore
-rw-rw-r--      88 B    /.mailmap
-rw-rw-r--      187 B   /.travis.yml
-rw-rw-r--      359 B   /AUTHORS
-rw-rw-r--      11 kB   /LICENSE
-rw-rw-r--      1.5 kB  /Makefile
...
-rw-rw-r--      986 B   /testutil_test.go
drwxrwxr-x      0 B     /version
-rw-rw-r--      478 B   /version/version.go

Verify a manifest:

$ ./bin/continuity verify . /tmp/a.pb

Break the directory and restore using the manifest:

$ chmod 777 Makefile
$ ./bin/continuity verify . /tmp/a.pb
2017/06/23 08:00:34 error verifying manifest: resource "/Makefile" has incorrect mode: -rwxrwxrwx != -rw-rw-r--
$ ./bin/continuity apply . /tmp/a.pb
$ stat -c %a Makefile
664
$ ./bin/continuity verify . /tmp/a.pb

Platforms

continuity primarily targets Linux. Continuity may compile for and work on other operating systems, but those platforms are not tested.

Contribution Guide

Building Proto Package

If you change the proto file you will need to rebuild the generated Go with go generate.

$ go generate ./proto

Project details

continuity is a containerd sub-project, licensed under the Apache 2.0 license. As a containerd sub-project, you will find the:

information in our containerd/project repository.