nyl 0.9.1__tar.gz → 0.9.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- nyl-0.9.2/.changelog/0.9.2.toml +13 -0
- nyl-0.9.2/DEPRECATION_NOTICE.md +7 -0
- {nyl-0.9.1 → nyl-0.9.2}/PKG-INFO +1 -1
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/changelog.md +11 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/basics.md +3 -2
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/locals.md +3 -3
- {nyl-0.9.1 → nyl-0.9.2}/pyproject.toml +1 -1
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/__init__.py +7 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/template.py +6 -2
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/profiles/config.py +9 -2
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/templating.py +9 -2
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.7.0.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.7.1.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.7.2.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.8.0.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.8.1.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.9.0.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.changelog/0.9.1.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.envrc +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.github/workflows/docker.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.github/workflows/docs.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.github/workflows/python.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.github/workflows/update-flake-lock.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/.gitignore +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/README.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-cmp/Dockerfile +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-cmp/README.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-cmp/plugin.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/.envrc +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/.secrets.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/.sops.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/README.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/argocd.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/nyl-project.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/argocd-with-nyl/nyl-secrets.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/index.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/applysets.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/argocd-plugin.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/cluster-connectivity.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration/environment.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration/profiles.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration/projects.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration/secrets.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration-api/profiles.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/configuration-api/secrets.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/glossary.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/components.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/inlining/helmcharts.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/inlining/overview.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/inlining/postprocessor.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/content/reference/templating/secrets.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/mkdocs.yml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/pyproject.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/docs/uv.lock +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/example/manifests/postgres.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/example/nyl-profiles.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/example/nyl-profiles.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/example/nyl-secrets.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/example/secrets.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/flake.lock +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/flake.nix +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/nix/uv.nix +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/renovate.json +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/slap.toml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/README.md +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/__init__.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/dynamic/__init__.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/dynamic/client.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/dynamic/discovery.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/dynamic/exceptions.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/dynamic/resource.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/watch/__init__.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/kubernetes/watch/watch.pyi +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/add.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/argocd.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/crds.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/new.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/profile.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/run.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/secrets.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/tools/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/tools/bcrypt.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/tools/sops.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/commands/tun.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/components.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/dispatch.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/dispatch_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/helmchart.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/helmchart_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/generator/statefulsecret.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/profiles/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/profiles/config_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/profiles/kubeconfig.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/profiles/tunnel.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/project/config.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/applyset.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/applyset_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/helmchart.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/helmchart_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/placeholder.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/postprocessor.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/postprocessor_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/resources/statefulsecret.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/config.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/config_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/kubernetes.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/null.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/sops.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/secrets/sops_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/templating_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/di.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/fs.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/fs_test.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/kubectl.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/kubernetes.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/kvstore.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/loads.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/logging.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/shell.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/testing.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/typer.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/types.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/src/nyl/tools/yaml.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/testdata/helm-test-chart/Chart.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/testdata/helm-test-chart/templates/sa.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/testdata/helm-test-chart/values.yaml +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/tests/__init__.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/tests/conftest.py +0 -0
- {nyl-0.9.1 → nyl-0.9.2}/uv.lock +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
release-date = "2025-04-22"
|
|
2
|
+
|
|
3
|
+
[[entries]]
|
|
4
|
+
id = "469033a3-ec4d-4a54-9294-b1608735bacb"
|
|
5
|
+
type = "improvement"
|
|
6
|
+
description = "Introduce new `values` object into templating evaluation namespace, replacing the `locals` object going forward. The `locals` name is still available but will be removed in an upcoming release."
|
|
7
|
+
author = "@NiklasRosenstein"
|
|
8
|
+
|
|
9
|
+
[[entries]]
|
|
10
|
+
id = "7cd10ee2-9c5a-4c23-8fe4-9f4d9291ceb4"
|
|
11
|
+
type = "feature"
|
|
12
|
+
description = "Allow defining parameters in the \"values\" of a profile, accessible via `${{ values.PARAM }}` throughout manifest rendering with the profile."
|
|
13
|
+
author = "@NiklasRosenstein"
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
The following is a list of features and functionalities that are deprecated and will be removed in a future version
|
|
2
|
+
of Nyl. This file serves as an announcement as well as reminder before cutting a new release.
|
|
3
|
+
|
|
4
|
+
## Deprecated Features
|
|
5
|
+
|
|
6
|
+
* `locals` in templates: The use of `locals` in templates is deprecated and will be removed in Nyl 0.10.x. Please
|
|
7
|
+
use `values` instead.
|
{nyl-0.9.1 → nyl-0.9.2}/PKG-INFO
RENAMED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
## 0.9.2 (2025-04-22)
|
|
2
|
+
|
|
3
|
+
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
|
|
4
|
+
<tr><td>Improvement</td><td>
|
|
5
|
+
|
|
6
|
+
Introduce new `values` object into templating evaluation namespace, replacing the `locals` object going forward. The `locals` name is still available but will be removed in an upcoming release.</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
|
|
7
|
+
<tr><td>Feature</td><td>
|
|
8
|
+
|
|
9
|
+
Allow defining parameters in the "values" of a profile, accessible via `${{ values.PARAM }}` throughout manifest rendering with the profile.</td><td></td><td></td><td>@NiklasRosenstein</td></tr>
|
|
10
|
+
</table>
|
|
11
|
+
|
|
1
12
|
## 0.9.1 (2025-04-20)
|
|
2
13
|
|
|
3
14
|
<table><tr><th>Type</th><th>Description</th><th>PR</th><th>Issues</th><th>Author</th></tr>
|
|
@@ -17,5 +17,6 @@ Currently, only the following names are available in the scope of the expression
|
|
|
17
17
|
|
|
18
18
|
- `secrets`: A reference to the secrets provider. This is used to retrieve secrets from the configured secrets
|
|
19
19
|
provider. See [Secrets](./secrets.md) for more information.
|
|
20
|
-
- `
|
|
21
|
-
|
|
20
|
+
- `values`: A container for values defined on the profile-level (see [Profiles](../configuration/profiles.md)) or in the
|
|
21
|
+
manifest (see [Local Variables](./locals.md)). (Note that the use of `locals` instead of `values` is deprecated and
|
|
22
|
+
will be removed in Nyl 0.10.x).
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
You may define a YAML object in your Kubernetes manifest that is used to define variables that can later be accessed
|
|
4
4
|
in the same manifest to achieve some level of DRY-ness. This is done by not setting any `apiVersion` or `kind`, and
|
|
5
|
-
instead just define variables prefixed with `$`. Variables can later be accessed using the `${{
|
|
5
|
+
instead just define variables prefixed with `$`. Variables can later be accessed using the `${{ values.var }}`.
|
|
6
6
|
|
|
7
7
|
Note that expressions in values assigned to variables are not currently supported. This means that you cannot use e.g.
|
|
8
|
-
`${{ secrets.get("my-secret") }}` in the value of a variable, nor can you use `${{
|
|
8
|
+
`${{ secrets.get("my-secret") }}` in the value of a variable, nor can you use `${{ values.var }}`.
|
|
9
9
|
|
|
10
10
|
## Example
|
|
11
11
|
|
|
@@ -17,7 +17,7 @@ $name: my-app
|
|
|
17
17
|
apiVersion: apps/v1
|
|
18
18
|
kind: Deployment
|
|
19
19
|
metadata:
|
|
20
|
-
name: ${{
|
|
20
|
+
name: ${{ values.name }}
|
|
21
21
|
# ...
|
|
22
22
|
```
|
|
23
23
|
|
|
@@ -20,6 +20,7 @@ from typer import Option, Typer
|
|
|
20
20
|
from kubernetes.client.api_client import ApiClient
|
|
21
21
|
from nyl import __version__
|
|
22
22
|
from nyl.profiles import ProfileManager
|
|
23
|
+
from nyl.profiles.config import Profile
|
|
23
24
|
from nyl.project.config import ProjectConfig
|
|
24
25
|
from nyl.secrets.config import SecretsConfig
|
|
25
26
|
from nyl.tools.di import DependenciesProvider
|
|
@@ -110,6 +111,12 @@ def _callback(
|
|
|
110
111
|
PROVIDER.get(ProfileManager), PROVIDER.get(ApiClientConfig).profile
|
|
111
112
|
),
|
|
112
113
|
)
|
|
114
|
+
PROVIDER.set_lazy(
|
|
115
|
+
Profile,
|
|
116
|
+
lambda: PROVIDER.get(ProfileManager).config.profiles[
|
|
117
|
+
PROVIDER.get(ApiClientConfig).profile or template.DEFAULT_PROFILE
|
|
118
|
+
],
|
|
119
|
+
)
|
|
113
120
|
|
|
114
121
|
|
|
115
122
|
@app.command()
|
|
@@ -16,6 +16,7 @@ from nyl.commands import PROVIDER, ApiClientConfig, app
|
|
|
16
16
|
from nyl.generator import reconcile_generator
|
|
17
17
|
from nyl.generator.dispatch import DispatchingGenerator
|
|
18
18
|
from nyl.profiles import ProfileManager
|
|
19
|
+
from nyl.profiles.config import Profile
|
|
19
20
|
from nyl.project.config import ProjectConfig
|
|
20
21
|
from nyl.resources import API_VERSION_INLINE, NylResource
|
|
21
22
|
from nyl.resources.applyset import APPLYSET_LABEL_PART_OF, ApplySet
|
|
@@ -64,7 +65,7 @@ def get_profile_kubernetes_client(profiles: ProfileManager, profile: str | None)
|
|
|
64
65
|
|
|
65
66
|
If no *profile* is specified, but the profile manager contains at least one profile, the *profile* argument will
|
|
66
67
|
default to the value of :data:`DEFAULT_PROFILE` (which is `"default"`). Otherwise, if no profile is selected and
|
|
67
|
-
none is configured, the standard Kubernetes config
|
|
68
|
+
none is configured, the standard Kubernetes config loading is used (i.e. try `KUBECONFIG` and then
|
|
68
69
|
`~/.kube/config`).
|
|
69
70
|
"""
|
|
70
71
|
|
|
@@ -210,6 +211,9 @@ def template(
|
|
|
210
211
|
else project.config.settings.on_lookup_failure,
|
|
211
212
|
)
|
|
212
213
|
|
|
214
|
+
# Seed the template engine with the profile values.
|
|
215
|
+
vars(template_engine.values).update(PROVIDER.get(Profile).values)
|
|
216
|
+
|
|
213
217
|
# Look for objects that contain local variables and feed them into the template engine.
|
|
214
218
|
for manifest in source.manifests[:]:
|
|
215
219
|
if "apiVersion" in manifest or "kind" in manifest:
|
|
@@ -227,7 +231,7 @@ def template(
|
|
|
227
231
|
exit(1)
|
|
228
232
|
for key, value in manifest.items():
|
|
229
233
|
assert key.startswith("$"), key
|
|
230
|
-
setattr(template_engine.
|
|
234
|
+
setattr(template_engine.values, key[1:], value)
|
|
231
235
|
source.manifests.remove(manifest)
|
|
232
236
|
|
|
233
237
|
# Begin populating the default namespace to resources.
|
|
@@ -2,7 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
from dataclasses import dataclass, field
|
|
4
4
|
from pathlib import Path
|
|
5
|
-
from typing import Literal
|
|
5
|
+
from typing import Any, Literal
|
|
6
6
|
|
|
7
7
|
from loguru import logger
|
|
8
8
|
|
|
@@ -13,7 +13,14 @@ from nyl.tools.loads import loadf
|
|
|
13
13
|
@dataclass
|
|
14
14
|
class Profile:
|
|
15
15
|
"""
|
|
16
|
-
|
|
16
|
+
A profile embodies a set of configurations for a Kubernetes cluster that resources will be deployed to using Nyl.
|
|
17
|
+
It defines the Kubeconfig to use, whether to use an SSH tunnel to reach the cluster, as well as global values that
|
|
18
|
+
are accessible during rendering any manifest with the profile activated.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
values: dict[str, Any] = field(default_factory=dict)
|
|
22
|
+
"""
|
|
23
|
+
Global values that are accessible during manifest rendering under the `values` object.
|
|
17
24
|
"""
|
|
18
25
|
|
|
19
26
|
kubeconfig: LocalKubeconfig | KubeconfigFromSsh = field(default_factory=lambda: LocalKubeconfig())
|
|
@@ -173,7 +173,7 @@ class NylTemplateEngine:
|
|
|
173
173
|
|
|
174
174
|
secrets: SecretProvider
|
|
175
175
|
client: ApiClient
|
|
176
|
-
|
|
176
|
+
values: Namespace = field(default_factory=Namespace)
|
|
177
177
|
on_lookup_failure: Literal["Error", "CreatePlaceholder", "SkipResource"] = "Error"
|
|
178
178
|
|
|
179
179
|
def __post_init__(self) -> None:
|
|
@@ -196,7 +196,14 @@ class NylTemplateEngine:
|
|
|
196
196
|
NylTemplateEngine.current = prev
|
|
197
197
|
|
|
198
198
|
def _new_engine(self) -> _TemplateEngine:
|
|
199
|
-
return _TemplateEngine(
|
|
199
|
+
return _TemplateEngine(
|
|
200
|
+
{
|
|
201
|
+
"secrets": self.secrets,
|
|
202
|
+
"locals": self.values, # TODO: Deprecate in 0.10.x
|
|
203
|
+
"values": self.values,
|
|
204
|
+
**registered_functions,
|
|
205
|
+
}
|
|
206
|
+
)
|
|
200
207
|
|
|
201
208
|
def evaluate(self, value: Manifests, recursive: bool = True) -> Manifests:
|
|
202
209
|
result = []
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{nyl-0.9.1 → nyl-0.9.2}/.envrc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{nyl-0.9.1 → nyl-0.9.2}/uv.lock
RENAMED
|
File without changes
|