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 Wolf
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 Wolf
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 Wolf
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 Wolf
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
Josh Wolf
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