dagdotdev

command module
v0.0.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 17, 2025 License: Apache-2.0 Imports: 12 Imported by: 0

README

oci.dag.dev

This is a web server for exploring the contents of an OCI registry.

In the future, it may be all the best kinds of dags.

This code is not production quality. It is a hack.

Running it

Use ko to build this.

This is very much tailored to running my own stuff on Cloud Run.

Some things will probably break if the environment is different.

For local testing, I usually:

CACHE_DIR=/tmp/oci go run ./cmd/oci -v

On Cloud Run, I set CACHE_BUCKET to a GCS bucket in the same region as the service.

If you want private GCP images to work via oauth, you need to set CLIENT_ID, CLIENT_SECRET, and REDIRECT_URL to the correct values.

If you want to use ambient creds, set AUTH=keychain.

Deploying to cloud run should look something like:

gcloud run deploy explore --image $(ko build ./cmd/oci -B)

It is a good idea to deploy it in the same region as your CACHE_BUCKET and (if possible) registry in order to avoid egress costs.

See also apk.dag.dev;

Contributions

Currently, this forks a lot of things in order to violate abstractions in the name of performance.

I'm very interested in anything that lets me unfork dependencies, docs, and features.

I'm somewhat interested in random cleanups, tests, and performance improvements.

I am okay with contributions that make this easier for you to run, as long as they don't add new external dependencies in a way that adds to my maintenance burden.

I am also not a frontend developer, so if there's something dumb I am doing with CSS or HTML that could be optimized or would make the frontend look nicer, I'm open to it; however, I will push back heavily against any javascript or frameworks unless there's a huge benefit to it.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
apk command
git command
oci command
zurl command
internal
and
Package and provides helpers for adding Close to io.{Reader|Writer}.
Package and provides helpers for adding Close to io.{Reader|Writer}.
apk
forks/compress/flate
Package flate implements the DEFLATE compressed data format, described in RFC 1951.
Package flate implements the DEFLATE compressed data format, described in RFC 1951.
forks/compress/gzip
Package gzip implements reading and writing of gzip format compressed files, as specified in RFC 1952.
Package gzip implements reading and writing of gzip format compressed files, as specified in RFC 1952.
forks/rsc.io/gitfs
Package gitfs presents a file tree downloaded from a remote Git repo as an in-memory fs.FS.
Package gitfs presents a file tree downloaded from a remote Git repo as an in-memory fs.FS.
forks/safefilepath
Package safefilepath manipulates operating-system file paths.
Package safefilepath manipulates operating-system file paths.
git
gzip
Package gzip provides helper functions for interacting with gzipped streams.
Package gzip provides helper functions for interacting with gzipped streams.
verify
Package verify provides a ReadCloser that verifies content matches the expected hash values.
Package verify provides a ReadCloser that verifies content matches the expected hash values.
xxd
zstd
Package zstd provides helper functions for interacting with zstd streams.
Package zstd provides helper functions for interacting with zstd streams.
pkg
forks/github.com/google/go-containerregistry/internal/and
Package and provides helpers for adding Close to io.{Reader|Writer}.
Package and provides helpers for adding Close to io.{Reader|Writer}.
forks/github.com/google/go-containerregistry/internal/compare
Package compare provides methods for comparing images, indexes, and layers.
Package compare provides methods for comparing images, indexes, and layers.
forks/github.com/google/go-containerregistry/internal/compression
Package compression abstracts over gzip and zstd.
Package compression abstracts over gzip and zstd.
forks/github.com/google/go-containerregistry/internal/depcheck
Package depcheck defines a test utility for ensuring certain packages don't take on heavy dependencies.
Package depcheck defines a test utility for ensuring certain packages don't take on heavy dependencies.
forks/github.com/google/go-containerregistry/internal/editor
Package editor implements a simple interface for interactive file editing.
Package editor implements a simple interface for interactive file editing.
forks/github.com/google/go-containerregistry/internal/estargz
Package estargz adapts the containerd estargz package to our abstractions.
Package estargz adapts the containerd estargz package to our abstractions.
forks/github.com/google/go-containerregistry/internal/gzip
Package gzip provides helper functions for interacting with gzipped streams.
Package gzip provides helper functions for interacting with gzipped streams.
forks/github.com/google/go-containerregistry/internal/httptest
Package httptest provides a method for testing a TLS server a la net/http/httptest.
Package httptest provides a method for testing a TLS server a la net/http/httptest.
forks/github.com/google/go-containerregistry/internal/legacy
Package legacy provides methods for interacting with legacy image formats.
Package legacy provides methods for interacting with legacy image formats.
forks/github.com/google/go-containerregistry/internal/redact
Package redact contains a simple context signal for redacting requests.
Package redact contains a simple context signal for redacting requests.
forks/github.com/google/go-containerregistry/internal/retry
Package retry provides methods for retrying operations.
Package retry provides methods for retrying operations.
forks/github.com/google/go-containerregistry/internal/retry/wait
Package wait is a subset of k8s.io/apimachinery to avoid conflicts in dependencies (specifically, logging).
Package wait is a subset of k8s.io/apimachinery to avoid conflicts in dependencies (specifically, logging).
forks/github.com/google/go-containerregistry/internal/verify
Package verify provides a ReadCloser that verifies content matches the expected hash values.
Package verify provides a ReadCloser that verifies content matches the expected hash values.
forks/github.com/google/go-containerregistry/internal/zstd
Package zstd provides helper functions for interacting with zstd streams.
Package zstd provides helper functions for interacting with zstd streams.
forks/github.com/google/go-containerregistry/pkg/authn
Package authn defines different methods of authentication for talking to a container registry.
Package authn defines different methods of authentication for talking to a container registry.
forks/github.com/google/go-containerregistry/pkg/authn/github
Package github provides a keychain for the GitHub Container Registry.
Package github provides a keychain for the GitHub Container Registry.
forks/github.com/google/go-containerregistry/pkg/compression
Package compression abstracts over gzip and zstd.
Package compression abstracts over gzip and zstd.
forks/github.com/google/go-containerregistry/pkg/crane
Package crane holds libraries used to implement the crane CLI.
Package crane holds libraries used to implement the crane CLI.
forks/github.com/google/go-containerregistry/pkg/gcrane
Package gcrane holds libraries used to implement the gcrane CLI.
Package gcrane holds libraries used to implement the gcrane CLI.
forks/github.com/google/go-containerregistry/pkg/legacy
Package legacy provides functionality to work with docker images in the v1 format.
Package legacy provides functionality to work with docker images in the v1 format.
forks/github.com/google/go-containerregistry/pkg/legacy/tarball
Package tarball provides facilities for writing v1 docker images (https://github.com/moby/moby/blob/master/image/spec/v1.md) from/to a tarball on-disk.
Package tarball provides facilities for writing v1 docker images (https://github.com/moby/moby/blob/master/image/spec/v1.md) from/to a tarball on-disk.
forks/github.com/google/go-containerregistry/pkg/logs
Package logs exposes the loggers used by this library.
Package logs exposes the loggers used by this library.
forks/github.com/google/go-containerregistry/pkg/name
Package name defines structured types for representing image references.
Package name defines structured types for representing image references.
forks/github.com/google/go-containerregistry/pkg/registry
Package registry implements a docker V2 registry and the OCI distribution specification.
Package registry implements a docker V2 registry and the OCI distribution specification.
forks/github.com/google/go-containerregistry/pkg/v1
Package v1 defines structured types for OCI v1 images
Package v1 defines structured types for OCI v1 images
forks/github.com/google/go-containerregistry/pkg/v1/cache
Package cache provides methods to cache layers.
Package cache provides methods to cache layers.
forks/github.com/google/go-containerregistry/pkg/v1/empty
Package empty provides an implementation of v1.Image equivalent to "FROM scratch".
Package empty provides an implementation of v1.Image equivalent to "FROM scratch".
Code generated by counterfeiter.
forks/github.com/google/go-containerregistry/pkg/v1/google
Package google provides facilities for listing images in gcr.io.
Package google provides facilities for listing images in gcr.io.
forks/github.com/google/go-containerregistry/pkg/v1/layout
Package layout provides facilities for reading/writing artifacts from/to an OCI image layout on disk, see:
Package layout provides facilities for reading/writing artifacts from/to an OCI image layout on disk, see:
forks/github.com/google/go-containerregistry/pkg/v1/match
Package match provides functionality for conveniently matching a v1.Descriptor.
Package match provides functionality for conveniently matching a v1.Descriptor.
forks/github.com/google/go-containerregistry/pkg/v1/mutate
Package mutate provides facilities for mutating v1.Images of any kind.
Package mutate provides facilities for mutating v1.Images of any kind.
forks/github.com/google/go-containerregistry/pkg/v1/partial
Package partial defines methods for building up a v1.Image from minimal subsets that are sufficient for defining a v1.Image.
Package partial defines methods for building up a v1.Image from minimal subsets that are sufficient for defining a v1.Image.
forks/github.com/google/go-containerregistry/pkg/v1/random
Package random provides a facility for synthesizing pseudo-random images.
Package random provides a facility for synthesizing pseudo-random images.
forks/github.com/google/go-containerregistry/pkg/v1/remote
Package remote provides facilities for reading/writing v1.Images from/to a remote image registry.
Package remote provides facilities for reading/writing v1.Images from/to a remote image registry.
forks/github.com/google/go-containerregistry/pkg/v1/remote/transport
Package transport provides facilities for setting up an authenticated http.RoundTripper given an Authenticator and base RoundTripper.
Package transport provides facilities for setting up an authenticated http.RoundTripper given an Authenticator and base RoundTripper.
forks/github.com/google/go-containerregistry/pkg/v1/stream
Package stream implements a single-pass streaming v1.Layer.
Package stream implements a single-pass streaming v1.Layer.
forks/github.com/google/go-containerregistry/pkg/v1/tarball
Package tarball provides facilities for reading/writing v1.Images from/to a tarball on-disk.
Package tarball provides facilities for reading/writing v1.Images from/to a tarball on-disk.
forks/github.com/google/go-containerregistry/pkg/v1/types
Package types holds common OCI media types.
Package types holds common OCI media types.
forks/github.com/google/go-containerregistry/pkg/v1/validate
Package validate provides methods for validating image correctness.
Package validate provides methods for validating image correctness.
forks/github.com/klauspost/compress/flate
Package flate implements the DEFLATE compressed data format, described in RFC 1951.
Package flate implements the DEFLATE compressed data format, described in RFC 1951.
forks/github.com/klauspost/compress/fse
Package fse provides Finite State Entropy encoding and decoding.
Package fse provides Finite State Entropy encoding and decoding.
forks/github.com/klauspost/compress/gzip
Package gzip implements reading and writing of gzip format compressed files, as specified in RFC 1952.
Package gzip implements reading and writing of gzip format compressed files, as specified in RFC 1952.
forks/github.com/klauspost/compress/huff0
This file contains the specialisation of Decoder.Decompress4X and Decoder.Decompress1X that use an asm implementation of thir main loops.
This file contains the specialisation of Decoder.Decompress4X and Decoder.Decompress1X that use an asm implementation of thir main loops.
forks/github.com/klauspost/compress/internal/cpuinfo
Package cpuinfo gives runtime info about the current CPU.
Package cpuinfo gives runtime info about the current CPU.
forks/github.com/klauspost/compress/internal/snapref
Package snapref implements the Snappy compression format.
Package snapref implements the Snappy compression format.
forks/github.com/klauspost/compress/zstd
Package zstd provides decompression of zstandard files.
Package zstd provides decompression of zstandard files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL