diff --git a/README.md b/README.md index aa15031..7cfd94f 100644 --- a/README.md +++ b/README.md @@ -2,23 +2,25 @@ ## Airgap Swiss Army Knife -> ⚠️ This project is still in active development and *not* Generally Available (GA). Most of the core functionality and features are ready, but may have breaking changes. Please review the [Release Notes](https://github.com/rancherfederal/hauler/releases) for more information! +> ⚠️ **Please Note:** Hauler and the Hauler Documentation are recently Generally Available (GA). -`Rancher Government Hauler` simplifies the airgap experience without requiring users to adopt a specific workflow. **Hauler** simplifies the airgapping process, by representing assets (images, charts, files, etc...) as content and collections to allow users to easily fetch, store, package, and distribute these assets with declarative manifests or through the command line. +`Rancher Government Hauler` simplifies the airgap experience without requiring operators to adopt a specific workflow. **Hauler** simplifies the airgapping process, by representing assets (images, charts, files, etc...) as content and collections to allow operators to easily fetch, store, package, and distribute these assets with declarative manifests or through the command line. -`Hauler` does this by storing contents and collections as OCI Artifacts and allows users to serve contents and collections with an embedded registry and fileserver. Additionally, `Hauler` has the ability to store and inspect various non-image OCI Artifacts. +`Hauler` does this by storing contents and collections as OCI Artifacts and allows operators to serve contents and collections with an embedded registry and fileserver. Additionally, `Hauler` has the ability to store and inspect various non-image OCI Artifacts. For more information, please review the **[Hauler Documentation](https://rancherfederal.github.io/hauler-docs)!** ## Installation ### Linux/Darwin + ```bash # installs latest release curl -sfL https://get.hauler.dev | bash ``` ### Homebrew + ```bash # installs latest release brew tap rancherfederal/homebrew-tap @@ -26,6 +28,7 @@ brew install hauler ``` ### Windows + ```bash # coming soon ``` @@ -33,6 +36,7 @@ brew install hauler ## Acknowledgements `Hauler` wouldn't be possible without the open-source community, but there are a few projects that stand out: -* [go-containerregistry](https://github.com/google/go-containerregistry) -* [oras cli](https://github.com/oras-project/oras) -* [cosign](https://github.com/sigstore/cosign) + +- [oras cli](https://github.com/oras-project/oras) +- [cosign](https://github.com/sigstore/cosign) +- [go-containerregistry](https://github.com/google/go-containerregistry) diff --git a/ROADMAP.md b/ROADMAP.md deleted file mode 100644 index bf627ab..0000000 --- a/ROADMAP.md +++ /dev/null @@ -1,50 +0,0 @@ -# Hauler Roadmap - -## \> v0.2.0 - -- Leverage `referrers` api to robustly link content/collection -- Support signing for all `artifact.OCI` contents -- Support encryption for `artifact.OCI` layers -- Support incremental updates to stores (some implementation of layer diffing) -- Safely embed container runtime for user created `collections` creation and transformation -- Better defaults/configuration/security around for long-lived embedded registry -- Better support multi-platform content -- Better leverage `oras` (`>=0.5.0`) for content relocation -- Store git repos as CAS in OCI format - -## v0.2.0 - MVP 2 - -- Re-focus on cli and framework for oci content fetching and delivery -- Focus on initial key contents - - Files (local/remote) - - Charts (local/remote) - - Images -- Establish framework for `content` and `collections` -- Define initial `content` types (`file`, `chart`, `image`) -- Define initial `collection` types (`thickchart`, `k3s`) -- Define framework for manipulating OCI content (`artifact.OCI`, `artifact.Collection`) - -## v0.1.0 - MVP 1 - -- Install single-node k3s cluster - - Support tarball and rpm installation methods - - Target narrow set of known Operating Systems to have OS-specific code if needed -- Serve container images - - Collect images from image list file - - Collect images from image archives - - Deploy docker registry - - Populate registry with all images -- Serve git repositories - - Collect repos - - Deploy git server (Caddy? NGINX?) - - Populate git server with repos -- Serve files - - Collect files from directory, including subdirectories - - Deploy caddy file server - - Populate file server with directory contents - - NOTE: "generic" option - most other use cases can be satisfied by a specially crafted file - server directory - -## v0.0.x - -- Install single-node k3s cluster into an Ubuntu machine using the tarball installation method