mirror of
				https://gitea.com/Lydanne/buildx.git
				synced 2025-11-04 10:03:42 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			90 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# continuity
 | 
						|
 | 
						|
[](https://pkg.go.dev/github.com/containerd/continuity)
 | 
						|
[](https://github.com/containerd/continuity/actions?query=workflow%3AContinuity+branch%3Amain)
 | 
						|
 | 
						|
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](https://github.com/opencontainers/runtime-spec/issues/11)
 | 
						|
for more details.
 | 
						|
 | 
						|
## Manifest Format
 | 
						|
 | 
						|
A continuity manifest encodes filesystem metadata in Protocol Buffers.
 | 
						|
Refer to [proto/manifest.proto](proto/manifest.proto) for more details.
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
Build:
 | 
						|
 | 
						|
```console
 | 
						|
$ make
 | 
						|
```
 | 
						|
 | 
						|
Create a manifest (of this repo itself):
 | 
						|
 | 
						|
```console
 | 
						|
$ ./bin/continuity build . > /tmp/a.pb
 | 
						|
```
 | 
						|
 | 
						|
Dump a manifest:
 | 
						|
 | 
						|
```console
 | 
						|
$ ./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:
 | 
						|
 | 
						|
```console
 | 
						|
$ ./bin/continuity verify . /tmp/a.pb
 | 
						|
```
 | 
						|
 | 
						|
Break the directory and restore using the manifest:
 | 
						|
```console
 | 
						|
$ 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`.
 | 
						|
 | 
						|
```console
 | 
						|
$ go generate ./proto
 | 
						|
```
 | 
						|
 | 
						|
## Project details
 | 
						|
 | 
						|
continuity is a containerd sub-project, licensed under the [Apache 2.0 license](./LICENSE).
 | 
						|
As a containerd sub-project, you will find the:
 | 
						|
 * [Project governance](https://github.com/containerd/project/blob/main/GOVERNANCE.md),
 | 
						|
 * [Maintainers](https://github.com/containerd/project/blob/main/MAINTAINERS),
 | 
						|
 * and [Contributing guidelines](https://github.com/containerd/project/blob/main/CONTRIBUTING.md)
 | 
						|
 | 
						|
information in our [`containerd/project`](https://github.com/containerd/project) repository.
 |