github.com/argoproj/argo-cd/v2@v2.10.5/docs/user-guide/jsonnet.md (about)

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