Skip to content

Commit

Permalink
renderer/jsonnet: Allow configuring jpaths
Browse files Browse the repository at this point in the history
  • Loading branch information
brancz committed May 19, 2023
1 parent 6e112f4 commit a0089e6
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 3 deletions.
12 changes: 10 additions & 2 deletions main.go
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ func Main() int {

rendererFileDirectory string
rendererFileRollout string
rendererJsonnetJpaths stringList
rendererJsonnetEntrypoint string
rendererJsonnetExtStrs stringList

Expand All @@ -104,7 +105,8 @@ func Main() int {
s.StringVar(&rendererFileDirectory, "renderer.file.dir", "manifests/", "Directory to read files from.")
s.StringVar(&rendererFileRollout, "renderer.file.rollout", "rollout.yaml", "Plain rollout spec to read.")
s.StringVar(&rendererJsonnetEntrypoint, "renderer.jsonnet.entrypoint", "jsonnet/main.jsonnet", "Jsonnet file to execute to render.")
s.Var(&rendererJsonnetExtStrs, "renderer.jsonnet.ext-str", "Jsonnet ext-str to pass to the jsonnot VM.")
s.Var(&rendererJsonnetExtStrs, "renderer.jsonnet.ext-str", "Jsonnet ext-str to pass to the jsonnet VM.")
s.Var(&rendererJsonnetJpaths, "renderer.jsonnet.jpaths", "Jsonnet jpaths to pass to the jsonnet VM.")

s.StringVar(&sourceDatabaseFile, "source.database.file", "", "File to read database queries from as sources.")

Expand Down Expand Up @@ -230,7 +232,13 @@ func Main() int {
{
switch renderProviderName {
case "jsonnet":
renderer, err = jsonnet.NewRenderer(logger, rendererJsonnetEntrypoint, sources, []string(rendererJsonnetExtStrs))
renderer, err = jsonnet.NewRenderer(
logger,
rendererJsonnetEntrypoint,
sources,
[]string(rendererJsonnetExtStrs),
[]string(rendererJsonnetJpaths),
)
if err != nil {
logger.Log("msg", "failed to create jsonnet renderer", "err", err)
return 1
Expand Down
5 changes: 4 additions & 1 deletion render/jsonnet/jsonnet.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,15 @@ type Renderer struct {
entrypoint string
sources map[string]func(context.Context) ([]byte, error)
extStrs map[string]string
jpaths []string
}

func NewRenderer(
logger log.Logger,
entrypoint string,
sources map[string]func(context.Context) ([]byte, error),
extStrsList []string,
jpaths []string,
) (*Renderer, error) {
extStrs := map[string]string{}
for _, extStr := range extStrsList {
Expand All @@ -43,6 +45,7 @@ func NewRenderer(
entrypoint: entrypoint,
sources: sources,
extStrs: extStrs,
jpaths: jpaths,
}, nil
}

Expand All @@ -53,7 +56,7 @@ type result struct {

func (r *Renderer) Render(ctx context.Context, config []byte) (*render.Result, error) {
jsonnetMain := r.entrypoint
jpaths := []string{"vendor"}
jpaths := r.jpaths
jsonnetMainContent, err := ioutil.ReadFile(jsonnetMain)
if err != nil {
return nil, fmt.Errorf("could not read main jsonnet file: %s", jsonnetMain)
Expand Down

0 comments on commit a0089e6

Please sign in to comment.