Commit Graph
79 Commits
Author SHA1 Message Date
Josh Wolf cd93d7aaea make our implementation of oci content store public, remove redundant wrapper Store methods in favor of OCI implementation, add tests for store.Copy*() 2021-12-09 11:09:09 -07:00
Josh Wolf 6c1640f694 ensure filetests share a setup/teardown 2021-12-08 11:21:36 -07:00
Josh Wolf 1d7ea22bb0 ensure content type for files is properly detected by getter, add test verifying this 2021-12-08 11:01:08 -07:00
Josh Wolf 85ae4205cd remove store.List in favor of store.Walk, restructure store.Walk to walk index descriptors instead of manifests 2021-12-08 11:00:32 -07:00
Josh Wolf 395547ff90 better default support for registries requiring auth, and configurable for non-keychain uses 2021-12-08 09:33:21 -07:00
Josh Wolf bb83d5ce5b allow file content to be passed a custom config 2021-12-08 09:25:45 -07:00
Josh Wolf 49f7b5ea0e add more public methods for building config files from any marshallable source 2021-12-08 09:25:27 -07:00
Josh Wolf a6831454e5 use internal oci store for store content backing 2021-12-08 09:24:16 -07:00
Josh Wolf e812c2107c embrace the thick chart 2021-12-03 23:21:20 -07:00
Josh Wolf a8e9d853db update dependencies to play nicely with controller-manager 2021-12-03 23:10:55 -07:00
Josh Wolf 9d5fae4c1d fix download/extract to use MapperStore 2021-12-03 20:19:55 -07:00
Josh Wolf d55e7572e6 remove custom file store in favor of less hacky IoContentWriter extended on top of existing file store 2021-12-03 14:01:06 -07:00
Josh Wolf c7ae551e6f move types to constants 2021-12-03 14:00:20 -07:00
Josh Wolf f0abcf162a move servers to internal, we're not blowing any minds here 2021-12-02 08:12:26 -07:00
Josh Wolf 34836dacb0 add getter, store, and file tests 2021-12-01 22:49:16 -07:00
Josh Wolf 5855f79156 allow reference string to be passed to AddArtifact instead of name.ParseReference for ease of use, move reference validation within AddArtifact 2021-12-01 22:49:15 -07:00
Josh Wolf d27ad7c7e8 add basic store tests 2021-12-01 22:49:15 -07:00
Josh Wolf d87d8a2041 primary: refactor store and transport to use oci-layouts and add fileserver feature
minors:
* add optional 'extraImages' to ThickCharts
* refactor File content into generic getter interfaces
* refactor artifact.Config into an actual usable interface (by File content)
* refactor 'copy' cli command to use oras mappers
* refactor 'serve' cli command to server registry and/or fileserver
2021-12-01 14:53:06 -07:00
Josh Wolf 26759a14a2 clean up and standardize logging usages 2021-11-16 12:00:18 -07:00
Josh WolfandGitHub 641e76a314 ensure list doesn't prematurely exit on tagless images (#71)
* ensure list doesn't prematurely exit on tagless images
* update testdata examples
2021-11-12 15:26:50 -07:00
Josh Wolf 707b30d30d fix bug packaging thick charts 2021-11-12 14:50:26 -07:00
Josh WolfandGitHub fc6332d587 update readme, docs, roadmap, and several cli docs (#67)
* update readme, docs, roadmap, and several cli docs

* update dead links
2021-11-12 09:49:28 -07:00
Josh Wolf 83d989ab85 add version command to cli 2021-11-11 13:52:15 -07:00
Josh WolfandGitHub 933af22907 mvp rc prep (#65)
* add bootstrap script to k3s collection
* update ci to 1.17.x and temporarily skip tests (:
* remove helmtemplater
* update dependencies
* update releaser
* rename extremely poorly worded gitignore
2021-11-11 12:11:29 -07:00
Josh Wolf 8146a88a5d move cache logic to a store configurable option 2021-11-10 20:26:12 -07:00
Josh Wolf 4ee6129154 add thick chart builtin collection (chart with required images) 2021-11-10 20:11:15 -07:00
Josh Wolf 20cd37e173 add collections type (group of contents), and initial k3s builtin 2021-11-10 19:36:50 -07:00
Josh WolfandGitHub 8ab9fd6a38 represent all content as oci layouts (artifact.OCI interface), add blob caching and ephemeral stores (#59)
* represent all content as artifact.OCI interface and manipulate/add all content using oci layouts
* initial brew taps and macos universal binary
* change mediaType to string for better compatibility with other libraries
* ensure config is minimally viable for file/charts
* add transparent layer caching (filesystem) to artifact operations, clean up layer interface used by file/chart
* add store list and store copy commands

Signed-off-by: Josh Wolf <josh@joshwolf.dev>
2021-11-10 10:37:21 -07:00
Josh Wolf 4835699746 add _basic_ unit tests to each content type 2021-11-01 13:00:51 -06:00
372af894b3 refactor to baseline on pluggable oci collection/distribution (#41)
refactor to baseline on pluggable oci collection/distribution

Co-authored-by: Josh Wolf <josh@joshwolf.dev>
2021-10-29 15:55:20 -06:00
Josh Wolf 39e37cc04a clean up unused move fns 2021-06-24 07:39:20 -06:00
Josh Wolf 25d1c5eda0 bug: fix error when running a package with 0 bundles 2021-06-22 10:10:29 -06:00
Josh Wolf 6c340424de ensure layout test cleans up after itself 2021-06-18 07:30:39 -06:00
Josh Wolf 078a4fa01d clean up unused code/scripts 2021-06-18 07:04:54 -06:00
Jennifer Power 183cd3a0fb chore: added tests and changed from logrus to logger interface 2021-06-17 16:42:32 -04:00
Josh Wolf 1136a6ecc3 simplify readme down to current alpha capabilities with minimal examples 2021-06-17 14:05:57 -06:00
Josh Wolf 3c043915e4 add user defined images to packages, make cli args and config file mutually exclusive 2021-06-16 15:43:44 -06:00
Josh Wolf 54fe260648 add fleet options slightly differently 2021-06-16 09:48:15 -06:00
Josh Wolf 968eba0a8b ensure templating works for bundles identified through fleet.yaml 2021-06-16 09:34:23 -06:00
Josh Wolf 84a76d5b08 add basic logging 2021-06-16 07:22:59 -06:00
Josh Wolf 560a5049ef Merge branch 'dev' of https://github.com/rancherfederal/hauler into dev 2021-06-15 16:11:24 -06:00
Josh Wolf 5696bc5042 move create/bootstrap to pkg subcommand, rename to build and run 2021-06-15 15:59:07 -06:00
Josh Wolf e374314cae refactor Driver interface 2021-06-15 15:13:18 -06:00
Jennifer Power 3cc40cd4cd chore: relocate and copy initial implementation 2021-06-15 14:07:04 -04:00
Jennifer Power ff8e195a7c fix: testing new logging options and the way global opts are passed 2021-06-14 06:32:21 -04:00
Josh Wolf fe6060af3c clean up package creation process 2021-06-10 23:30:19 -06:00
Josh Wolf 1891164290 add testdata 2021-06-10 15:01:54 -06:00
Josh Wolf 541d774857 add some tests for image discovery, flesh out boot process 2021-06-10 14:42:13 -06:00
Josh Wolf 4287dd643d Merge remote-tracking branch 'origin/fleet-jp' into fleet 2021-06-10 11:10:40 -06:00
Josh Wolf f5e2ea48f9 split out boot process into init/pre/boot/post, clean up some hardcoded things, and add initial logging structure 2021-06-10 11:08:43 -06:00