cici-tools 0.17.0__tar.gz → 0.17.1__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 (204) hide show
  1. {cici_tools-0.17.0/cici_tools.egg-info → cici_tools-0.17.1}/PKG-INFO +1 -1
  2. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/_version.py +3 -3
  3. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/config/project/serializers.py +11 -6
  4. {cici_tools-0.17.0 → cici_tools-0.17.1/cici_tools.egg-info}/PKG-INFO +1 -1
  5. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici_tools.egg-info/SOURCES.txt +1 -0
  6. cici_tools-0.17.1/tests/test_precommit_hook_injection.py +47 -0
  7. {cici_tools-0.17.0 → cici_tools-0.17.1}/.cici/.gitlab-ci.yml +0 -0
  8. {cici_tools-0.17.0 → cici_tools-0.17.1}/.cici/README.md.j2 +0 -0
  9. {cici_tools-0.17.0 → cici_tools-0.17.1}/.cici/config.yaml +0 -0
  10. {cici_tools-0.17.0 → cici_tools-0.17.1}/.dockerignore +0 -0
  11. {cici_tools-0.17.0 → cici_tools-0.17.1}/.gitignore +0 -0
  12. {cici_tools-0.17.0 → cici_tools-0.17.1}/.gitlab-ci.yml +0 -0
  13. {cici_tools-0.17.0 → cici_tools-0.17.1}/.licenserc.yaml +0 -0
  14. {cici_tools-0.17.0 → cici_tools-0.17.1}/.pre-commit-config.yaml +0 -0
  15. {cici_tools-0.17.0 → cici_tools-0.17.1}/.pre-commit-hooks.yaml +0 -0
  16. {cici_tools-0.17.0 → cici_tools-0.17.1}/.prettierignore +0 -0
  17. {cici_tools-0.17.0 → cici_tools-0.17.1}/.prettierrc.yaml +0 -0
  18. {cici_tools-0.17.0 → cici_tools-0.17.1}/.secrets.baseline +0 -0
  19. {cici_tools-0.17.0 → cici_tools-0.17.1}/Dockerfile +0 -0
  20. {cici_tools-0.17.0 → cici_tools-0.17.1}/LICENSE +0 -0
  21. {cici_tools-0.17.0 → cici_tools-0.17.1}/MANIFEST.in +0 -0
  22. {cici_tools-0.17.0 → cici_tools-0.17.1}/NOTICE +0 -0
  23. {cici_tools-0.17.0 → cici_tools-0.17.1}/README.md +0 -0
  24. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/__init__.py +0 -0
  25. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/__main__.py +0 -0
  26. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/cli/__init__.py +0 -0
  27. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/cli/bundle.py +0 -0
  28. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/cli/readme.py +0 -0
  29. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/cli/schema.py +0 -0
  30. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/cli/update.py +0 -0
  31. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/config/__init__.py +0 -0
  32. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/config/project/__init__.py +0 -0
  33. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/config/project/models.py +0 -0
  34. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/config/user.py +0 -0
  35. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/constants.py +0 -0
  36. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/exceptions.py +0 -0
  37. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/main.py +0 -0
  38. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/paths.py +0 -0
  39. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/__init__.py +0 -0
  40. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/__init__.py +0 -0
  41. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/constants.py +0 -0
  42. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/models.py +0 -0
  43. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/normalizers.py +0 -0
  44. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/serializers.py +0 -0
  45. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/utils.py +0 -0
  46. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/providers/gitlab/yaml_style.py +0 -0
  47. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/py.typed +0 -0
  48. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/schema/LICENSE.gitlab +0 -0
  49. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/schema/__init__.py +0 -0
  50. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/schema/gitlab-ci.json +0 -0
  51. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/README.md.j2 +0 -0
  52. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/__init__.py +0 -0
  53. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/brief.md.j2 +0 -0
  54. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/description.md.j2 +0 -0
  55. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/group-list.j2 +0 -0
  56. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/groups.md.j2 +0 -0
  57. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/target-list.md.j2 +0 -0
  58. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/target-table.md.j2 +0 -0
  59. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/targets.md.j2 +0 -0
  60. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/variable-list.md.j2 +0 -0
  61. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/templates/variables.md.j2 +0 -0
  62. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici/utils.py +0 -0
  63. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici-bundle.yml +0 -0
  64. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici-readme.yml +0 -0
  65. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici-update.yml +0 -0
  66. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici_tools.egg-info/dependency_links.txt +0 -0
  67. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici_tools.egg-info/entry_points.txt +0 -0
  68. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici_tools.egg-info/requires.txt +0 -0
  69. {cici_tools-0.17.0 → cici_tools-0.17.1}/cici_tools.egg-info/top_level.txt +0 -0
  70. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/bundle.md +0 -0
  71. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/config-file.md +0 -0
  72. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/getting-started.md +0 -0
  73. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/gitlab-includes.md +0 -0
  74. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/index.md +0 -0
  75. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/install.md +0 -0
  76. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/readme.md +0 -0
  77. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/style.css +0 -0
  78. {cici_tools-0.17.0 → cici_tools-0.17.1}/docs/update.md +0 -0
  79. {cici_tools-0.17.0 → cici_tools-0.17.1}/makefile +0 -0
  80. {cici_tools-0.17.0 → cici_tools-0.17.1}/mkdocs.yml +0 -0
  81. {cici_tools-0.17.0 → cici_tools-0.17.1}/pyproject.toml +0 -0
  82. {cici_tools-0.17.0 → cici_tools-0.17.1}/requirements.txt +0 -0
  83. {cici_tools-0.17.0 → cici_tools-0.17.1}/scripts/gen-api-doc.py +0 -0
  84. {cici_tools-0.17.0 → cici_tools-0.17.1}/setup.cfg +0 -0
  85. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/extends/.cici/.gitlab-ci.yml +0 -0
  86. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/extends/simple-job.yml +0 -0
  87. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/helm/.cici/.gitlab-ci.yml +0 -0
  88. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/helm/helm-cm-push.yml +0 -0
  89. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/helm/helm-docs.yml +0 -0
  90. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/helm/helm-lint.yml +0 -0
  91. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/.cici/.gitlab-ci.yml +0 -0
  92. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/.cici/config.yaml +0 -0
  93. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-apply.yml +0 -0
  94. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-auto-apply.yml +0 -0
  95. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-destroy.yml +0 -0
  96. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-plan.yml +0 -0
  97. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-trivy.yml +0 -0
  98. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-development-validate.yml +0 -0
  99. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-fmt.yml +0 -0
  100. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-module-build.yml +0 -0
  101. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-module-release.yml +0 -0
  102. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-apply.yml +0 -0
  103. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-auto-apply.yml +0 -0
  104. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-destroy.yml +0 -0
  105. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-plan.yml +0 -0
  106. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-trivy.yml +0 -0
  107. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-production-validate.yml +0 -0
  108. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-apply.yml +0 -0
  109. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-auto-apply.yml +0 -0
  110. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-destroy.yml +0 -0
  111. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-plan.yml +0 -0
  112. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-trivy.yml +0 -0
  113. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-staging-validate.yml +0 -0
  114. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-trivy.yml +0 -0
  115. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/job-variables/opentofu-validate.yml +0 -0
  116. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/library-validator/.cici/README.md.j2 +0 -0
  117. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/library-validator/.cici/config.yaml +0 -0
  118. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/library-validator/README.md +0 -0
  119. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/list-anchors/.cici/.gitlab-ci.yml +0 -0
  120. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/list-anchors/install.yml +0 -0
  121. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/nested-extends/.cici/.gitlab-ci.yml +0 -0
  122. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/nested-extends/simple-job.yml +0 -0
  123. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/reports/.cici/.gitlab-ci.yml +0 -0
  124. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/reports/reports-container-scanning.yml +0 -0
  125. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/reports/reports-coverage.yml +0 -0
  126. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/reports/reports-junit.yml +0 -0
  127. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/reports/reports-terraform.yml +0 -0
  128. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/.cici/.gitlab-ci.yml +0 -0
  129. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/.cici/config.yaml +0 -0
  130. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-amd64.yml +0 -0
  131. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-arm32v6.yml +0 -0
  132. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-arm32v7.yml +0 -0
  133. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-arm64v8.yml +0 -0
  134. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-i386.yml +0 -0
  135. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch-manifest.yml +0 -0
  136. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker-multiarch.yml +0 -0
  137. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-docker.yml +0 -0
  138. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-hadolint.yml +0 -0
  139. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/service-key/container-trivy.yml +0 -0
  140. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/simple/.cici/.gitlab-ci.yml +0 -0
  141. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/simple/simple-job.yml +0 -0
  142. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/stages/.cici/.gitlab-ci.yml +0 -0
  143. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/stages/simple-job.yml +0 -0
  144. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/.gitlab-ci.yml +0 -0
  145. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/config.yaml +0 -0
  146. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-development-apply.yaml +0 -0
  147. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-development-auto-apply.yaml +0 -0
  148. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-development-destroy.yaml +0 -0
  149. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-development-plan.yaml +0 -0
  150. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-development-validate.yaml +0 -0
  151. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-fmt.yaml +0 -0
  152. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-module-build.yaml +0 -0
  153. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-module-release.yaml +0 -0
  154. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-apply.yaml +0 -0
  155. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-auto-apply.yaml +0 -0
  156. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-destroy.yaml +0 -0
  157. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-plan.yaml +0 -0
  158. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-trivy.yaml +0 -0
  159. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-production-validate.yaml +0 -0
  160. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-apply.yaml +0 -0
  161. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-auto-apply.yaml +0 -0
  162. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-destroy.yaml +0 -0
  163. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-plan.yaml +0 -0
  164. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-trivy.yaml +0 -0
  165. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-staging-validate.yaml +0 -0
  166. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-trivy.yaml +0 -0
  167. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/opentofu-validate.yaml +0 -0
  168. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/.cici/targets/tofu-development-trivy.yaml +0 -0
  169. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-apply.yml +0 -0
  170. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-auto-apply.yml +0 -0
  171. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-destroy.yml +0 -0
  172. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-plan.yml +0 -0
  173. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-trivy.yml +0 -0
  174. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-development-validate.yml +0 -0
  175. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-fmt.yml +0 -0
  176. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-module-build.yml +0 -0
  177. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-module-release.yml +0 -0
  178. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-apply.yml +0 -0
  179. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-auto-apply.yml +0 -0
  180. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-destroy.yml +0 -0
  181. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-plan.yml +0 -0
  182. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-trivy.yml +0 -0
  183. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-production-validate.yml +0 -0
  184. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-apply.yml +0 -0
  185. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-auto-apply.yml +0 -0
  186. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-destroy.yml +0 -0
  187. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-plan.yml +0 -0
  188. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-trivy.yml +0 -0
  189. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-staging-validate.yml +0 -0
  190. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-trivy.yml +0 -0
  191. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/targets-dir/opentofu-validate.yml +0 -0
  192. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/.cici/.gitlab-ci.yml +0 -0
  193. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/terraform-fmt.yml +0 -0
  194. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/terraform-production-apply.yml +0 -0
  195. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/terraform-production-plan.yml +0 -0
  196. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/terraform-staging-apply.yml +0 -0
  197. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/terraform/terraform-staging-destroy.yml +0 -0
  198. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/variables/.cici/.gitlab-ci.yml +0 -0
  199. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/fixtures/gitlab/variables/simple-job.yml +0 -0
  200. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/test_build.py +0 -0
  201. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/test_cli.py +0 -0
  202. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/test_expand_job_extends.py +0 -0
  203. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/test_import.py +0 -0
  204. {cici_tools-0.17.0 → cici_tools-0.17.1}/tests/test_resolve_targets.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cici-tools
3
- Version: 0.17.0
3
+ Version: 0.17.1
4
4
  Summary: Continuous Integration Catalog Interface
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '0.17.0'
32
- __version_tuple__ = version_tuple = (0, 17, 0)
31
+ __version__ = version = '0.17.1'
32
+ __version_tuple__ = version_tuple = (0, 17, 1)
33
33
 
34
- __commit_id__ = commit_id = 'ge723e80c8'
34
+ __commit_id__ = commit_id = 'ge578edc48'
@@ -148,14 +148,19 @@ def loads(
148
148
  # verify targets exists even if empty
149
149
  data.setdefault("targets", [])
150
150
 
151
- # Inject precommit/gitlab includes into each target
151
+ # Inject precommit/gitlab include references into each target
152
+ for target in data["targets"]:
153
+ name = target["name"]
152
154
 
153
- # Debug to test injection
154
- # print("Before injection:", data["targets"])
155
+ # if precommit hook exists in .pre-commit-hooks.yml, attach a pre-commit hook reference
156
+ # Injected object must match PreCommitHookTarget schema to keep msgspec happy
157
+ if name in precommit_hooks:
158
+ target["precommit_hook"] = {"name": name}
159
+ else:
160
+ # Remove key entirely when no hook exists so msgspec can apply
161
+ target.pop("precommit_hook", None)
155
162
 
156
- for target in data["targets"]:
157
- target["precommit_hook"] = {"name": target["name"]}
158
- target["gitlab_include"] = {"name": target["name"]}
163
+ target["gitlab_include"] = {"name": name}
159
164
 
160
165
  # Debug to test injection
161
166
  # print("After injection:", data["targets"])
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cici-tools
3
- Version: 0.17.0
3
+ Version: 0.17.1
4
4
  Summary: Continuous Integration Catalog Interface
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
@@ -83,6 +83,7 @@ tests/test_build.py
83
83
  tests/test_cli.py
84
84
  tests/test_expand_job_extends.py
85
85
  tests/test_import.py
86
+ tests/test_precommit_hook_injection.py
86
87
  tests/test_resolve_targets.py
87
88
  tests/fixtures/gitlab/extends/simple-job.yml
88
89
  tests/fixtures/gitlab/extends/.cici/.gitlab-ci.yml
@@ -0,0 +1,47 @@
1
+ # SPDX-FileCopyrightText: UL Research Institutes
2
+ # SPDX-License-Identifier: Apache-2.0
3
+
4
+ import pytest
5
+
6
+ from cici.config.project.serializers import loads
7
+
8
+ CONFIG_YAML = """
9
+ name: test-pipeline
10
+ targets:
11
+ - name: A
12
+ - name: B
13
+ - name: C
14
+ - name: D
15
+ """
16
+ # Only some targets have hooks
17
+ PRECOMMIT_HOOKS = {"A": {}, "C": {}}
18
+
19
+
20
+ def _target_by_name(file_obj, name: str):
21
+ for t in file_obj.targets:
22
+ if t.name == name:
23
+ return t
24
+ raise AssertionError(f"Target not found: {name}")
25
+
26
+
27
+ @pytest.mark.parametrize(
28
+ "target_name, expected_has_hook",
29
+ [
30
+ ("A", True),
31
+ ("B", False),
32
+ ("C", True),
33
+ ("D", False),
34
+ ],
35
+ )
36
+ def test_precommit_hook_injection_is_name_based(
37
+ target_name: str,
38
+ expected_has_hook: bool,
39
+ ):
40
+ file_obj = loads(
41
+ CONFIG_YAML,
42
+ gitlab_ci_jobs={}, # irrelevant for this test
43
+ precommit_hooks=PRECOMMIT_HOOKS, # the thing we care about
44
+ )
45
+ target = _target_by_name(file_obj, target_name)
46
+ # dict-or-None version
47
+ assert (target.precommit_hook is not None) == expected_has_hook
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