Skip to content

srerickson/chaparral

Repository files navigation

chaparral

Chaparral is an API service for storing and accessing versioned datasets. It uses the Oxford Common File Layout (OCFL) specification for storing, versioning, and validating content. File system and S3 backends are supported.

Warning

This project is in early development. Expect bugs and breaking changes.

Server

The server is distributed as a container image: srerickson/chaparral). See config.yaml for an example configuration

API

Chaparral's server API is defined using protocol buffers/gRPC and implemented using connect-go. It supports both gRPC and http/1.1 requests. Documentation is available through the Buf schema registry.

Building Images

Images are built with ko

 VERSION=0.x.y KO_DOCKER_REPO=srerickson ko -B build ./cmd/chaparral

Authorization

Chaparral can use signed web tokens for authentication by setting the CHAPARRAL_PUBKEY_FILE environment variable or the pubkey_file config value to the path of a PEM-encoded RSA public key.

Generate a new RSA key pair:

# generate a new key
$ openssl genrsa -out auth.pem 2048

# export public key
$openssl pkey -in auth.pem -pubout > auth-pub.pem

About the name

Chaparral is a shrubland plant community found primarily in California, in southern Oregon and in the northern portion of the Baja California Peninsula in Mexico. It is shaped by a Mediterranean climate (mild wet winters and hot dry summers) and infrequent, high-intensity crown fires. (Wikipedia)

About

data versioning server & client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages