First cut at core app metadata management facilities
Much of the tooling build around ksonnet applications will be powered by metadata presented in a structured directory format. This is similar in principle to how Hugo and Rails structure web applications. This commit will begin the process of introducing a FS-based state machine that manages this directory structure. Primarily, this involves introducing: 1. Init routines for the directory structure 2. Routines to search parent directories for a ksonnet application (similar to how git does this with repositories) Initially, the directory structures looks like this: app-name/ .ksonnet/ Metadata for ksonnet components/ Top-level Kubernetes objects defining application lib/ User-written .libsonnet files vendor/ Mixin libraries, prototypes The `.ksonnet` file marks the application root, making it possible to search parent directories for the root. As time continues, more verbs will be introduced to manipulate this metadata (including, e.g., vendoring dependencies, searching prototypes, and so on).
Showing
- Makefile 1 addition, 1 deletionMakefile
- metadata/clusterspec.go 43 additions, 0 deletionsmetadata/clusterspec.go
- metadata/clusterspec_test.go 76 additions, 0 deletionsmetadata/clusterspec_test.go
- metadata/interface.go 80 additions, 0 deletionsmetadata/interface.go
- metadata/manager.go 138 additions, 0 deletionsmetadata/manager.go
- metadata/manager_test.go 133 additions, 0 deletionsmetadata/manager_test.go
metadata/clusterspec.go
0 → 100644
metadata/clusterspec_test.go
0 → 100644
metadata/interface.go
0 → 100644
metadata/manager.go
0 → 100644
metadata/manager_test.go
0 → 100644
Please register or sign in to comment