local base = import "argo_base.libsonnet"; base + { repo:: error "repo must be defined", chart:: $.name, version:: error "version must be defined", skipCrds:: false, values:: "", spec+: { source+: { repoURL: $.repo, chart: $.chart, targetRevision: $.version, } + ( if std.length($.values) > 0 then { helm+: { values: $.values } } else {} ) + ( if $.skipCrds then { helm+: { skipCrds: true } } else {} ) } }