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  ```