github.com/argoproj/argo-cd@v1.8.7/docs/user-guide/jsonnet.md (about) 1 # Jsonnet 2 3 Any file matching `*.jsonnet` in a directory app is treated as a Jsonnet file. ArgoCD evaluates the Jsonnet and is able to parse a generated object or array. 4 5 ## Build Environment 6 7 > v1.4 8 9 Jsonnet apps have access to the [standard build environment](build-environment.md) via substitution into *TLAs* and *external variables*. 10 It is also possible to add a shared library (e.g. `vendor` folder) relative to the repository root. 11 12 E.g. via the CLI: 13 14 ```bash 15 argocd app create APPNAME \ 16 --jsonnet-ext-str 'app=${ARGOCD_APP_NAME}' \ 17 --jsonnet-tla-str 'ns=${ARGOCD_APP_NAMESPACE}' \ 18 --jsonnet-libs 'vendor' 19 ``` 20 21 Or by declarative syntax: 22 23 ```yaml 24 directory: 25 jsonnet: 26 extVars: 27 - name: app 28 value: $ARGOCD_APP_NAME 29 tlas: 30 - name: ns 31 value: $ARGOCD_APP_NAMESPACE 32 libs: 33 - vendor 34 ```