crossplane-function-pythonic 0.0.7a0__tar.gz → 0.0.7.post3__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.
Files changed (195) hide show
  1. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/.gitignore +2 -1
  2. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/PKG-INFO +80 -2
  3. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/README.md +79 -1
  4. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/pyproject.toml +7 -1
  5. crossplane_function_pythonic-0.0.7a0/.coveragerc +0 -2
  6. crossplane_function_pythonic-0.0.7a0/.devcontainer/devcontainer.json +0 -17
  7. crossplane_function_pythonic-0.0.7a0/.github/workflows/ci.yaml +0 -269
  8. crossplane_function_pythonic-0.0.7a0/.venv-default/.gitignore +0 -2
  9. crossplane_function_pythonic-0.0.7a0/.venv-default/CACHEDIR.TAG +0 -4
  10. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate +0 -87
  11. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate.csh +0 -55
  12. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate.fish +0 -103
  13. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate.nu +0 -96
  14. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate.ps1 +0 -61
  15. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/activate_this.py +0 -38
  16. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/ipython +0 -8
  17. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/ipython3 +0 -8
  18. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/kopf +0 -8
  19. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/pip +0 -8
  20. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/pip-3.13 +0 -8
  21. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/pip3 +0 -8
  22. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/pip3.13 +0 -8
  23. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/pygmentize +0 -8
  24. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/python +0 -1
  25. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/python3 +0 -1
  26. crossplane_function_pythonic-0.0.7a0/.venv-default/bin/python3.13 +0 -1
  27. crossplane_function_pythonic-0.0.7a0/.venv-default/pyvenv.cfg +0 -8
  28. crossplane_function_pythonic-0.0.7a0/.venv-default/share/man/man1/ipython.1 +0 -60
  29. crossplane_function_pythonic-0.0.7a0/.venv-test/.gitignore +0 -2
  30. crossplane_function_pythonic-0.0.7a0/.venv-test/CACHEDIR.TAG +0 -4
  31. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate +0 -87
  32. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate.csh +0 -55
  33. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate.fish +0 -103
  34. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate.nu +0 -96
  35. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate.ps1 +0 -61
  36. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/activate_this.py +0 -38
  37. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/coverage +0 -8
  38. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/coverage-3.13 +0 -8
  39. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/coverage3 +0 -8
  40. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/kopf +0 -8
  41. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pip +0 -8
  42. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pip-3.13 +0 -8
  43. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pip3 +0 -8
  44. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pip3.13 +0 -8
  45. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/py.test +0 -8
  46. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pygmentize +0 -8
  47. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/pytest +0 -8
  48. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/python +0 -1
  49. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/python3 +0 -1
  50. crossplane_function_pythonic-0.0.7a0/.venv-test/bin/python3.13 +0 -1
  51. crossplane_function_pythonic-0.0.7a0/.venv-test/pyvenv.cfg +0 -8
  52. crossplane_function_pythonic-0.0.7a0/Dockerfile +0 -15
  53. crossplane_function_pythonic-0.0.7a0/examples/alert.tgz +0 -0
  54. crossplane_function_pythonic-0.0.7a0/examples/argo.tgz +0 -0
  55. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/composition.yaml +0 -87
  56. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/extra.yaml +0 -53
  57. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/functions.yaml +0 -13
  58. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/render.sh +0 -3
  59. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/xr.yaml +0 -6
  60. crossplane_function_pythonic-0.0.7a0/examples/argocd-application/xrd.yaml +0 -34
  61. crossplane_function_pythonic-0.0.7a0/examples/argocd.tgz +0 -0
  62. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/composition.yaml +0 -36
  63. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/daemonset.yaml +0 -35
  64. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/functions.yaml +0 -9
  65. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/render.sh +0 -3
  66. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/xr.yaml +0 -8
  67. crossplane_function_pythonic-0.0.7a0/examples/ds-mod/xrd.yaml +0 -25
  68. crossplane_function_pythonic-0.0.7a0/examples/function-go-templating/functions.yaml +0 -15
  69. crossplane_function_pythonic-0.0.7a0/examples/grafana/EFCObservability.yaml +0 -1033
  70. crossplane_function_pythonic-0.0.7a0/examples/grafana/README.md +0 -6
  71. crossplane_function_pythonic-0.0.7a0/examples/grafana/alert.py +0 -104
  72. crossplane_function_pythonic-0.0.7a0/examples/grafana/composition.yaml +0 -30
  73. crossplane_function_pythonic-0.0.7a0/examples/grafana/configmap.yaml +0 -750
  74. crossplane_function_pythonic-0.0.7a0/examples/grafana/dashboard.json +0 -637
  75. crossplane_function_pythonic-0.0.7a0/examples/grafana/extra.yaml +0 -89
  76. crossplane_function_pythonic-0.0.7a0/examples/grafana/functions.yaml +0 -15
  77. crossplane_function_pythonic-0.0.7a0/examples/grafana/observed.yaml +0 -15
  78. crossplane_function_pythonic-0.0.7a0/examples/grafana/render.sh +0 -3
  79. crossplane_function_pythonic-0.0.7a0/examples/grafana/run-pythonic.sh +0 -3
  80. crossplane_function_pythonic-0.0.7a0/examples/grafana/secret.yaml +0 -9
  81. crossplane_function_pythonic-0.0.7a0/examples/grafana/xr.yaml +0 -26
  82. crossplane_function_pythonic-0.0.7a0/package/composite-composition.yaml +0 -18
  83. crossplane_function_pythonic-0.0.7a0/package/composite-definition.yaml +0 -32
  84. crossplane_function_pythonic-0.0.7a0/package/crossplane.yaml +0 -5
  85. crossplane_function_pythonic-0.0.7a0/package/input-definition.yaml +0 -38
  86. crossplane_function_pythonic-0.0.7a0/renovate.json +0 -6
  87. crossplane_function_pythonic-0.0.7a0/scripts/run_function.proto +0 -370
  88. crossplane_function_pythonic-0.0.7a0/scripts/setup-local.sh +0 -205
  89. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/buckets.yaml +0 -37
  90. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/clazz.py +0 -5
  91. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/clazz.yaml +0 -14
  92. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/composed.yaml +0 -57
  93. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/conditions.yaml +0 -85
  94. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/context.yaml +0 -46
  95. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/do-nothing.yaml +0 -6
  96. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/extra-resources.yaml +0 -74
  97. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/get-started-app.yaml +0 -98
  98. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/inline.yaml +0 -82
  99. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/unknowns-fatal.yaml +0 -72
  100. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/unknowns-info.yaml +0 -55
  101. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/unknowns-warning.yaml +0 -73
  102. crossplane_function_pythonic-0.0.7a0/tests/fn_cases/yaml.yaml +0 -36
  103. crossplane_function_pythonic-0.0.7a0/tests/test_fn.py +0 -75
  104. crossplane_function_pythonic-0.0.7a0/tests/test_protobuf_values.py +0 -210
  105. crossplane_function_pythonic-0.0.7a0/tests/utils.py +0 -253
  106. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/LICENSE +0 -0
  107. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/__init__.py +0 -0
  108. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/composite.py +0 -0
  109. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/function.py +0 -0
  110. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/main.py +0 -0
  111. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/packages.py +0 -0
  112. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/crossplane/pythonic/protobuf.py +0 -0
  113. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/.dev/functions.yaml +0 -0
  114. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/composition-v2.yaml +0 -0
  115. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/composition.yaml +0 -0
  116. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/definition.yaml +0 -0
  117. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/functions.yaml +0 -0
  118. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/render-v2.sh +0 -0
  119. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/render.sh +0 -0
  120. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/eks-cluster/xr.yaml +0 -0
  121. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/README.md +0 -0
  122. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/composition.yaml +0 -0
  123. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/definition.yaml +0 -0
  124. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/function.yaml +0 -0
  125. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/kustomization.yaml +0 -0
  126. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/runtime.yaml +0 -0
  127. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/vcluster.py +0 -0
  128. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/filing-system/vcluster.yaml +0 -0
  129. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/conditions/composition.yaml +0 -0
  130. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/conditions/functions.yaml +0 -0
  131. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/conditions/render.sh +0 -0
  132. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/conditions/xr.yaml +0 -0
  133. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/conditions/xrd.yaml +0 -0
  134. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/composition.yaml +0 -0
  135. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/environmentConfigs.yaml +0 -0
  136. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/functions.yaml +0 -0
  137. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/render.sh +0 -0
  138. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/xr.yaml +0 -0
  139. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/context/xrd.yaml +0 -0
  140. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/extra-resources/composition.yaml +0 -0
  141. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/extra-resources/extraResources.yaml +0 -0
  142. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/extra-resources/functions.yaml +0 -0
  143. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/extra-resources/render.sh +0 -0
  144. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/extra-resources/xr.yaml +0 -0
  145. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/fromYaml/composition.yaml +0 -0
  146. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/fromYaml/functions.yaml +0 -0
  147. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/fromYaml/render.sh +0 -0
  148. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/fromYaml/xr.yaml +0 -0
  149. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getComposedResource/composition.yaml +0 -0
  150. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getComposedResource/functions.yaml +0 -0
  151. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getComposedResource/observed.yaml +0 -0
  152. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getComposedResource/render.sh +0 -0
  153. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getComposedResource/xr.yaml +0 -0
  154. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getCompositeResource/composition.yaml +0 -0
  155. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getCompositeResource/functions.yaml +0 -0
  156. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getCompositeResource/render.sh +0 -0
  157. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getCompositeResource/xr.yaml +0 -0
  158. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getResourceCondition/composition.yaml +0 -0
  159. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getResourceCondition/functions.yaml +0 -0
  160. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getResourceCondition/observed.yaml +0 -0
  161. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getResourceCondition/render.sh +0 -0
  162. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/getResourceCondition/xr.yaml +0 -0
  163. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/include/composition.yaml +0 -0
  164. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/include/functions.yaml +0 -0
  165. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/include/render.sh +0 -0
  166. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/include/xr.yaml +0 -0
  167. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/toYaml/composition.yaml +0 -0
  168. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/toYaml/functions.yaml +0 -0
  169. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/toYaml/render.sh +0 -0
  170. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/functions/toYaml/xr.yaml +0 -0
  171. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/inline/composition.yaml +0 -0
  172. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/inline/functions.yaml +0 -0
  173. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/inline/render.sh +0 -0
  174. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/inline/xr.yaml +0 -0
  175. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/recursive/composition-real.yaml +0 -0
  176. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/recursive/composition-wrapper.yaml +0 -0
  177. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/recursive/functions.yaml +0 -0
  178. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/recursive/render.sh +0 -0
  179. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/function-go-templating/recursive/xr.yaml +0 -0
  180. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/get-started-app/composition.yaml +0 -0
  181. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/get-started-app/definition.yaml +0 -0
  182. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/get-started-app/functions.yaml +0 -0
  183. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/get-started-app/render.sh +0 -0
  184. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/get-started-app/xr.yaml +0 -0
  185. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/composition.yaml +0 -0
  186. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/functions.yaml +0 -0
  187. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/kustomization.yaml +0 -0
  188. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/render.sh +0 -0
  189. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/run-function.sh +0 -0
  190. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/vcluster.py +0 -0
  191. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/xr.yaml +0 -0
  192. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/helm-copy-secret/xrd.yaml +0 -0
  193. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/single-purpose/functions.yaml +0 -0
  194. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/single-purpose/render.sh +0 -0
  195. {crossplane_function_pythonic-0.0.7a0 → crossplane_function_pythonic-0.0.7.post3}/examples/single-purpose/xr.yaml +0 -0
@@ -211,5 +211,6 @@ marimo/_lsp/
211
211
  __marimo__/
212
212
 
213
213
  # function-pythonic
214
- pythonic-packages/
215
214
  crossplane/pythonic/__version__.py
215
+ pocs/
216
+ pythonic-packages/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crossplane-function-pythonic
3
- Version: 0.0.7a0
3
+ Version: 0.0.7.post3
4
4
  Summary: A Python centric Crossplane Function
5
5
  Project-URL: Documentation, https://github.com/fortra/function-pythonic#readme
6
6
  Project-URL: Issues, https://github.com/fortra/function-pythonic/issues
@@ -80,7 +80,6 @@ metadata:
80
80
  spec:
81
81
  package: ghcr.io/fortra/function-pythonic:v0.0.7
82
82
  ```
83
-
84
83
  ## Composed Resource Dependencies
85
84
 
86
85
  function-pythonic automatically handles dependencies between composed resources.
@@ -322,6 +321,85 @@ spec:
322
321
  self.status.composite = 'Hello, World!'
323
322
  ```
324
323
 
324
+ ## Quick Start Development
325
+
326
+ The following example demonstrates how to locally render function-python
327
+ compositions. First, install the `crossplane-function-pythonic` python
328
+ package into the python environment:
329
+ ```shell
330
+ $ pip install crossplane-function-pythonic
331
+ ```
332
+ Then create the following files:
333
+ #### xr.yaml
334
+ ```yaml
335
+ apiVersion: pythonic.fortra.com/v1alpha1
336
+ kind: Hello
337
+ metadata:
338
+ name: world
339
+ spec:
340
+ who: World
341
+ ```
342
+ #### composition.yaml
343
+ ```yaml
344
+ apiVersion: apiextensions.crossplane.io/v1
345
+ kind: Composition
346
+ metadata:
347
+ name: hellos.pythonic.fortra.com
348
+ spec:
349
+ compositeTypeRef:
350
+ apiVersion: pythonic.fortra.com/v1alpha1
351
+ kind: Hello
352
+ mode: Pipeline
353
+ pipeline:
354
+ - step: pythonic
355
+ functionRef:
356
+ name: function-pythonic
357
+ input:
358
+ apiVersion: pythonic.fn.fortra.com/v1alpha1
359
+ kind: Composite
360
+ composite: |
361
+ class Composite(BaseComposite):
362
+ def compose(self):
363
+ self.status.greeting = f"Hello, {self.spec.who}!"
364
+ ```
365
+ #### functions.yaml
366
+ ```yaml
367
+ apiVersion: pkg.crossplane.io/v1beta1
368
+ kind: Function
369
+ metadata:
370
+ name: function-pythonic
371
+ annotations:
372
+ render.crossplane.io/runtime: Development
373
+ spec:
374
+ package: ghcr.io/fortra/function-pythonic:v0.0.7
375
+ ```
376
+ In one terminal session, run function-pythonic:
377
+ ```shell
378
+ $ function-pythonic --insecure --debug
379
+ [2025-08-21 15:32:37.966] grpc._cython.cygrpc [DEBUG ] Using AsyncIOEngine.POLLER as I/O engine
380
+ ```
381
+ In other terminal session, render the Composite:
382
+ ```shell
383
+ $ crossplane render xr.yaml composition.yaml functions.yaml
384
+ ---
385
+ apiVersion: pythonic.fortra.com/v1alpha1
386
+ kind: Hello
387
+ metadata:
388
+ name: world
389
+ status:
390
+ conditions:
391
+ - lastTransitionTime: "2024-01-01T00:00:00Z"
392
+ reason: Available
393
+ status: "True"
394
+ type: Ready
395
+ - lastTransitionTime: "2024-01-01T00:00:00Z"
396
+ message: All resources are composed
397
+ reason: AllComposed
398
+ status: "True"
399
+ type: ResourcesComposed
400
+ greeting: Hello, World!
401
+ ```
402
+
325
403
  ## ConfigMap Packages
326
404
 
327
405
  ConfigMap based python packages are enable using the `--packages` and
@@ -59,7 +59,6 @@ metadata:
59
59
  spec:
60
60
  package: ghcr.io/fortra/function-pythonic:v0.0.7
61
61
  ```
62
-
63
62
  ## Composed Resource Dependencies
64
63
 
65
64
  function-pythonic automatically handles dependencies between composed resources.
@@ -301,6 +300,85 @@ spec:
301
300
  self.status.composite = 'Hello, World!'
302
301
  ```
303
302
 
303
+ ## Quick Start Development
304
+
305
+ The following example demonstrates how to locally render function-python
306
+ compositions. First, install the `crossplane-function-pythonic` python
307
+ package into the python environment:
308
+ ```shell
309
+ $ pip install crossplane-function-pythonic
310
+ ```
311
+ Then create the following files:
312
+ #### xr.yaml
313
+ ```yaml
314
+ apiVersion: pythonic.fortra.com/v1alpha1
315
+ kind: Hello
316
+ metadata:
317
+ name: world
318
+ spec:
319
+ who: World
320
+ ```
321
+ #### composition.yaml
322
+ ```yaml
323
+ apiVersion: apiextensions.crossplane.io/v1
324
+ kind: Composition
325
+ metadata:
326
+ name: hellos.pythonic.fortra.com
327
+ spec:
328
+ compositeTypeRef:
329
+ apiVersion: pythonic.fortra.com/v1alpha1
330
+ kind: Hello
331
+ mode: Pipeline
332
+ pipeline:
333
+ - step: pythonic
334
+ functionRef:
335
+ name: function-pythonic
336
+ input:
337
+ apiVersion: pythonic.fn.fortra.com/v1alpha1
338
+ kind: Composite
339
+ composite: |
340
+ class Composite(BaseComposite):
341
+ def compose(self):
342
+ self.status.greeting = f"Hello, {self.spec.who}!"
343
+ ```
344
+ #### functions.yaml
345
+ ```yaml
346
+ apiVersion: pkg.crossplane.io/v1beta1
347
+ kind: Function
348
+ metadata:
349
+ name: function-pythonic
350
+ annotations:
351
+ render.crossplane.io/runtime: Development
352
+ spec:
353
+ package: ghcr.io/fortra/function-pythonic:v0.0.7
354
+ ```
355
+ In one terminal session, run function-pythonic:
356
+ ```shell
357
+ $ function-pythonic --insecure --debug
358
+ [2025-08-21 15:32:37.966] grpc._cython.cygrpc [DEBUG ] Using AsyncIOEngine.POLLER as I/O engine
359
+ ```
360
+ In other terminal session, render the Composite:
361
+ ```shell
362
+ $ crossplane render xr.yaml composition.yaml functions.yaml
363
+ ---
364
+ apiVersion: pythonic.fortra.com/v1alpha1
365
+ kind: Hello
366
+ metadata:
367
+ name: world
368
+ status:
369
+ conditions:
370
+ - lastTransitionTime: "2024-01-01T00:00:00Z"
371
+ reason: Available
372
+ status: "True"
373
+ type: Ready
374
+ - lastTransitionTime: "2024-01-01T00:00:00Z"
375
+ message: All resources are composed
376
+ reason: AllComposed
377
+ status: "True"
378
+ type: ResourcesComposed
379
+ greeting: Hello, World!
380
+ ```
381
+
304
382
  ## ConfigMap Packages
305
383
 
306
384
  ConfigMap based python packages are enable using the `--packages` and
@@ -39,7 +39,13 @@ path = "crossplane/pythonic/__version__.py"
39
39
  validate-bump = false
40
40
 
41
41
  [tool.hatch.build.targets.wheel]
42
- packages = ["crossplane.pythonic"]
42
+ only-include = ["crossplane"]
43
+
44
+ [tool.hatch.build.targets.sdist]
45
+ only-include = [
46
+ "crossplane",
47
+ "examples",
48
+ ]
43
49
 
44
50
  [tool.hatch.envs.default]
45
51
  type = "virtual"
@@ -1,2 +0,0 @@
1
- [run]
2
- omit = tests/*
@@ -1,17 +0,0 @@
1
- {
2
- "name": "function-pythonic-devcontainer",
3
- "image": "mcr.microsoft.com/devcontainers/python:3.12-bookworm",
4
- "features": {
5
- "ghcr.io/devcontainers-extra/features/hatch:2": {},
6
- "ghcr.io/devcontainers/features/docker-in-docker:2": {
7
- "version": "latest",
8
- "enableNonRootDocker": "true",
9
- "moby": "false"
10
- },
11
- "ghcr.io/joebowbeer/devcontainers-features/crossplane:1": {
12
- "channel": "stable",
13
- "version": "current"
14
- }
15
- },
16
- "postCreateCommand": "hatch env create"
17
- }
@@ -1,269 +0,0 @@
1
- name: CI
2
-
3
- on:
4
- push:
5
- branches:
6
- - main
7
- - release-*
8
- pull_request: {}
9
- workflow_dispatch:
10
- inputs:
11
- version:
12
- description: Package version (e.g. v0.1.0)
13
- required: false
14
-
15
- env:
16
- # Common versions
17
- PYTHON_VERSION: '3.13.7' # TODO: Used?
18
- HATCH_VERSION: '1.12.0'
19
- DOCKER_BUILDX_VERSION: 'v0.26.1'
20
-
21
- # These environment variables are important to the Crossplane CLI install.sh
22
- # script. They determine what version it installs.
23
- XP_CHANNEL: stable
24
- XP_VERSION: current
25
-
26
- # This CI job will automatically push new builds to xpkg.upbound.io if the
27
- # XPKG_ACCESS_ID and XPKG_TOKEN secrets are set in the GitHub respository (or
28
- # organization) settings. Create a token at https://accounts.upbound.io.
29
- # XPKG_ACCESS_ID: ${{ secrets.XPKG_ACCESS_ID }}
30
-
31
- # The package to push, without a version tag. The default matches GitHub. For
32
- # example xpkg.upbound.io/crossplane/function-template-go.
33
- # XPKG: xpkg.upbound.io/${{ github.repository}}
34
- CROSSPLANE_REGORG: ghcr.io/${{ github.repository}}
35
-
36
- # The PyPi project version to push. The default is v0.0.0+gitdate-gitsha.
37
- PYPI_VERSION: ${{ inputs.version }}
38
-
39
- # The package version to push. The default is 0.0.0-gitsha.
40
- XPKG_VERSION: ${{ inputs.version }}
41
-
42
- jobs:
43
- # lint:
44
- # runs-on: ubuntu-24.04
45
- # steps:
46
- # - name: Checkout
47
- # uses: actions/checkout@v4
48
-
49
- # - name: Setup Python
50
- # uses: actions/setup-python@v5
51
- # with:
52
- # python-version: ${{ env.PYTHON_VERSION }}
53
-
54
- # - name: Setup Hatch
55
- # run: pipx install hatch==1.14.1
56
-
57
- # - name: Lint
58
- # run: hatch run lint:check
59
-
60
- test:
61
- runs-on: ubuntu-24.04
62
- steps:
63
- - name: Checkout
64
- uses: actions/checkout@v4
65
-
66
- - name: Setup Python
67
- uses: actions/setup-python@v5
68
- with:
69
- python-version: ${{ env.PYTHON_VERSION }}
70
-
71
- - name: Setup Hatch
72
- run: pipx install hatch==1.14.1
73
-
74
- - name: Run Unit Tests
75
- run: hatch run test:ci
76
-
77
- #- name: Pytest coverage comment
78
- # uses: MishaKav/pytest-coverage-comment@v1.1.54
79
- # with:
80
- # badge-title: Coverage
81
- # title: Coverage Report
82
- # pytest-xml-coverage-path: reports/pytest-coverage.xml
83
- # junitxml-title: Unit Tests
84
- # junitxml-path: reports/pytest-junit.xml
85
- #hide-badge: false
86
- #hide-report: false
87
- #create-new-comment: false
88
- #hide-comment: false
89
- #report-only-changed-files: false
90
- #remove-link-from-badge: false
91
- #unique-id-for-comment: python3.8
92
-
93
- build-pypi:
94
- runs-on: ubuntu-24.04
95
- steps:
96
- - name: Checkout
97
- uses: actions/checkout@v4
98
-
99
- - name: Setup Python
100
- uses: actions/setup-python@v5
101
- with:
102
- python-version: ${{ env.PYTHON_VERSION }}
103
-
104
- - name: Setup Hatch
105
- run: pipx install hatch==${{ env.HATCH_VERSION }}
106
-
107
- # If a version wasn't explicitly passed as a workflow_dispatch input we
108
- # default to version v0.0.0+<git-commit-date>-<git-short-sha>, for example
109
- # v0.0.0+20231101115142-1091066df799. This is a simple implementation of
110
- # Go's pseudo-versions: https://go.dev/ref/mod#pseudo-versions.
111
- - name: Set Default PyPI Project Version
112
- if: env.PYPI_VERSION == ''
113
- run: echo "PYPI_VERSION=v0.0.0+$(date -d@$(git show -s --format=%ct) +%Y%m%d%H%M%S)-$(git rev-parse --short=12 HEAD)" >> $GITHUB_ENV
114
-
115
- - name: Set PyPI Project Version
116
- run: hatch version ${{ env.PYPI_VERSION }}
117
-
118
- - name: Build Sdist and Wheel
119
- run: hatch build
120
-
121
- - name: Upload Sdist and Wheel to GitHub
122
- uses: actions/upload-artifact@v4
123
- with:
124
- name: dist
125
- path: "dist/*"
126
- if-no-files-found: error
127
- retention-days: 1
128
-
129
- # We want to build most packages for the amd64 and arm64 architectures. To
130
- # speed this up we build single-platform packages in parallel. We then upload
131
- # those packages to GitHub as a build artifact. The push job downloads those
132
- # artifacts and pushes them as a single multi-platform package.
133
- build-xpkg:
134
- needs:
135
- - build-pypi
136
- runs-on: ubuntu-24.04
137
- strategy:
138
- fail-fast: true
139
- matrix:
140
- arch:
141
- - amd64
142
- - arm64
143
- steps:
144
- - name: Setup QEMU
145
- uses: docker/setup-qemu-action@v3
146
- with:
147
- platforms: all
148
-
149
- - name: Setup Docker Buildx
150
- uses: docker/setup-buildx-action@v3
151
- with:
152
- version: ${{ env.DOCKER_BUILDX_VERSION }}
153
- install: true
154
-
155
- - name: Checkout
156
- uses: actions/checkout@v4
157
-
158
- - name: Download Wheel from GitHub
159
- uses: actions/download-artifact@v5
160
- with:
161
- name: dist
162
- pattern: '*.whl'
163
- path: dist
164
-
165
- # We ask Docker to use GitHub Action's native caching support to speed up
166
- # the build, per https://docs.docker.com/build/cache/backends/gha/.
167
- - name: Build Runtime
168
- id: image
169
- uses: docker/build-push-action@v6
170
- with:
171
- context: .
172
- platforms: linux/${{ matrix.arch }}
173
- cache-from: type=gha
174
- cache-to: type=gha,mode=max
175
- target: image
176
- build-args:
177
- PYTHON_VERSION=${{ env.PYTHON_VERSION }}
178
- outputs: type=docker,dest=runtime-${{ matrix.arch }}.tar
179
-
180
- - name: Setup the Crossplane CLI
181
- run: "mkdir bin && cd bin && curl -sL https://raw.githubusercontent.com/crossplane/crossplane/master/install.sh | sh"
182
-
183
- - name: Build Package
184
- run: bin/crossplane xpkg build --package-file=${{ matrix.arch }}.xpkg --package-root=package/ --embed-runtime-image-tarball=runtime-${{ matrix.arch }}.tar
185
-
186
- - name: Upload Single-Platform Package
187
- uses: actions/upload-artifact@v4
188
- with:
189
- name: package-${{ matrix.arch }}
190
- path: "*.xpkg"
191
- if-no-files-found: error
192
- retention-days: 1
193
-
194
- publish-pypi:
195
- # Don't publish unless we were run with an explicit version.
196
- if: ${{ inputs.version != '' }}
197
- needs:
198
- - build-xpkg # only publish if xpkg builds succeeds
199
- runs-on: ubuntu-24.04
200
- steps:
201
- - name: Download Sdist and Wheel from GitHub
202
- uses: actions/download-artifact@v5
203
- with:
204
- name: dist
205
- path: dist
206
-
207
- - name: Setup Hatch
208
- run: pipx install hatch==${{ env.HATCH_VERSION }}
209
-
210
- - name: Publish to PyPI
211
- env:
212
- HATCH_INDEX_USER: __token__
213
- HATCH_INDEX_AUTH: ${{ secrets.PYPI_API_TOKEN }}
214
- run: hatch publish --no-prompt
215
-
216
- # This job downloads the single-platform packages built by the build job, and
217
- # pushes them as a multi-platform package. We only push the package it the
218
- # XPKG_ACCESS_ID and XPKG_TOKEN secrets were provided.
219
- push-xpkg:
220
- needs:
221
- - build-xpkg
222
- runs-on: ubuntu-24.04
223
- permissions:
224
- contents: read
225
- packages: write
226
- steps:
227
- - name: Checkout
228
- uses: actions/checkout@v4
229
-
230
- - name: Download Single-Platform Packages
231
- uses: actions/download-artifact@v4
232
- with:
233
- # See https://github.com/docker/build-push-action/blob/263435/README.md#summaries
234
- pattern: "!*.dockerbuild"
235
- path: .
236
- merge-multiple: true
237
-
238
- - name: Setup the Crossplane CLI
239
- run: "mkdir bin && cd bin && curl -sL https://raw.githubusercontent.com/crossplane/crossplane/master/install.sh | sh"
240
-
241
- # If a version wasn't explicitly passed as a workflow_dispatch input we
242
- # default to version v0.0.0-<git-commit-date>-<git-short-sha>, for example
243
- # v0.0.0-20231101115142-1091066df799. This is a simple implementation of
244
- # Go's pseudo-versions: https://go.dev/ref/mod#pseudo-versions.
245
- - name: Set Default Multi-Platform Package Version
246
- if: env.XPKG_VERSION == ''
247
- run: echo "XPKG_VERSION=v0.0.0-$(date -d@$(git show -s --format=%ct) +%Y%m%d%H%M%S)-$(git rev-parse --short=12 HEAD)" >> $GITHUB_ENV
248
-
249
- # - name: Login to Upbound
250
- # uses: docker/login-action@v3
251
- # if: env.XPKG_ACCESS_ID != ''
252
- # with:
253
- # registry: xpkg.upbound.io
254
- # username: ${{ secrets.XPKG_ACCESS_ID }}
255
- # password: ${{ secrets.XPKG_TOKEN }}
256
-
257
- # - name: Push Multi-Platform Package to Upbound
258
- # if: env.XPKG_ACCESS_ID != ''
259
- # run: "bin/crossplane --verbose xpkg push --package-files $(echo *.xpkg|tr ' ' ,) ${{ env.XPKG }}:${{ env.XPKG_VERSION }}"
260
-
261
- - name: Login to GHCR
262
- uses: docker/login-action@v3
263
- with:
264
- registry: ghcr.io
265
- username: ${{ github.repository_owner }}
266
- password: ${{ secrets.GITHUB_TOKEN }}
267
-
268
- - name: Push Multi-Platform Package to GHCR
269
- run: "bin/crossplane --verbose xpkg push --package-files $(echo *.xpkg|tr ' ' ,) ${{ env.CROSSPLANE_REGORG }}:${{ env.XPKG_VERSION }}"
@@ -1,2 +0,0 @@
1
- # created by virtualenv automatically
2
- *
@@ -1,4 +0,0 @@
1
- Signature: 8a477f597d28d172789f06886806bc55
2
- # This file is a cache directory tag created by Python virtualenv.
3
- # For information about cache directory tags, see:
4
- # https://bford.info/cachedir/
@@ -1,87 +0,0 @@
1
- # This file must be used with "source bin/activate" *from bash*
2
- # you cannot run it directly
3
-
4
-
5
- if [ "${BASH_SOURCE-}" = "$0" ]; then
6
- echo "You must source this script: \$ source $0" >&2
7
- exit 33
8
- fi
9
-
10
- deactivate () {
11
- unset -f pydoc >/dev/null 2>&1 || true
12
-
13
- # reset old environment variables
14
- # ! [ -z ${VAR+_} ] returns true if VAR is declared at all
15
- if ! [ -z "${_OLD_VIRTUAL_PATH:+_}" ] ; then
16
- PATH="$_OLD_VIRTUAL_PATH"
17
- export PATH
18
- unset _OLD_VIRTUAL_PATH
19
- fi
20
- if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
21
- PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
22
- export PYTHONHOME
23
- unset _OLD_VIRTUAL_PYTHONHOME
24
- fi
25
-
26
- # The hash command must be called to get it to forget past
27
- # commands. Without forgetting past commands the $PATH changes
28
- # we made may not be respected
29
- hash -r 2>/dev/null
30
-
31
- if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
32
- PS1="$_OLD_VIRTUAL_PS1"
33
- export PS1
34
- unset _OLD_VIRTUAL_PS1
35
- fi
36
-
37
- unset VIRTUAL_ENV
38
- unset VIRTUAL_ENV_PROMPT
39
- if [ ! "${1-}" = "nondestructive" ] ; then
40
- # Self destruct!
41
- unset -f deactivate
42
- fi
43
- }
44
-
45
- # unset irrelevant variables
46
- deactivate nondestructive
47
-
48
- VIRTUAL_ENV=/Users/pmcnerthney/src/iciclespider/function-pythonic/.venv-default
49
- if ([ "$OSTYPE" = "cygwin" ] || [ "$OSTYPE" = "msys" ]) && $(command -v cygpath &> /dev/null) ; then
50
- VIRTUAL_ENV=$(cygpath -u "$VIRTUAL_ENV")
51
- fi
52
- export VIRTUAL_ENV
53
-
54
- _OLD_VIRTUAL_PATH="$PATH"
55
- PATH="$VIRTUAL_ENV/"bin":$PATH"
56
- export PATH
57
-
58
- if [ "x"'' != x ] ; then
59
- VIRTUAL_ENV_PROMPT=''
60
- else
61
- VIRTUAL_ENV_PROMPT=$(basename "$VIRTUAL_ENV")
62
- fi
63
- export VIRTUAL_ENV_PROMPT
64
-
65
- # unset PYTHONHOME if set
66
- if ! [ -z "${PYTHONHOME+_}" ] ; then
67
- _OLD_VIRTUAL_PYTHONHOME="$PYTHONHOME"
68
- unset PYTHONHOME
69
- fi
70
-
71
- if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT-}" ] ; then
72
- _OLD_VIRTUAL_PS1="${PS1-}"
73
- PS1="(${VIRTUAL_ENV_PROMPT}) ${PS1-}"
74
- export PS1
75
- fi
76
-
77
- # Make sure to unalias pydoc if it's already there
78
- alias pydoc 2>/dev/null >/dev/null && unalias pydoc || true
79
-
80
- pydoc () {
81
- python -m pydoc "$@"
82
- }
83
-
84
- # The hash command must be called to get it to forget past
85
- # commands. Without forgetting past commands the $PATH changes
86
- # we made may not be respected
87
- hash -r 2>/dev/null || true
@@ -1,55 +0,0 @@
1
- # This file must be used with "source bin/activate.csh" *from csh*.
2
- # You cannot run it directly.
3
- # Created by Davide Di Blasi <davidedb@gmail.com>.
4
-
5
- set newline='\
6
- '
7
-
8
- alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH:q" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT:q" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; unsetenv VIRTUAL_ENV_PROMPT; test "\!:*" != "nondestructive" && unalias deactivate && unalias pydoc'
9
-
10
- # Unset irrelevant variables.
11
- deactivate nondestructive
12
-
13
- setenv VIRTUAL_ENV /Users/pmcnerthney/src/iciclespider/function-pythonic/.venv-default
14
-
15
- set _OLD_VIRTUAL_PATH="$PATH:q"
16
- setenv PATH "$VIRTUAL_ENV:q/"bin":$PATH:q"
17
-
18
-
19
-
20
- if ('' != "") then
21
- setenv VIRTUAL_ENV_PROMPT ''
22
- else
23
- setenv VIRTUAL_ENV_PROMPT "$VIRTUAL_ENV:t:q"
24
- endif
25
-
26
- if ( $?VIRTUAL_ENV_DISABLE_PROMPT ) then
27
- if ( $VIRTUAL_ENV_DISABLE_PROMPT == "" ) then
28
- set do_prompt = "1"
29
- else
30
- set do_prompt = "0"
31
- endif
32
- else
33
- set do_prompt = "1"
34
- endif
35
-
36
- if ( $do_prompt == "1" ) then
37
- # Could be in a non-interactive environment,
38
- # in which case, $prompt is undefined and we wouldn't
39
- # care about the prompt anyway.
40
- if ( $?prompt ) then
41
- set _OLD_VIRTUAL_PROMPT="$prompt:q"
42
- if ( "$prompt:q" =~ *"$newline:q"* ) then
43
- :
44
- else
45
- set prompt = '('"$VIRTUAL_ENV_PROMPT:q"') '"$prompt:q"
46
- endif
47
- endif
48
- endif
49
-
50
- unset env_name
51
- unset do_prompt
52
-
53
- alias pydoc python -m pydoc
54
-
55
- rehash