crossplane-function-pythonic 0.4.1__tar.gz → 0.4.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.
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/PKG-INFO +5 -4
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/README.md +4 -3
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/__about__.py +1 -1
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/__init__.py +2 -1
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/command.py +2 -1
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/function.py +5 -5
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/grpc.py +1 -1
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/protobuf.py +7 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/render.py +334 -324
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/cluster-function-pythonic.yaml +1 -1
- crossplane_function_pythonic-0.4.1/examples/connection-details-composition/access-keys.yaml → crossplane_function_pythonic-0.4.2/examples/connection-details-composition/observed.yaml +19 -0
- crossplane_function_pythonic-0.4.2/examples/connection-details-composition/render.sh +5 -0
- crossplane_function_pythonic-0.4.2/examples/connections/render.sh +7 -0
- crossplane_function_pythonic-0.4.2/examples/connections/resources.yaml +27 -0
- crossplane_function_pythonic-0.4.2/examples/function-go-templating/context/render.sh +3 -0
- crossplane_function_pythonic-0.4.2/examples/function-go-templating/functions/getCredentialData/render.sh +3 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/inline/composition.yaml +1 -2
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/recursive/render.sh +1 -1
- crossplane_function_pythonic-0.4.2/examples/function-go-templating/required-resources/render.sh +3 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/render.sh +1 -1
- crossplane_function_pythonic-0.4.2/examples/usages-extra/render.sh +3 -0
- crossplane_function_pythonic-0.4.1/examples/connection-details-composition/render.sh +0 -6
- crossplane_function_pythonic-0.4.1/examples/connection-details-composition/user.yaml +0 -18
- crossplane_function_pythonic-0.4.1/examples/connections/composite-connection.yaml +0 -8
- crossplane_function_pythonic-0.4.1/examples/connections/rds-connection.yaml +0 -8
- crossplane_function_pythonic-0.4.1/examples/connections/render.sh +0 -9
- crossplane_function_pythonic-0.4.1/examples/connections/step-credential.yaml +0 -8
- crossplane_function_pythonic-0.4.1/examples/function-go-templating/context/render.sh +0 -3
- crossplane_function_pythonic-0.4.1/examples/function-go-templating/functions/getCredentialData/render.sh +0 -3
- crossplane_function_pythonic-0.4.1/examples/function-go-templating/required-resources/render.sh +0 -3
- crossplane_function_pythonic-0.4.1/examples/usages-extra/render.sh +0 -3
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/.gitignore +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/LICENSE +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/__main__.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/auto_ready.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/composite.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/main.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/packages.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/crossplane/pythonic/version.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/README.md +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/aks/kubernetescluster.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/aks/resourcegroup.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/definition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/install.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/kustomization.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/providers.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/aks-cluster/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/connection-details-composition/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/connection-details-composition/definition.yaml +0 -0
- crossplane_function_pythonic-0.4.1/examples/connection-details-composition/secrets.yaml → crossplane_function_pythonic-0.4.2/examples/connection-details-composition/resources.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/connection-details-composition/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/connections/composition.yaml +0 -0
- crossplane_function_pythonic-0.4.1/examples/connections/rds-observed.yaml → crossplane_function_pythonic-0.4.2/examples/connections/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/connections/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/composition-v2.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/definition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/render-v2.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/eks-cluster/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/README.md +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/definition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/kustomization.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/runtime.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/vcluster.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/filing-system/vcluster.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/conditions/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/conditions/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/conditions/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/conditions/xrd.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/context/composition.yaml +1 -1
- /crossplane_function_pythonic-0.4.1/examples/function-go-templating/context/environmentConfigs.yaml → /crossplane_function_pythonic-0.4.2/examples/function-go-templating/context/resources.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/context/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/context/xrd.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/fromYaml/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/fromYaml/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/fromYaml/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getComposedResource/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getComposedResource/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getComposedResource/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getComposedResource/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getCompositeResource/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getCompositeResource/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getCompositeResource/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getCredentialData/composition.yaml +0 -0
- /crossplane_function_pythonic-0.4.1/examples/function-go-templating/functions/getCredentialData/credentials.yaml → /crossplane_function_pythonic-0.4.2/examples/function-go-templating/functions/getCredentialData/resources.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getCredentialData/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getResourceCondition/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getResourceCondition/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getResourceCondition/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/getResourceCondition/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/include/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/include/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/include/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/toYaml/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/toYaml/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/functions/toYaml/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/inline/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/inline/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/recursive/composition-real.yaml +0 -0
- /crossplane_function_pythonic-0.4.1/examples/function-go-templating/recursive/composition-wrapper.yaml → /crossplane_function_pythonic-0.4.2/examples/function-go-templating/recursive/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/recursive/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/required-resources/composition.yaml +0 -0
- /crossplane_function_pythonic-0.4.1/examples/function-go-templating/required-resources/required-resources.yaml → /crossplane_function_pythonic-0.4.2/examples/function-go-templating/required-resources/resources.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-go-templating/required-resources/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-sequencer/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-sequencer/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-sequencer/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-sequencer/sequencer.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/function-sequencer/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/get-started-app/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/get-started-app/definition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/get-started-app/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/get-started-app/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/get-started-app/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/kustomization.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/vcluster.py +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/helm-copy-secret/xrd.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/README.md +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/composition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/definition.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/observed.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/provider-ec2.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/import-existing-vpc/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/run-all.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/single-purpose/render.sh +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/single-purpose/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/usages-extra/composition.yaml +0 -0
- /crossplane_function_pythonic-0.4.1/examples/usages-extra/observedResources.yaml → /crossplane_function_pythonic-0.4.2/examples/usages-extra/observed.yaml +0 -0
- /crossplane_function_pythonic-0.4.1/examples/usages-extra/extraResources.yaml → /crossplane_function_pythonic-0.4.2/examples/usages-extra/resources.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/examples/usages-extra/xr.yaml +0 -0
- {crossplane_function_pythonic-0.4.1 → crossplane_function_pythonic-0.4.2}/pyproject.toml +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: crossplane-function-pythonic
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.2
|
|
4
4
|
Summary: A Python centric Crossplane Function
|
|
5
5
|
Project-URL: Documentation, https://github.com/crossplane-contrib/function-pythonic#readme
|
|
6
6
|
Project-URL: Issues, https://github.com/crossplane-contrib/function-pythonic/issues
|
|
@@ -83,7 +83,7 @@ kind: Function
|
|
|
83
83
|
metadata:
|
|
84
84
|
name: function-pythonic
|
|
85
85
|
spec:
|
|
86
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
86
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
### Crossplane V1
|
|
@@ -95,7 +95,7 @@ kind: Function
|
|
|
95
95
|
metadata:
|
|
96
96
|
name: function-pythonic
|
|
97
97
|
spec:
|
|
98
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
98
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
99
99
|
runtimeConfigRef:
|
|
100
100
|
name: function-pythonic
|
|
101
101
|
--
|
|
@@ -241,6 +241,7 @@ The following functions are provided to create Protobuf structures:
|
|
|
241
241
|
| List | Create a new Protobuf list |
|
|
242
242
|
| Unknown | Create a new Protobuf unknown placeholder |
|
|
243
243
|
| Yaml | Create a new Protobuf structure from a yaml string |
|
|
244
|
+
| YamlAll | Create a new Protobuf list from a yaml string |
|
|
244
245
|
| Json | Create a new Protobuf structure from a json string |
|
|
245
246
|
| B64Encode | Encode a string into base 64 |
|
|
246
247
|
| B64Decode | Decode a string from base 64 |
|
|
@@ -616,7 +617,7 @@ kind: Function
|
|
|
616
617
|
metadata:
|
|
617
618
|
name: function-pythonic
|
|
618
619
|
spec:
|
|
619
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
620
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
620
621
|
runtimeConfigRef:
|
|
621
622
|
name: function-pythonic
|
|
622
623
|
---
|
|
@@ -57,7 +57,7 @@ kind: Function
|
|
|
57
57
|
metadata:
|
|
58
58
|
name: function-pythonic
|
|
59
59
|
spec:
|
|
60
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
60
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
61
61
|
```
|
|
62
62
|
|
|
63
63
|
### Crossplane V1
|
|
@@ -69,7 +69,7 @@ kind: Function
|
|
|
69
69
|
metadata:
|
|
70
70
|
name: function-pythonic
|
|
71
71
|
spec:
|
|
72
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
72
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
73
73
|
runtimeConfigRef:
|
|
74
74
|
name: function-pythonic
|
|
75
75
|
--
|
|
@@ -215,6 +215,7 @@ The following functions are provided to create Protobuf structures:
|
|
|
215
215
|
| List | Create a new Protobuf list |
|
|
216
216
|
| Unknown | Create a new Protobuf unknown placeholder |
|
|
217
217
|
| Yaml | Create a new Protobuf structure from a yaml string |
|
|
218
|
+
| YamlAll | Create a new Protobuf list from a yaml string |
|
|
218
219
|
| Json | Create a new Protobuf structure from a json string |
|
|
219
220
|
| B64Encode | Encode a string into base 64 |
|
|
220
221
|
| B64Decode | Decode a string from base 64 |
|
|
@@ -590,7 +591,7 @@ kind: Function
|
|
|
590
591
|
metadata:
|
|
591
592
|
name: function-pythonic
|
|
592
593
|
spec:
|
|
593
|
-
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.
|
|
594
|
+
package: xpkg.upbound.io/crossplane-contrib/function-pythonic:v0.4.2
|
|
594
595
|
runtimeConfigRef:
|
|
595
596
|
name: function-pythonic
|
|
596
597
|
---
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# This is set at build time, using "hatch version"
|
|
2
|
-
__version__ = "0.4.
|
|
2
|
+
__version__ = "0.4.2"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
3
|
from .composite import BaseComposite
|
|
4
|
-
from .protobuf import append, Map, List, Unknown, Yaml, Json, B64Encode, B64Decode
|
|
4
|
+
from .protobuf import append, Map, List, Unknown, Yaml, YamlAll, Json, B64Encode, B64Decode
|
|
5
5
|
|
|
6
6
|
__all__ = [
|
|
7
7
|
'BaseComposite',
|
|
@@ -10,6 +10,7 @@ __all__ = [
|
|
|
10
10
|
'List',
|
|
11
11
|
'Unknown',
|
|
12
12
|
'Yaml',
|
|
13
|
+
'YamlAll',
|
|
13
14
|
'Json',
|
|
14
15
|
'B64Encode',
|
|
15
16
|
'B64Decode',
|
|
@@ -63,7 +63,7 @@ class Command:
|
|
|
63
63
|
help='Enable Crossplane V1 compatibility mode',
|
|
64
64
|
)
|
|
65
65
|
|
|
66
|
-
def __init__(self, args):
|
|
66
|
+
def __init__(self, args=None):
|
|
67
67
|
self.args = args
|
|
68
68
|
self.initialize()
|
|
69
69
|
|
|
@@ -79,6 +79,7 @@ class Command:
|
|
|
79
79
|
logger.setLevel(logging.DEBUG if self.args.debug else logging.INFO)
|
|
80
80
|
# Suppress noisy libraries, these can be overriden using --logger-level
|
|
81
81
|
logging.getLogger('asyncio').setLevel(logging.INFO)
|
|
82
|
+
logging.getLogger('grpc').setLevel(logging.INFO)
|
|
82
83
|
logging.getLogger('httpcore').setLevel(logging.INFO)
|
|
83
84
|
logging.getLogger('httpx').setLevel(logging.WARNING)
|
|
84
85
|
logging.getLogger('kr8s').setLevel(logging.INFO)
|
|
@@ -17,9 +17,8 @@ logger = logging.getLogger(__name__)
|
|
|
17
17
|
class FunctionRunner(grpcv1.FunctionRunnerService):
|
|
18
18
|
"""A FunctionRunner handles gRPC RunFunctionRequests."""
|
|
19
19
|
|
|
20
|
-
def __init__(self,
|
|
20
|
+
def __init__(self, renderUnknowns=False, crossplane_v1=False):
|
|
21
21
|
"""Create a new FunctionRunner."""
|
|
22
|
-
self.debug = debug
|
|
23
22
|
self.renderUnknowns = renderUnknowns
|
|
24
23
|
self.crossplane_v1 = crossplane_v1
|
|
25
24
|
self.clazzes = {}
|
|
@@ -182,7 +181,7 @@ class FunctionRunner(grpcv1.FunctionRunnerService):
|
|
|
182
181
|
for _, resource in sorted(entry for entry in composite.resources):
|
|
183
182
|
dependencies = resource.desired._getDependencies
|
|
184
183
|
if dependencies:
|
|
185
|
-
if
|
|
184
|
+
if composite.logger.isEnabledFor(logging.DEBUG):
|
|
186
185
|
for destination, source in sorted(dependencies.items()):
|
|
187
186
|
destination = self.trimFullName(destination)
|
|
188
187
|
source = self.trimFullName(source)
|
|
@@ -278,7 +277,7 @@ class FunctionRunner(grpcv1.FunctionRunnerService):
|
|
|
278
277
|
if resource.unknownsFatal or (resource.unknownsFatal is None and composite.unknownsFatal):
|
|
279
278
|
fatalResources.append(name)
|
|
280
279
|
fatal = True
|
|
281
|
-
if
|
|
280
|
+
if composite.logger.isEnabledFor(logging.DEBUG):
|
|
282
281
|
for destination, source in sorted(unknowns.items()):
|
|
283
282
|
destination = self.trimFullName(destination)
|
|
284
283
|
source = self.trimFullName(source)
|
|
@@ -319,7 +318,7 @@ class FunctionRunner(grpcv1.FunctionRunnerService):
|
|
|
319
318
|
message = 'All resources are composed'
|
|
320
319
|
status = True
|
|
321
320
|
result = None
|
|
322
|
-
if not
|
|
321
|
+
if not composite.logger.isEnabledFor(logging.DEBUG) and level:
|
|
323
322
|
level(message)
|
|
324
323
|
composite.conditions.ResourcesComposed(reason, message, status)
|
|
325
324
|
if result:
|
|
@@ -378,6 +377,7 @@ class Module:
|
|
|
378
377
|
self.List = pythonic.List
|
|
379
378
|
self.Unknown = pythonic.Unknown
|
|
380
379
|
self.Yaml = pythonic.Yaml
|
|
380
|
+
self.YamlAll = pythonic.YamlAll
|
|
381
381
|
self.Json = pythonic.Json
|
|
382
382
|
self.B64Encode = pythonic.B64Encode
|
|
383
383
|
self.B64Decode = pythonic.B64Decode
|
|
@@ -88,7 +88,7 @@ class Command(command.Command):
|
|
|
88
88
|
|
|
89
89
|
async def run(self):
|
|
90
90
|
grpc.aio.init_grpc_aio()
|
|
91
|
-
grpc_runner = function.FunctionRunner(self.args.
|
|
91
|
+
grpc_runner = function.FunctionRunner(self.args.render_unknowns, self.args.crossplane_v1)
|
|
92
92
|
grpc_server = grpc.aio.server()
|
|
93
93
|
grpcv1.add_FunctionRunnerServiceServicer_to_server(grpc_runner, grpc_server)
|
|
94
94
|
if self.args.insecure:
|
|
@@ -42,6 +42,13 @@ def Yaml(string, readOnly=None):
|
|
|
42
42
|
string = str(string)
|
|
43
43
|
return Value(None, None, yaml.safe_load(string), readOnly)
|
|
44
44
|
|
|
45
|
+
def YamlAll(string, readOnly=None):
|
|
46
|
+
if isinstance(string, (FieldMessage, Value)):
|
|
47
|
+
if not string:
|
|
48
|
+
return string
|
|
49
|
+
string = str(string)
|
|
50
|
+
return Value(None, None, [document for document in yaml.safe_load_all(string)], readOnly)
|
|
51
|
+
|
|
45
52
|
def Json(string, readOnly=None):
|
|
46
53
|
if isinstance(string, (FieldMessage, Value)):
|
|
47
54
|
if not string:
|