infrahub-server 1.1.9__tar.gz → 1.2.0__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 (1125) hide show
  1. infrahub_server-1.2.0/PKG-INFO +138 -0
  2. infrahub_server-1.2.0/backend/infrahub/api/artifact.py +106 -0
  3. infrahub_server-1.2.0/backend/infrahub/api/dependencies.py +143 -0
  4. infrahub_server-1.2.0/backend/infrahub/api/diff/validation_models.py +35 -0
  5. infrahub_server-1.2.0/backend/infrahub/api/oauth2.py +146 -0
  6. infrahub_server-1.2.0/backend/infrahub/api/oidc.py +215 -0
  7. infrahub_server-1.2.0/backend/infrahub/api/query.py +198 -0
  8. infrahub_server-1.2.0/backend/infrahub/api/schema.py +449 -0
  9. infrahub_server-1.2.0/backend/infrahub/api/transformation.py +160 -0
  10. infrahub_server-1.2.0/backend/infrahub/artifacts/models.py +27 -0
  11. infrahub_server-1.2.0/backend/infrahub/artifacts/tasks.py +97 -0
  12. infrahub_server-1.2.0/backend/infrahub/cli/__init__.py +60 -0
  13. infrahub_server-1.2.0/backend/infrahub/cli/constants.py +3 -0
  14. infrahub_server-1.2.0/backend/infrahub/cli/db.py +421 -0
  15. infrahub_server-1.2.0/backend/infrahub/cli/events.py +43 -0
  16. infrahub_server-1.2.0/backend/infrahub/cli/git_agent.py +160 -0
  17. infrahub_server-1.2.0/backend/infrahub/cli/tasks.py +52 -0
  18. infrahub_server-1.2.0/backend/infrahub/cli/upgrade.py +146 -0
  19. infrahub_server-1.2.0/backend/infrahub/computed_attribute/gather.py +174 -0
  20. infrahub_server-1.2.0/backend/infrahub/computed_attribute/models.py +274 -0
  21. infrahub_server-1.2.0/backend/infrahub/computed_attribute/tasks.py +456 -0
  22. infrahub_server-1.2.0/backend/infrahub/computed_attribute/triggers.py +56 -0
  23. infrahub_server-1.2.0/backend/infrahub/config.py +890 -0
  24. infrahub_server-1.2.0/backend/infrahub/context.py +53 -0
  25. infrahub_server-1.2.0/backend/infrahub/core/account.py +592 -0
  26. infrahub_server-1.2.0/backend/infrahub/core/attribute.py +1247 -0
  27. infrahub_server-1.2.0/backend/infrahub/core/branch/models.py +513 -0
  28. infrahub_server-1.2.0/backend/infrahub/core/branch/tasks.py +414 -0
  29. infrahub_server-1.2.0/backend/infrahub/core/changelog/diff.py +291 -0
  30. infrahub_server-1.2.0/backend/infrahub/core/changelog/models.py +662 -0
  31. infrahub_server-1.2.0/backend/infrahub/core/constants/__init__.py +362 -0
  32. infrahub_server-1.2.0/backend/infrahub/core/constants/infrahubkind.py +72 -0
  33. infrahub_server-1.2.0/backend/infrahub/core/constants/schema.py +57 -0
  34. infrahub_server-1.2.0/backend/infrahub/core/constraint/node/runner.py +39 -0
  35. infrahub_server-1.2.0/backend/infrahub/core/diff/branch_differ.py +224 -0
  36. infrahub_server-1.2.0/backend/infrahub/core/diff/combiner.py +446 -0
  37. infrahub_server-1.2.0/backend/infrahub/core/diff/enricher/cardinality_one.py +130 -0
  38. infrahub_server-1.2.0/backend/infrahub/core/diff/enricher/hierarchy.py +178 -0
  39. infrahub_server-1.2.0/backend/infrahub/core/diff/enricher/labels.py +221 -0
  40. infrahub_server-1.2.0/backend/infrahub/core/diff/enricher/path_identifier.py +68 -0
  41. infrahub_server-1.2.0/backend/infrahub/core/diff/enricher/summary_counts.py +107 -0
  42. infrahub_server-1.2.0/backend/infrahub/core/diff/ipam_diff_parser.py +166 -0
  43. infrahub_server-1.2.0/backend/infrahub/core/diff/merger/merger.py +87 -0
  44. infrahub_server-1.2.0/backend/infrahub/core/diff/model/diff.py +338 -0
  45. infrahub_server-1.2.0/backend/infrahub/core/diff/model/path.py +894 -0
  46. infrahub_server-1.2.0/backend/infrahub/core/diff/query/all_conflicts.py +67 -0
  47. infrahub_server-1.2.0/backend/infrahub/core/diff/query/artifact.py +211 -0
  48. infrahub_server-1.2.0/backend/infrahub/core/diff/query/delete_query.py +25 -0
  49. infrahub_server-1.2.0/backend/infrahub/core/diff/query/diff_get.py +165 -0
  50. infrahub_server-1.2.0/backend/infrahub/core/diff/query/diff_summary.py +106 -0
  51. infrahub_server-1.2.0/backend/infrahub/core/diff/query/field_specifiers.py +37 -0
  52. infrahub_server-1.2.0/backend/infrahub/core/diff/query/field_summary.py +79 -0
  53. infrahub_server-1.2.0/backend/infrahub/core/diff/query/filters.py +105 -0
  54. infrahub_server-1.2.0/backend/infrahub/core/diff/query/get_conflict_query.py +27 -0
  55. infrahub_server-1.2.0/backend/infrahub/core/diff/query/has_conflicts_query.py +69 -0
  56. infrahub_server-1.2.0/backend/infrahub/core/diff/query/merge.py +542 -0
  57. infrahub_server-1.2.0/backend/infrahub/core/diff/query/merge_tracking_id.py +25 -0
  58. infrahub_server-1.2.0/backend/infrahub/core/diff/query/roots_metadata.py +55 -0
  59. infrahub_server-1.2.0/backend/infrahub/core/diff/query/save.py +461 -0
  60. infrahub_server-1.2.0/backend/infrahub/core/diff/query/summary_counts_enricher.py +267 -0
  61. infrahub_server-1.2.0/backend/infrahub/core/diff/query/time_range_query.py +77 -0
  62. infrahub_server-1.2.0/backend/infrahub/core/diff/query/update_conflict_query.py +37 -0
  63. infrahub_server-1.2.0/backend/infrahub/core/diff/query_parser.py +799 -0
  64. infrahub_server-1.2.0/backend/infrahub/core/diff/repository/deserializer.py +389 -0
  65. infrahub_server-1.2.0/backend/infrahub/core/diff/tasks.py +68 -0
  66. infrahub_server-1.2.0/backend/infrahub/core/enums.py +17 -0
  67. infrahub_server-1.2.0/backend/infrahub/core/initialization.py +520 -0
  68. infrahub_server-1.2.0/backend/infrahub/core/integrity/object_conflict/conflict_recorder.py +133 -0
  69. infrahub_server-1.2.0/backend/infrahub/core/ipam/constants.py +11 -0
  70. infrahub_server-1.2.0/backend/infrahub/core/ipam/reconciler.py +211 -0
  71. infrahub_server-1.2.0/backend/infrahub/core/ipam/tasks.py +41 -0
  72. infrahub_server-1.2.0/backend/infrahub/core/ipam/utilization.py +155 -0
  73. infrahub_server-1.2.0/backend/infrahub/core/manager.py +1359 -0
  74. infrahub_server-1.2.0/backend/infrahub/core/merge.py +236 -0
  75. infrahub_server-1.2.0/backend/infrahub/core/migrations/__init__.py +23 -0
  76. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/__init__.py +69 -0
  77. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m001_add_version_to_graph.py +49 -0
  78. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m002_attribute_is_default.py +36 -0
  79. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m003_relationship_parent_optional.py +55 -0
  80. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m004_add_attr_documentation.py +48 -0
  81. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m005_add_rel_read_only.py +40 -0
  82. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m006_add_rel_on_delete.py +40 -0
  83. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m007_add_rel_allow_override.py +48 -0
  84. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m008_add_human_friendly_id.py +48 -0
  85. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m009_add_generate_profile_attr.py +40 -0
  86. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m010_add_generate_profile_attr_generic.py +40 -0
  87. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m011_remove_profile_relationship_schema.py +48 -0
  88. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m012_convert_account_generic.py +345 -0
  89. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m013_convert_git_password_credential.py +317 -0
  90. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m014_remove_index_attr_value.py +44 -0
  91. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m015_diff_format_update.py +36 -0
  92. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m016_diff_delete_bug_fix.py +36 -0
  93. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m017_add_core_profile.py +40 -0
  94. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m018_uniqueness_nulls.py +101 -0
  95. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m019_restore_rels_to_time.py +256 -0
  96. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m020_duplicate_edges.py +160 -0
  97. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m021_missing_hierarchy_merge.py +51 -0
  98. infrahub_server-1.2.0/backend/infrahub/core/migrations/graph/m022_add_generate_template_attr.py +48 -0
  99. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/attribute_add.py +90 -0
  100. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/attribute_rename.py +187 -0
  101. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/delete_element_in_schema.py +176 -0
  102. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/node_duplicate.py +198 -0
  103. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/relationship_duplicate.py +176 -0
  104. infrahub_server-1.2.0/backend/infrahub/core/migrations/query/schema_attribute_update.py +93 -0
  105. infrahub_server-1.2.0/backend/infrahub/core/migrations/schema/models.py +38 -0
  106. infrahub_server-1.2.0/backend/infrahub/core/migrations/schema/node_attribute_remove.py +115 -0
  107. infrahub_server-1.2.0/backend/infrahub/core/migrations/schema/node_remove.py +183 -0
  108. infrahub_server-1.2.0/backend/infrahub/core/migrations/schema/tasks.py +113 -0
  109. infrahub_server-1.2.0/backend/infrahub/core/migrations/shared.py +189 -0
  110. infrahub_server-1.2.0/backend/infrahub/core/models.py +585 -0
  111. infrahub_server-1.2.0/backend/infrahub/core/node/__init__.py +884 -0
  112. infrahub_server-1.2.0/backend/infrahub/core/node/base.py +80 -0
  113. infrahub_server-1.2.0/backend/infrahub/core/node/constraints/attribute_uniqueness.py +51 -0
  114. infrahub_server-1.2.0/backend/infrahub/core/node/constraints/grouped_uniqueness.py +201 -0
  115. infrahub_server-1.2.0/backend/infrahub/core/node/constraints/interface.py +9 -0
  116. infrahub_server-1.2.0/backend/infrahub/core/node/delete_validator.py +208 -0
  117. infrahub_server-1.2.0/backend/infrahub/core/node/ipam.py +62 -0
  118. infrahub_server-1.2.0/backend/infrahub/core/node/permissions.py +66 -0
  119. infrahub_server-1.2.0/backend/infrahub/core/node/resource_manager/ip_address_pool.py +109 -0
  120. infrahub_server-1.2.0/backend/infrahub/core/node/resource_manager/ip_prefix_pool.py +115 -0
  121. infrahub_server-1.2.0/backend/infrahub/core/node/resource_manager/number_pool.py +66 -0
  122. infrahub_server-1.2.0/backend/infrahub/core/node/standard.py +220 -0
  123. infrahub_server-1.2.0/backend/infrahub/core/path.py +169 -0
  124. infrahub_server-1.2.0/backend/infrahub/core/property.py +147 -0
  125. infrahub_server-1.2.0/backend/infrahub/core/protocols.py +501 -0
  126. infrahub_server-1.2.0/backend/infrahub/core/protocols_base.py +101 -0
  127. infrahub_server-1.2.0/backend/infrahub/core/query/__init__.py +695 -0
  128. infrahub_server-1.2.0/backend/infrahub/core/query/attribute.py +305 -0
  129. infrahub_server-1.2.0/backend/infrahub/core/query/branch.py +152 -0
  130. infrahub_server-1.2.0/backend/infrahub/core/query/delete.py +58 -0
  131. infrahub_server-1.2.0/backend/infrahub/core/query/diff.py +720 -0
  132. infrahub_server-1.2.0/backend/infrahub/core/query/ipam.py +635 -0
  133. infrahub_server-1.2.0/backend/infrahub/core/query/node.py +1469 -0
  134. infrahub_server-1.2.0/backend/infrahub/core/query/relationship.py +1120 -0
  135. infrahub_server-1.2.0/backend/infrahub/core/query/resource_manager.py +380 -0
  136. infrahub_server-1.2.0/backend/infrahub/core/query/standard_node.py +155 -0
  137. infrahub_server-1.2.0/backend/infrahub/core/query/subquery.py +186 -0
  138. infrahub_server-1.2.0/backend/infrahub/core/query/task.py +97 -0
  139. infrahub_server-1.2.0/backend/infrahub/core/query/task_log.py +33 -0
  140. infrahub_server-1.2.0/backend/infrahub/core/query/utils.py +37 -0
  141. infrahub_server-1.2.0/backend/infrahub/core/registry.py +224 -0
  142. infrahub_server-1.2.0/backend/infrahub/core/relationship/constraints/count.py +87 -0
  143. infrahub_server-1.2.0/backend/infrahub/core/relationship/constraints/peer_kind.py +63 -0
  144. infrahub_server-1.2.0/backend/infrahub/core/relationship/constraints/profiles_kind.py +55 -0
  145. infrahub_server-1.2.0/backend/infrahub/core/relationship/model.py +1230 -0
  146. infrahub_server-1.2.0/backend/infrahub/core/schema/__init__.py +114 -0
  147. infrahub_server-1.2.0/backend/infrahub/core/schema/attribute_schema.py +146 -0
  148. infrahub_server-1.2.0/backend/infrahub/core/schema/basenode_schema.py +509 -0
  149. infrahub_server-1.2.0/backend/infrahub/core/schema/computed_attribute.py +52 -0
  150. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/__init__.py +147 -0
  151. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/account.py +171 -0
  152. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/artifact.py +136 -0
  153. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/builtin.py +24 -0
  154. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/check.py +68 -0
  155. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/core.py +17 -0
  156. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/generator.py +100 -0
  157. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/graphql_query.py +79 -0
  158. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/group.py +108 -0
  159. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/ipam.py +193 -0
  160. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/lineage.py +19 -0
  161. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/menu.py +48 -0
  162. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/permission.py +163 -0
  163. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/profile.py +18 -0
  164. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/propose_change.py +97 -0
  165. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/propose_change_comment.py +193 -0
  166. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/propose_change_validator.py +328 -0
  167. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/repository.py +286 -0
  168. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/resource_pool.py +170 -0
  169. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/template.py +27 -0
  170. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/transform.py +96 -0
  171. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/core/webhook.py +134 -0
  172. infrahub_server-1.2.0/backend/infrahub/core/schema/definitions/internal.py +915 -0
  173. infrahub_server-1.2.0/backend/infrahub/core/schema/dropdown.py +26 -0
  174. infrahub_server-1.2.0/backend/infrahub/core/schema/generated/attribute_schema.py +120 -0
  175. infrahub_server-1.2.0/backend/infrahub/core/schema/generated/base_node_schema.py +106 -0
  176. infrahub_server-1.2.0/backend/infrahub/core/schema/generated/genericnode_schema.py +30 -0
  177. infrahub_server-1.2.0/backend/infrahub/core/schema/generated/node_schema.py +40 -0
  178. infrahub_server-1.2.0/backend/infrahub/core/schema/generated/relationship_schema.py +131 -0
  179. infrahub_server-1.2.0/backend/infrahub/core/schema/generic_schema.py +44 -0
  180. infrahub_server-1.2.0/backend/infrahub/core/schema/manager.py +735 -0
  181. infrahub_server-1.2.0/backend/infrahub/core/schema/node_schema.py +145 -0
  182. infrahub_server-1.2.0/backend/infrahub/core/schema/profile_schema.py +38 -0
  183. infrahub_server-1.2.0/backend/infrahub/core/schema/relationship_schema.py +230 -0
  184. infrahub_server-1.2.0/backend/infrahub/core/schema/schema_branch.py +2082 -0
  185. infrahub_server-1.2.0/backend/infrahub/core/schema/schema_branch_computed.py +211 -0
  186. infrahub_server-1.2.0/backend/infrahub/core/schema/template_schema.py +36 -0
  187. infrahub_server-1.2.0/backend/infrahub/core/task/task.py +95 -0
  188. infrahub_server-1.2.0/backend/infrahub/core/task/user_task.py +130 -0
  189. infrahub_server-1.2.0/backend/infrahub/core/timestamp.py +34 -0
  190. infrahub_server-1.2.0/backend/infrahub/core/utils.py +278 -0
  191. infrahub_server-1.2.0/backend/infrahub/core/validators/__init__.py +40 -0
  192. infrahub_server-1.2.0/backend/infrahub/core/validators/aggregated_checker.py +106 -0
  193. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/choices.py +104 -0
  194. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/enum.py +104 -0
  195. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/kind.py +111 -0
  196. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/length.py +99 -0
  197. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/optional.py +95 -0
  198. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/regex.py +99 -0
  199. infrahub_server-1.2.0/backend/infrahub/core/validators/attribute/unique.py +124 -0
  200. infrahub_server-1.2.0/backend/infrahub/core/validators/checks_runner.py +60 -0
  201. infrahub_server-1.2.0/backend/infrahub/core/validators/determiner.py +163 -0
  202. infrahub_server-1.2.0/backend/infrahub/core/validators/model.py +20 -0
  203. infrahub_server-1.2.0/backend/infrahub/core/validators/models/validate_migration.py +39 -0
  204. infrahub_server-1.2.0/backend/infrahub/core/validators/node/attribute.py +45 -0
  205. infrahub_server-1.2.0/backend/infrahub/core/validators/node/generate_profile.py +90 -0
  206. infrahub_server-1.2.0/backend/infrahub/core/validators/node/hierarchy.py +181 -0
  207. infrahub_server-1.2.0/backend/infrahub/core/validators/node/inherit_from.py +59 -0
  208. infrahub_server-1.2.0/backend/infrahub/core/validators/node/relationship.py +45 -0
  209. infrahub_server-1.2.0/backend/infrahub/core/validators/query.py +54 -0
  210. infrahub_server-1.2.0/backend/infrahub/core/validators/relationship/count.py +196 -0
  211. infrahub_server-1.2.0/backend/infrahub/core/validators/relationship/optional.py +111 -0
  212. infrahub_server-1.2.0/backend/infrahub/core/validators/relationship/peer.py +132 -0
  213. infrahub_server-1.2.0/backend/infrahub/core/validators/shared.py +40 -0
  214. infrahub_server-1.2.0/backend/infrahub/core/validators/tasks.py +83 -0
  215. infrahub_server-1.2.0/backend/infrahub/core/validators/uniqueness/checker.py +223 -0
  216. infrahub_server-1.2.0/backend/infrahub/core/validators/uniqueness/index.py +104 -0
  217. infrahub_server-1.2.0/backend/infrahub/core/validators/uniqueness/model.py +152 -0
  218. infrahub_server-1.2.0/backend/infrahub/core/validators/uniqueness/query.py +222 -0
  219. infrahub_server-1.2.0/backend/infrahub/database/__init__.py +536 -0
  220. infrahub_server-1.2.0/backend/infrahub/database/memgraph.py +59 -0
  221. infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/combiner.py +8 -0
  222. infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/conflicts_enricher.py +8 -0
  223. infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/deserializer.py +10 -0
  224. infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/enricher/summary_counts.py +8 -0
  225. infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/parent_node_adder.py +8 -0
  226. infrahub_server-1.2.0/backend/infrahub/dependencies/component/registry.py +40 -0
  227. infrahub_server-1.2.0/backend/infrahub/events/__init__.py +27 -0
  228. infrahub_server-1.2.0/backend/infrahub/events/artifact_action.py +64 -0
  229. infrahub_server-1.2.0/backend/infrahub/events/branch_action.py +127 -0
  230. infrahub_server-1.2.0/backend/infrahub/events/generator.py +71 -0
  231. infrahub_server-1.2.0/backend/infrahub/events/group_action.py +103 -0
  232. infrahub_server-1.2.0/backend/infrahub/events/models.py +200 -0
  233. infrahub_server-1.2.0/backend/infrahub/events/node_action.py +162 -0
  234. infrahub_server-1.2.0/backend/infrahub/events/repository_action.py +24 -0
  235. infrahub_server-1.2.0/backend/infrahub/events/schema_action.py +44 -0
  236. infrahub_server-1.2.0/backend/infrahub/events/utils.py +16 -0
  237. infrahub_server-1.2.0/backend/infrahub/events/validator_action.py +55 -0
  238. infrahub_server-1.2.0/backend/infrahub/exceptions.py +360 -0
  239. infrahub_server-1.2.0/backend/infrahub/generators/models.py +44 -0
  240. infrahub_server-1.2.0/backend/infrahub/generators/tasks.py +231 -0
  241. infrahub_server-1.2.0/backend/infrahub/git/base.py +922 -0
  242. infrahub_server-1.2.0/backend/infrahub/git/constants.py +3 -0
  243. infrahub_server-1.2.0/backend/infrahub/git/integrator.py +1342 -0
  244. infrahub_server-1.2.0/backend/infrahub/git/models.py +204 -0
  245. infrahub_server-1.2.0/backend/infrahub/git/repository.py +280 -0
  246. infrahub_server-1.2.0/backend/infrahub/git/tasks.py +890 -0
  247. infrahub_server-1.2.0/backend/infrahub/git/utils.py +48 -0
  248. infrahub_server-1.2.0/backend/infrahub/git/worktree.py +47 -0
  249. infrahub_server-1.2.0/backend/infrahub/git_credential/askpass.py +48 -0
  250. infrahub_server-1.2.0/backend/infrahub/git_credential/helper.py +75 -0
  251. infrahub_server-1.2.0/backend/infrahub/graphql/analyzer.py +621 -0
  252. infrahub_server-1.2.0/backend/infrahub/graphql/app.py +536 -0
  253. infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker/anonymous_checker.py +30 -0
  254. infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker/default_branch_checker.py +50 -0
  255. infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker/merge_operation_checker.py +35 -0
  256. infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker/object_permission_checker.py +190 -0
  257. infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker/super_admin_checker.py +35 -0
  258. infrahub_server-1.2.0/backend/infrahub/graphql/context.py +39 -0
  259. infrahub_server-1.2.0/backend/infrahub/graphql/enums.py +28 -0
  260. infrahub_server-1.2.0/backend/infrahub/graphql/initialization.py +126 -0
  261. infrahub_server-1.2.0/backend/infrahub/graphql/loaders/node.py +72 -0
  262. infrahub_server-1.2.0/backend/infrahub/graphql/loaders/shared.py +13 -0
  263. infrahub_server-1.2.0/backend/infrahub/graphql/manager.py +1036 -0
  264. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/account.py +171 -0
  265. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/artifact_definition.py +96 -0
  266. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/branch.py +297 -0
  267. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/computed_attribute.py +115 -0
  268. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/diff.py +110 -0
  269. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/diff_conflict.py +77 -0
  270. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/generator.py +83 -0
  271. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/graphql_query.py +99 -0
  272. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/ipam.py +434 -0
  273. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/main.py +617 -0
  274. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/menu.py +100 -0
  275. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/models.py +11 -0
  276. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/node_getter/by_default_filter.py +43 -0
  277. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/node_getter/by_hfid.py +78 -0
  278. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/node_getter/by_id.py +26 -0
  279. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/node_getter/interface.py +17 -0
  280. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/proposed_change.py +256 -0
  281. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/relationship.py +439 -0
  282. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/repository.py +296 -0
  283. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/resource_manager.py +223 -0
  284. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/schema.py +340 -0
  285. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/tasks.py +72 -0
  286. infrahub_server-1.2.0/backend/infrahub/graphql/mutations/webhook.py +137 -0
  287. infrahub_server-1.2.0/backend/infrahub/graphql/parser.py +213 -0
  288. infrahub_server-1.2.0/backend/infrahub/graphql/permissions.py +27 -0
  289. infrahub_server-1.2.0/backend/infrahub/graphql/queries/account.py +162 -0
  290. infrahub_server-1.2.0/backend/infrahub/graphql/queries/branch.py +30 -0
  291. infrahub_server-1.2.0/backend/infrahub/graphql/queries/diff/tree.py +552 -0
  292. infrahub_server-1.2.0/backend/infrahub/graphql/queries/event.py +115 -0
  293. infrahub_server-1.2.0/backend/infrahub/graphql/queries/internal.py +26 -0
  294. infrahub_server-1.2.0/backend/infrahub/graphql/queries/ipam.py +121 -0
  295. infrahub_server-1.2.0/backend/infrahub/graphql/queries/relationship.py +83 -0
  296. infrahub_server-1.2.0/backend/infrahub/graphql/queries/resource_manager.py +346 -0
  297. infrahub_server-1.2.0/backend/infrahub/graphql/queries/search.py +152 -0
  298. infrahub_server-1.2.0/backend/infrahub/graphql/queries/status.py +69 -0
  299. infrahub_server-1.2.0/backend/infrahub/graphql/queries/task.py +118 -0
  300. infrahub_server-1.2.0/backend/infrahub/graphql/resolvers/many_relationship.py +264 -0
  301. infrahub_server-1.2.0/backend/infrahub/graphql/resolvers/resolver.py +327 -0
  302. infrahub_server-1.2.0/backend/infrahub/graphql/resolvers/single_relationship.py +175 -0
  303. infrahub_server-1.2.0/backend/infrahub/graphql/schema.py +111 -0
  304. infrahub_server-1.2.0/backend/infrahub/graphql/subscription/__init__.py +37 -0
  305. infrahub_server-1.2.0/backend/infrahub/graphql/subscription/events.py +48 -0
  306. infrahub_server-1.2.0/backend/infrahub/graphql/subscription/graphql_query.py +60 -0
  307. infrahub_server-1.2.0/backend/infrahub/graphql/types/branch.py +46 -0
  308. infrahub_server-1.2.0/backend/infrahub/graphql/types/common.py +12 -0
  309. infrahub_server-1.2.0/backend/infrahub/graphql/types/context.py +12 -0
  310. infrahub_server-1.2.0/backend/infrahub/graphql/types/enums.py +12 -0
  311. infrahub_server-1.2.0/backend/infrahub/graphql/types/event.py +167 -0
  312. infrahub_server-1.2.0/backend/infrahub/graphql/types/interface.py +28 -0
  313. infrahub_server-1.2.0/backend/infrahub/graphql/types/node.py +32 -0
  314. infrahub_server-1.2.0/backend/infrahub/graphql/types/permission.py +42 -0
  315. infrahub_server-1.2.0/backend/infrahub/graphql/types/relationship.py +18 -0
  316. infrahub_server-1.2.0/backend/infrahub/graphql/types/standard_node.py +54 -0
  317. infrahub_server-1.2.0/backend/infrahub/graphql/utils.py +106 -0
  318. infrahub_server-1.2.0/backend/infrahub/groups/ancestors.py +29 -0
  319. infrahub_server-1.2.0/backend/infrahub/groups/parsers.py +107 -0
  320. infrahub_server-1.2.0/backend/infrahub/groups/tasks.py +41 -0
  321. infrahub_server-1.2.0/backend/infrahub/lock.py +261 -0
  322. infrahub_server-1.2.0/backend/infrahub/menu/generator.py +136 -0
  323. infrahub_server-1.2.0/backend/infrahub/menu/menu.py +355 -0
  324. infrahub_server-1.2.0/backend/infrahub/menu/models.py +277 -0
  325. infrahub_server-1.2.0/backend/infrahub/menu/repository.py +111 -0
  326. infrahub_server-1.2.0/backend/infrahub/menu/utils.py +9 -0
  327. infrahub_server-1.2.0/backend/infrahub/message_bus/__init__.py +106 -0
  328. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/__init__.py +62 -0
  329. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/check_generator_run.py +26 -0
  330. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/event_branch_merge.py +13 -0
  331. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/finalize_validator_execution.py +15 -0
  332. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/proposed_change/request_proposedchange_refreshartifacts.py +11 -0
  333. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/request_generatordefinition_check.py +20 -0
  334. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/request_proposedchange_pipeline.py +18 -0
  335. infrahub_server-1.2.0/backend/infrahub/message_bus/messages/send_echo_request.py +20 -0
  336. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/__init__.py +57 -0
  337. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/check/__init__.py +3 -0
  338. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/check/generator.py +156 -0
  339. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/event/__init__.py +3 -0
  340. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/event/branch.py +61 -0
  341. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/event/worker.py +9 -0
  342. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/finalize/validator.py +133 -0
  343. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/git/file.py +34 -0
  344. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/git/repository.py +62 -0
  345. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/requests/__init__.py +9 -0
  346. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/requests/generator_definition.py +140 -0
  347. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/requests/proposed_change.py +603 -0
  348. infrahub_server-1.2.0/backend/infrahub/message_bus/operations/send/echo.py +13 -0
  349. infrahub_server-1.2.0/backend/infrahub/message_bus/types.py +160 -0
  350. infrahub_server-1.2.0/backend/infrahub/permissions/globals.py +15 -0
  351. infrahub_server-1.2.0/backend/infrahub/pools/number.py +65 -0
  352. infrahub_server-1.2.0/backend/infrahub/pools/prefix.py +38 -0
  353. infrahub_server-1.2.0/backend/infrahub/prefect_server/app.py +18 -0
  354. infrahub_server-1.2.0/backend/infrahub/prefect_server/database.py +20 -0
  355. infrahub_server-1.2.0/backend/infrahub/prefect_server/events.py +28 -0
  356. infrahub_server-1.2.0/backend/infrahub/prefect_server/models.py +46 -0
  357. infrahub_server-1.2.0/backend/infrahub/proposed_change/models.py +45 -0
  358. infrahub_server-1.2.0/backend/infrahub/proposed_change/tasks.py +646 -0
  359. infrahub_server-1.2.0/backend/infrahub/pytest_plugin.py +162 -0
  360. infrahub_server-1.2.0/backend/infrahub/server.py +222 -0
  361. infrahub_server-1.2.0/backend/infrahub/services/__init__.py +192 -0
  362. infrahub_server-1.2.0/backend/infrahub/services/adapters/cache/__init__.py +36 -0
  363. infrahub_server-1.2.0/backend/infrahub/services/adapters/cache/nats.py +151 -0
  364. infrahub_server-1.2.0/backend/infrahub/services/adapters/cache/redis.py +46 -0
  365. infrahub_server-1.2.0/backend/infrahub/services/adapters/event/__init__.py +38 -0
  366. infrahub_server-1.2.0/backend/infrahub/services/adapters/http/__init__.py +25 -0
  367. infrahub_server-1.2.0/backend/infrahub/services/adapters/http/httpx.py +105 -0
  368. infrahub_server-1.2.0/backend/infrahub/services/adapters/message_bus/__init__.py +62 -0
  369. infrahub_server-1.2.0/backend/infrahub/services/adapters/message_bus/local.py +61 -0
  370. infrahub_server-1.2.0/backend/infrahub/services/adapters/message_bus/nats.py +295 -0
  371. infrahub_server-1.2.0/backend/infrahub/services/adapters/message_bus/rabbitmq.py +267 -0
  372. infrahub_server-1.2.0/backend/infrahub/services/adapters/workflow/__init__.py +55 -0
  373. infrahub_server-1.2.0/backend/infrahub/services/adapters/workflow/local.py +48 -0
  374. infrahub_server-1.2.0/backend/infrahub/services/adapters/workflow/worker.py +83 -0
  375. infrahub_server-1.2.0/backend/infrahub/services/component.py +151 -0
  376. infrahub_server-1.2.0/backend/infrahub/services/protocols.py +21 -0
  377. infrahub_server-1.2.0/backend/infrahub/services/scheduler.py +86 -0
  378. infrahub_server-1.2.0/backend/infrahub/storage.py +57 -0
  379. infrahub_server-1.2.0/backend/infrahub/task_manager/constants.py +15 -0
  380. infrahub_server-1.2.0/backend/infrahub/task_manager/event.py +275 -0
  381. infrahub_server-1.2.0/backend/infrahub/task_manager/models.py +209 -0
  382. infrahub_server-1.2.0/backend/infrahub/task_manager/task.py +273 -0
  383. infrahub_server-1.2.0/backend/infrahub/tasks/artifact.py +44 -0
  384. infrahub_server-1.2.0/backend/infrahub/tasks/registry.py +69 -0
  385. infrahub_server-1.2.0/backend/infrahub/telemetry/constants.py +9 -0
  386. infrahub_server-1.2.0/backend/infrahub/telemetry/database.py +86 -0
  387. infrahub_server-1.2.0/backend/infrahub/telemetry/models.py +65 -0
  388. infrahub_server-1.2.0/backend/infrahub/telemetry/task_manager.py +77 -0
  389. infrahub_server-1.2.0/backend/infrahub/telemetry/tasks.py +119 -0
  390. infrahub_server-1.2.0/backend/infrahub/telemetry/utils.py +11 -0
  391. infrahub_server-1.2.0/backend/infrahub/transformations/tasks.py +54 -0
  392. infrahub_server-1.2.0/backend/infrahub/trigger/catalogue.py +13 -0
  393. infrahub_server-1.2.0/backend/infrahub/trigger/constants.py +1 -0
  394. infrahub_server-1.2.0/backend/infrahub/trigger/models.py +118 -0
  395. infrahub_server-1.2.0/backend/infrahub/trigger/setup.py +90 -0
  396. infrahub_server-1.2.0/backend/infrahub/trigger/tasks.py +36 -0
  397. infrahub_server-1.2.0/backend/infrahub/types.py +375 -0
  398. infrahub_server-1.2.0/backend/infrahub/utils.py +85 -0
  399. infrahub_server-1.2.0/backend/infrahub/validators/events.py +42 -0
  400. infrahub_server-1.2.0/backend/infrahub/validators/tasks.py +41 -0
  401. infrahub_server-1.2.0/backend/infrahub/webhook/gather.py +17 -0
  402. infrahub_server-1.2.0/backend/infrahub/webhook/models.py +250 -0
  403. infrahub_server-1.2.0/backend/infrahub/webhook/tasks.py +181 -0
  404. infrahub_server-1.2.0/backend/infrahub/webhook/triggers.py +44 -0
  405. infrahub_server-1.2.0/backend/infrahub/workers/infrahub_async.py +228 -0
  406. infrahub_server-1.2.0/backend/infrahub/workers/utils.py +63 -0
  407. infrahub_server-1.2.0/backend/infrahub/workflows/catalogue.py +484 -0
  408. infrahub_server-1.2.0/backend/infrahub/workflows/initialization.py +77 -0
  409. infrahub_server-1.2.0/backend/infrahub/workflows/models.py +104 -0
  410. infrahub_server-1.2.0/backend/infrahub/workflows/utils.py +88 -0
  411. infrahub_server-1.2.0/pyproject.toml +692 -0
  412. infrahub_server-1.2.0/python_sdk/infrahub_sdk/client.py +2723 -0
  413. infrahub_server-1.2.0/python_sdk/infrahub_sdk/context.py +13 -0
  414. infrahub_server-1.2.0/python_sdk/infrahub_sdk/ctl/branch.py +142 -0
  415. infrahub_server-1.2.0/python_sdk/infrahub_sdk/ctl/utils.py +201 -0
  416. infrahub_server-1.2.0/python_sdk/infrahub_sdk/exceptions.py +151 -0
  417. infrahub_server-1.2.0/python_sdk/infrahub_sdk/generator.py +153 -0
  418. infrahub_server-1.2.0/python_sdk/infrahub_sdk/graphql.py +199 -0
  419. infrahub_server-1.2.0/python_sdk/infrahub_sdk/node.py +2189 -0
  420. infrahub_server-1.2.0/python_sdk/infrahub_sdk/protocols.py +973 -0
  421. infrahub_server-1.2.0/python_sdk/infrahub_sdk/protocols_base.py +218 -0
  422. infrahub_server-1.2.0/python_sdk/infrahub_sdk/schema/__init__.py +696 -0
  423. infrahub_server-1.2.0/python_sdk/infrahub_sdk/schema/main.py +350 -0
  424. infrahub_server-1.2.0/python_sdk/infrahub_sdk/task/__init__.py +11 -0
  425. infrahub_server-1.2.0/python_sdk/infrahub_sdk/task/constants.py +3 -0
  426. infrahub_server-1.2.0/python_sdk/infrahub_sdk/task/exceptions.py +25 -0
  427. infrahub_server-1.2.0/python_sdk/infrahub_sdk/task/manager.py +551 -0
  428. infrahub_server-1.2.0/python_sdk/infrahub_sdk/task/models.py +74 -0
  429. infrahub_server-1.2.0/python_sdk/infrahub_sdk/testing/__init__.py +0 -0
  430. infrahub_server-1.2.0/python_sdk/infrahub_sdk/testing/schemas/__init__.py +0 -0
  431. infrahub_server-1.2.0/python_sdk/infrahub_sdk/timestamp.py +200 -0
  432. infrahub_server-1.2.0/python_sdk/infrahub_sdk/transfer/__init__.py +0 -0
  433. infrahub_server-1.2.0/python_sdk/infrahub_sdk/transfer/exporter/__init__.py +0 -0
  434. infrahub_server-1.2.0/python_sdk/infrahub_sdk/transfer/importer/__init__.py +0 -0
  435. infrahub_server-1.2.0/python_sdk/infrahub_sdk/utils.py +397 -0
  436. infrahub_server-1.2.0/python_testcontainers/infrahub_testcontainers/container.py +133 -0
  437. infrahub_server-1.2.0/python_testcontainers/infrahub_testcontainers/docker-compose.test.yml +167 -0
  438. infrahub_server-1.2.0/python_testcontainers/infrahub_testcontainers/helpers.py +152 -0
  439. infrahub_server-1.1.9/PKG-INFO +0 -136
  440. infrahub_server-1.1.9/backend/infrahub/api/artifact.py +0 -94
  441. infrahub_server-1.1.9/backend/infrahub/api/dependencies.py +0 -135
  442. infrahub_server-1.1.9/backend/infrahub/api/diff/validation_models.py +0 -35
  443. infrahub_server-1.1.9/backend/infrahub/api/oauth2.py +0 -147
  444. infrahub_server-1.1.9/backend/infrahub/api/oidc.py +0 -216
  445. infrahub_server-1.1.9/backend/infrahub/api/query.py +0 -187
  446. infrahub_server-1.1.9/backend/infrahub/api/schema.py +0 -423
  447. infrahub_server-1.1.9/backend/infrahub/api/transformation.py +0 -153
  448. infrahub_server-1.1.9/backend/infrahub/cli/__init__.py +0 -58
  449. infrahub_server-1.1.9/backend/infrahub/cli/db.py +0 -440
  450. infrahub_server-1.1.9/backend/infrahub/cli/events.py +0 -38
  451. infrahub_server-1.1.9/backend/infrahub/cli/git_agent.py +0 -158
  452. infrahub_server-1.1.9/backend/infrahub/cli/tasks.py +0 -54
  453. infrahub_server-1.1.9/backend/infrahub/computed_attribute/models.py +0 -83
  454. infrahub_server-1.1.9/backend/infrahub/computed_attribute/tasks.py +0 -774
  455. infrahub_server-1.1.9/backend/infrahub/config.py +0 -890
  456. infrahub_server-1.1.9/backend/infrahub/core/account.py +0 -595
  457. infrahub_server-1.1.9/backend/infrahub/core/attribute.py +0 -1218
  458. infrahub_server-1.1.9/backend/infrahub/core/branch/constants.py +0 -2
  459. infrahub_server-1.1.9/backend/infrahub/core/branch/models.py +0 -513
  460. infrahub_server-1.1.9/backend/infrahub/core/branch/tasks.py +0 -406
  461. infrahub_server-1.1.9/backend/infrahub/core/constants/__init__.py +0 -317
  462. infrahub_server-1.1.9/backend/infrahub/core/constants/infrahubkind.py +0 -69
  463. infrahub_server-1.1.9/backend/infrahub/core/constants/schema.py +0 -55
  464. infrahub_server-1.1.9/backend/infrahub/core/constraint/node/runner.py +0 -39
  465. infrahub_server-1.1.9/backend/infrahub/core/diff/branch_differ.py +0 -224
  466. infrahub_server-1.1.9/backend/infrahub/core/diff/combiner.py +0 -446
  467. infrahub_server-1.1.9/backend/infrahub/core/diff/enricher/cardinality_one.py +0 -130
  468. infrahub_server-1.1.9/backend/infrahub/core/diff/enricher/hierarchy.py +0 -176
  469. infrahub_server-1.1.9/backend/infrahub/core/diff/enricher/labels.py +0 -221
  470. infrahub_server-1.1.9/backend/infrahub/core/diff/enricher/path_identifier.py +0 -69
  471. infrahub_server-1.1.9/backend/infrahub/core/diff/ipam_diff_parser.py +0 -167
  472. infrahub_server-1.1.9/backend/infrahub/core/diff/merger/merger.py +0 -85
  473. infrahub_server-1.1.9/backend/infrahub/core/diff/model/diff.py +0 -338
  474. infrahub_server-1.1.9/backend/infrahub/core/diff/model/path.py +0 -894
  475. infrahub_server-1.1.9/backend/infrahub/core/diff/query/all_conflicts.py +0 -67
  476. infrahub_server-1.1.9/backend/infrahub/core/diff/query/artifact.py +0 -211
  477. infrahub_server-1.1.9/backend/infrahub/core/diff/query/delete_query.py +0 -25
  478. infrahub_server-1.1.9/backend/infrahub/core/diff/query/diff_get.py +0 -165
  479. infrahub_server-1.1.9/backend/infrahub/core/diff/query/diff_summary.py +0 -106
  480. infrahub_server-1.1.9/backend/infrahub/core/diff/query/field_specifiers.py +0 -37
  481. infrahub_server-1.1.9/backend/infrahub/core/diff/query/field_summary.py +0 -79
  482. infrahub_server-1.1.9/backend/infrahub/core/diff/query/filters.py +0 -105
  483. infrahub_server-1.1.9/backend/infrahub/core/diff/query/get_conflict_query.py +0 -27
  484. infrahub_server-1.1.9/backend/infrahub/core/diff/query/has_conflicts_query.py +0 -69
  485. infrahub_server-1.1.9/backend/infrahub/core/diff/query/merge.py +0 -542
  486. infrahub_server-1.1.9/backend/infrahub/core/diff/query/merge_tracking_id.py +0 -25
  487. infrahub_server-1.1.9/backend/infrahub/core/diff/query/roots_metadata.py +0 -55
  488. infrahub_server-1.1.9/backend/infrahub/core/diff/query/save.py +0 -461
  489. infrahub_server-1.1.9/backend/infrahub/core/diff/query/summary_counts_enricher.py +0 -267
  490. infrahub_server-1.1.9/backend/infrahub/core/diff/query/time_range_query.py +0 -77
  491. infrahub_server-1.1.9/backend/infrahub/core/diff/query/update_conflict_query.py +0 -37
  492. infrahub_server-1.1.9/backend/infrahub/core/diff/query_parser.py +0 -799
  493. infrahub_server-1.1.9/backend/infrahub/core/diff/repository/deserializer.py +0 -389
  494. infrahub_server-1.1.9/backend/infrahub/core/diff/tasks.py +0 -67
  495. infrahub_server-1.1.9/backend/infrahub/core/enums.py +0 -17
  496. infrahub_server-1.1.9/backend/infrahub/core/initialization.py +0 -529
  497. infrahub_server-1.1.9/backend/infrahub/core/integrity/object_conflict/conflict_recorder.py +0 -133
  498. infrahub_server-1.1.9/backend/infrahub/core/ipam/constants.py +0 -12
  499. infrahub_server-1.1.9/backend/infrahub/core/ipam/reconciler.py +0 -211
  500. infrahub_server-1.1.9/backend/infrahub/core/ipam/tasks.py +0 -42
  501. infrahub_server-1.1.9/backend/infrahub/core/ipam/utilization.py +0 -158
  502. infrahub_server-1.1.9/backend/infrahub/core/manager.py +0 -1354
  503. infrahub_server-1.1.9/backend/infrahub/core/merge.py +0 -233
  504. infrahub_server-1.1.9/backend/infrahub/core/migrations/__init__.py +0 -25
  505. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/__init__.py +0 -67
  506. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m001_add_version_to_graph.py +0 -49
  507. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m002_attribute_is_default.py +0 -36
  508. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m003_relationship_parent_optional.py +0 -55
  509. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m004_add_attr_documentation.py +0 -48
  510. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m005_add_rel_read_only.py +0 -40
  511. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m006_add_rel_on_delete.py +0 -40
  512. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m007_add_rel_allow_override.py +0 -48
  513. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m008_add_human_friendly_id.py +0 -48
  514. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m009_add_generate_profile_attr.py +0 -40
  515. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m010_add_generate_profile_attr_generic.py +0 -40
  516. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m011_remove_profile_relationship_schema.py +0 -48
  517. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m012_convert_account_generic.py +0 -356
  518. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m013_convert_git_password_credential.py +0 -321
  519. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m014_remove_index_attr_value.py +0 -44
  520. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m015_diff_format_update.py +0 -36
  521. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m016_diff_delete_bug_fix.py +0 -36
  522. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m017_add_core_profile.py +0 -44
  523. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m018_uniqueness_nulls.py +0 -101
  524. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m019_restore_rels_to_time.py +0 -256
  525. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m020_duplicate_edges.py +0 -160
  526. infrahub_server-1.1.9/backend/infrahub/core/migrations/graph/m021_missing_hierarchy_merge.py +0 -51
  527. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/attribute_add.py +0 -90
  528. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/attribute_rename.py +0 -187
  529. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/delete_element_in_schema.py +0 -176
  530. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/node_duplicate.py +0 -198
  531. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/relationship_duplicate.py +0 -176
  532. infrahub_server-1.1.9/backend/infrahub/core/migrations/query/schema_attribute_update.py +0 -93
  533. infrahub_server-1.1.9/backend/infrahub/core/migrations/schema/models.py +0 -23
  534. infrahub_server-1.1.9/backend/infrahub/core/migrations/schema/node_attribute_remove.py +0 -115
  535. infrahub_server-1.1.9/backend/infrahub/core/migrations/schema/node_remove.py +0 -183
  536. infrahub_server-1.1.9/backend/infrahub/core/migrations/schema/tasks.py +0 -113
  537. infrahub_server-1.1.9/backend/infrahub/core/migrations/shared.py +0 -191
  538. infrahub_server-1.1.9/backend/infrahub/core/models.py +0 -586
  539. infrahub_server-1.1.9/backend/infrahub/core/node/__init__.py +0 -769
  540. infrahub_server-1.1.9/backend/infrahub/core/node/base.py +0 -82
  541. infrahub_server-1.1.9/backend/infrahub/core/node/constraints/attribute_uniqueness.py +0 -51
  542. infrahub_server-1.1.9/backend/infrahub/core/node/constraints/grouped_uniqueness.py +0 -201
  543. infrahub_server-1.1.9/backend/infrahub/core/node/constraints/interface.py +0 -10
  544. infrahub_server-1.1.9/backend/infrahub/core/node/delete_validator.py +0 -210
  545. infrahub_server-1.1.9/backend/infrahub/core/node/ipam.py +0 -62
  546. infrahub_server-1.1.9/backend/infrahub/core/node/permissions.py +0 -66
  547. infrahub_server-1.1.9/backend/infrahub/core/node/resource_manager/ip_address_pool.py +0 -109
  548. infrahub_server-1.1.9/backend/infrahub/core/node/resource_manager/ip_prefix_pool.py +0 -112
  549. infrahub_server-1.1.9/backend/infrahub/core/node/resource_manager/number_pool.py +0 -66
  550. infrahub_server-1.1.9/backend/infrahub/core/node/standard.py +0 -222
  551. infrahub_server-1.1.9/backend/infrahub/core/path.py +0 -169
  552. infrahub_server-1.1.9/backend/infrahub/core/property.py +0 -147
  553. infrahub_server-1.1.9/backend/infrahub/core/protocols.py +0 -490
  554. infrahub_server-1.1.9/backend/infrahub/core/protocols_base.py +0 -99
  555. infrahub_server-1.1.9/backend/infrahub/core/query/__init__.py +0 -698
  556. infrahub_server-1.1.9/backend/infrahub/core/query/attribute.py +0 -305
  557. infrahub_server-1.1.9/backend/infrahub/core/query/branch.py +0 -152
  558. infrahub_server-1.1.9/backend/infrahub/core/query/delete.py +0 -58
  559. infrahub_server-1.1.9/backend/infrahub/core/query/diff.py +0 -720
  560. infrahub_server-1.1.9/backend/infrahub/core/query/ipam.py +0 -635
  561. infrahub_server-1.1.9/backend/infrahub/core/query/node.py +0 -1470
  562. infrahub_server-1.1.9/backend/infrahub/core/query/relationship.py +0 -1023
  563. infrahub_server-1.1.9/backend/infrahub/core/query/resource_manager.py +0 -380
  564. infrahub_server-1.1.9/backend/infrahub/core/query/standard_node.py +0 -155
  565. infrahub_server-1.1.9/backend/infrahub/core/query/subquery.py +0 -186
  566. infrahub_server-1.1.9/backend/infrahub/core/query/task.py +0 -97
  567. infrahub_server-1.1.9/backend/infrahub/core/query/task_log.py +0 -33
  568. infrahub_server-1.1.9/backend/infrahub/core/query/utils.py +0 -37
  569. infrahub_server-1.1.9/backend/infrahub/core/registry.py +0 -228
  570. infrahub_server-1.1.9/backend/infrahub/core/relationship/constraints/count.py +0 -88
  571. infrahub_server-1.1.9/backend/infrahub/core/relationship/constraints/peer_kind.py +0 -64
  572. infrahub_server-1.1.9/backend/infrahub/core/relationship/constraints/profiles_kind.py +0 -55
  573. infrahub_server-1.1.9/backend/infrahub/core/relationship/model.py +0 -1194
  574. infrahub_server-1.1.9/backend/infrahub/core/schema/__init__.py +0 -112
  575. infrahub_server-1.1.9/backend/infrahub/core/schema/attribute_schema.py +0 -138
  576. infrahub_server-1.1.9/backend/infrahub/core/schema/basenode_schema.py +0 -497
  577. infrahub_server-1.1.9/backend/infrahub/core/schema/computed_attribute.py +0 -52
  578. infrahub_server-1.1.9/backend/infrahub/core/schema/definitions/core.py +0 -2275
  579. infrahub_server-1.1.9/backend/infrahub/core/schema/definitions/internal.py +0 -899
  580. infrahub_server-1.1.9/backend/infrahub/core/schema/dropdown.py +0 -27
  581. infrahub_server-1.1.9/backend/infrahub/core/schema/generated/attribute_schema.py +0 -123
  582. infrahub_server-1.1.9/backend/infrahub/core/schema/generated/base_node_schema.py +0 -108
  583. infrahub_server-1.1.9/backend/infrahub/core/schema/generated/genericnode_schema.py +0 -25
  584. infrahub_server-1.1.9/backend/infrahub/core/schema/generated/node_schema.py +0 -37
  585. infrahub_server-1.1.9/backend/infrahub/core/schema/generated/relationship_schema.py +0 -133
  586. infrahub_server-1.1.9/backend/infrahub/core/schema/generic_schema.py +0 -40
  587. infrahub_server-1.1.9/backend/infrahub/core/schema/manager.py +0 -732
  588. infrahub_server-1.1.9/backend/infrahub/core/schema/node_schema.py +0 -141
  589. infrahub_server-1.1.9/backend/infrahub/core/schema/profile_schema.py +0 -34
  590. infrahub_server-1.1.9/backend/infrahub/core/schema/relationship_schema.py +0 -222
  591. infrahub_server-1.1.9/backend/infrahub/core/schema/schema_branch.py +0 -1748
  592. infrahub_server-1.1.9/backend/infrahub/core/schema/schema_branch_computed.py +0 -174
  593. infrahub_server-1.1.9/backend/infrahub/core/task/task.py +0 -95
  594. infrahub_server-1.1.9/backend/infrahub/core/task/user_task.py +0 -128
  595. infrahub_server-1.1.9/backend/infrahub/core/timestamp.py +0 -34
  596. infrahub_server-1.1.9/backend/infrahub/core/utils.py +0 -278
  597. infrahub_server-1.1.9/backend/infrahub/core/validators/__init__.py +0 -42
  598. infrahub_server-1.1.9/backend/infrahub/core/validators/aggregated_checker.py +0 -106
  599. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/choices.py +0 -104
  600. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/enum.py +0 -104
  601. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/kind.py +0 -111
  602. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/length.py +0 -99
  603. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/optional.py +0 -95
  604. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/regex.py +0 -99
  605. infrahub_server-1.1.9/backend/infrahub/core/validators/attribute/unique.py +0 -124
  606. infrahub_server-1.1.9/backend/infrahub/core/validators/determiner.py +0 -165
  607. infrahub_server-1.1.9/backend/infrahub/core/validators/model.py +0 -22
  608. infrahub_server-1.1.9/backend/infrahub/core/validators/models/validate_migration.py +0 -26
  609. infrahub_server-1.1.9/backend/infrahub/core/validators/node/attribute.py +0 -45
  610. infrahub_server-1.1.9/backend/infrahub/core/validators/node/generate_profile.py +0 -90
  611. infrahub_server-1.1.9/backend/infrahub/core/validators/node/hierarchy.py +0 -181
  612. infrahub_server-1.1.9/backend/infrahub/core/validators/node/inherit_from.py +0 -59
  613. infrahub_server-1.1.9/backend/infrahub/core/validators/node/relationship.py +0 -45
  614. infrahub_server-1.1.9/backend/infrahub/core/validators/query.py +0 -54
  615. infrahub_server-1.1.9/backend/infrahub/core/validators/relationship/count.py +0 -196
  616. infrahub_server-1.1.9/backend/infrahub/core/validators/relationship/optional.py +0 -111
  617. infrahub_server-1.1.9/backend/infrahub/core/validators/relationship/peer.py +0 -132
  618. infrahub_server-1.1.9/backend/infrahub/core/validators/shared.py +0 -40
  619. infrahub_server-1.1.9/backend/infrahub/core/validators/tasks.py +0 -81
  620. infrahub_server-1.1.9/backend/infrahub/core/validators/uniqueness/checker.py +0 -224
  621. infrahub_server-1.1.9/backend/infrahub/core/validators/uniqueness/index.py +0 -104
  622. infrahub_server-1.1.9/backend/infrahub/core/validators/uniqueness/model.py +0 -152
  623. infrahub_server-1.1.9/backend/infrahub/core/validators/uniqueness/query.py +0 -222
  624. infrahub_server-1.1.9/backend/infrahub/database/__init__.py +0 -540
  625. infrahub_server-1.1.9/backend/infrahub/database/memgraph.py +0 -59
  626. infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff/combiner.py +0 -8
  627. infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff/conflicts_enricher.py +0 -8
  628. infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff/deserializer.py +0 -10
  629. infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff/parent_node_adder.py +0 -8
  630. infrahub_server-1.1.9/backend/infrahub/dependencies/component/registry.py +0 -40
  631. infrahub_server-1.1.9/backend/infrahub/events/__init__.py +0 -4
  632. infrahub_server-1.1.9/backend/infrahub/events/branch_action.py +0 -90
  633. infrahub_server-1.1.9/backend/infrahub/events/models.py +0 -93
  634. infrahub_server-1.1.9/backend/infrahub/events/node_action.py +0 -45
  635. infrahub_server-1.1.9/backend/infrahub/events/repository_action.py +0 -37
  636. infrahub_server-1.1.9/backend/infrahub/events/schema_action.py +0 -36
  637. infrahub_server-1.1.9/backend/infrahub/exceptions.py +0 -351
  638. infrahub_server-1.1.9/backend/infrahub/generators/models.py +0 -45
  639. infrahub_server-1.1.9/backend/infrahub/generators/tasks.py +0 -212
  640. infrahub_server-1.1.9/backend/infrahub/git/base.py +0 -924
  641. infrahub_server-1.1.9/backend/infrahub/git/constants.py +0 -4
  642. infrahub_server-1.1.9/backend/infrahub/git/integrator.py +0 -1317
  643. infrahub_server-1.1.9/backend/infrahub/git/models.py +0 -112
  644. infrahub_server-1.1.9/backend/infrahub/git/repository.py +0 -281
  645. infrahub_server-1.1.9/backend/infrahub/git/tasks.py +0 -552
  646. infrahub_server-1.1.9/backend/infrahub/git/worktree.py +0 -48
  647. infrahub_server-1.1.9/backend/infrahub/git_credential/askpass.py +0 -49
  648. infrahub_server-1.1.9/backend/infrahub/git_credential/helper.py +0 -76
  649. infrahub_server-1.1.9/backend/infrahub/graphql/analyzer.py +0 -60
  650. infrahub_server-1.1.9/backend/infrahub/graphql/app.py +0 -530
  651. infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker/anonymous_checker.py +0 -30
  652. infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker/default_branch_checker.py +0 -50
  653. infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker/merge_operation_checker.py +0 -35
  654. infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker/object_permission_checker.py +0 -197
  655. infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker/super_admin_checker.py +0 -35
  656. infrahub_server-1.1.9/backend/infrahub/graphql/enums.py +0 -28
  657. infrahub_server-1.1.9/backend/infrahub/graphql/initialization.py +0 -122
  658. infrahub_server-1.1.9/backend/infrahub/graphql/loaders/node.py +0 -72
  659. infrahub_server-1.1.9/backend/infrahub/graphql/loaders/shared.py +0 -13
  660. infrahub_server-1.1.9/backend/infrahub/graphql/manager.py +0 -1033
  661. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/account.py +0 -164
  662. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/artifact_definition.py +0 -92
  663. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/branch.py +0 -251
  664. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/computed_attribute.py +0 -107
  665. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/diff.py +0 -101
  666. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/diff_conflict.py +0 -71
  667. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/graphql_query.py +0 -91
  668. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/ipam.py +0 -432
  669. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/main.py +0 -457
  670. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/menu.py +0 -100
  671. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/models.py +0 -13
  672. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/node_getter/by_default_filter.py +0 -45
  673. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/node_getter/by_hfid.py +0 -80
  674. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/node_getter/by_id.py +0 -28
  675. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/node_getter/interface.py +0 -18
  676. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/proposed_change.py +0 -248
  677. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/relationship.py +0 -196
  678. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/repository.py +0 -290
  679. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/resource_manager.py +0 -223
  680. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/schema.py +0 -307
  681. infrahub_server-1.1.9/backend/infrahub/graphql/mutations/tasks.py +0 -69
  682. infrahub_server-1.1.9/backend/infrahub/graphql/parser.py +0 -213
  683. infrahub_server-1.1.9/backend/infrahub/graphql/permissions.py +0 -34
  684. infrahub_server-1.1.9/backend/infrahub/graphql/queries/account.py +0 -158
  685. infrahub_server-1.1.9/backend/infrahub/graphql/queries/branch.py +0 -28
  686. infrahub_server-1.1.9/backend/infrahub/graphql/queries/diff/tree.py +0 -541
  687. infrahub_server-1.1.9/backend/infrahub/graphql/queries/internal.py +0 -26
  688. infrahub_server-1.1.9/backend/infrahub/graphql/queries/ipam.py +0 -116
  689. infrahub_server-1.1.9/backend/infrahub/graphql/queries/relationship.py +0 -82
  690. infrahub_server-1.1.9/backend/infrahub/graphql/queries/resource_manager.py +0 -334
  691. infrahub_server-1.1.9/backend/infrahub/graphql/queries/search.py +0 -151
  692. infrahub_server-1.1.9/backend/infrahub/graphql/queries/status.py +0 -66
  693. infrahub_server-1.1.9/backend/infrahub/graphql/queries/task.py +0 -116
  694. infrahub_server-1.1.9/backend/infrahub/graphql/query.py +0 -52
  695. infrahub_server-1.1.9/backend/infrahub/graphql/resolvers/many_relationship.py +0 -264
  696. infrahub_server-1.1.9/backend/infrahub/graphql/resolvers/resolver.py +0 -306
  697. infrahub_server-1.1.9/backend/infrahub/graphql/resolvers/single_relationship.py +0 -169
  698. infrahub_server-1.1.9/backend/infrahub/graphql/schema.py +0 -107
  699. infrahub_server-1.1.9/backend/infrahub/graphql/subscription/__init__.py +0 -37
  700. infrahub_server-1.1.9/backend/infrahub/graphql/subscription/events.py +0 -48
  701. infrahub_server-1.1.9/backend/infrahub/graphql/subscription/graphql_query.py +0 -60
  702. infrahub_server-1.1.9/backend/infrahub/graphql/types/branch.py +0 -46
  703. infrahub_server-1.1.9/backend/infrahub/graphql/types/common.py +0 -7
  704. infrahub_server-1.1.9/backend/infrahub/graphql/types/enums.py +0 -10
  705. infrahub_server-1.1.9/backend/infrahub/graphql/types/interface.py +0 -28
  706. infrahub_server-1.1.9/backend/infrahub/graphql/types/node.py +0 -32
  707. infrahub_server-1.1.9/backend/infrahub/graphql/types/permission.py +0 -42
  708. infrahub_server-1.1.9/backend/infrahub/graphql/types/relationship.py +0 -18
  709. infrahub_server-1.1.9/backend/infrahub/graphql/types/standard_node.py +0 -56
  710. infrahub_server-1.1.9/backend/infrahub/graphql/utils.py +0 -260
  711. infrahub_server-1.1.9/backend/infrahub/groups/tasks.py +0 -42
  712. infrahub_server-1.1.9/backend/infrahub/lock.py +0 -261
  713. infrahub_server-1.1.9/backend/infrahub/menu/generator.py +0 -137
  714. infrahub_server-1.1.9/backend/infrahub/menu/menu.py +0 -387
  715. infrahub_server-1.1.9/backend/infrahub/menu/models.py +0 -176
  716. infrahub_server-1.1.9/backend/infrahub/menu/utils.py +0 -12
  717. infrahub_server-1.1.9/backend/infrahub/message_bus/__init__.py +0 -108
  718. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/__init__.py +0 -86
  719. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/check_artifact_create.py +0 -27
  720. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/check_generator_run.py +0 -26
  721. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/check_repository_checkdefinition.py +0 -20
  722. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/check_repository_mergeconflicts.py +0 -16
  723. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/check_repository_usercheck.py +0 -26
  724. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_branch_create.py +0 -11
  725. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_branch_delete.py +0 -11
  726. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_branch_merge.py +0 -10
  727. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_branch_rebased.py +0 -9
  728. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_node_mutated.py +0 -15
  729. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/event_schema_update.py +0 -9
  730. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/finalize_validator_execution.py +0 -12
  731. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/proposed_change/request_proposedchange_refreshartifacts.py +0 -5
  732. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/request_artifactdefinition_check.py +0 -17
  733. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/request_generatordefinition_check.py +0 -18
  734. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/request_proposedchange_pipeline.py +0 -16
  735. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/request_repository_checks.py +0 -12
  736. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/request_repository_userchecks.py +0 -18
  737. infrahub_server-1.1.9/backend/infrahub/message_bus/messages/send_echo_request.py +0 -20
  738. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/__init__.py +0 -68
  739. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/check/__init__.py +0 -3
  740. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/check/artifact.py +0 -98
  741. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/check/generator.py +0 -157
  742. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/check/repository.py +0 -293
  743. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/event/__init__.py +0 -3
  744. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/event/branch.py +0 -57
  745. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/event/node.py +0 -20
  746. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/event/schema.py +0 -17
  747. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/event/worker.py +0 -12
  748. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/finalize/validator.py +0 -83
  749. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/git/file.py +0 -34
  750. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/git/repository.py +0 -62
  751. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/requests/__init__.py +0 -13
  752. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/requests/artifact_definition.py +0 -148
  753. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/requests/generator_definition.py +0 -142
  754. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/requests/proposed_change.py +0 -584
  755. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/requests/repository.py +0 -133
  756. infrahub_server-1.1.9/backend/infrahub/message_bus/operations/send/echo.py +0 -13
  757. infrahub_server-1.1.9/backend/infrahub/message_bus/types.py +0 -160
  758. infrahub_server-1.1.9/backend/infrahub/pools/number.py +0 -67
  759. infrahub_server-1.1.9/backend/infrahub/pools/prefix.py +0 -174
  760. infrahub_server-1.1.9/backend/infrahub/proposed_change/models.py +0 -28
  761. infrahub_server-1.1.9/backend/infrahub/proposed_change/tasks.py +0 -495
  762. infrahub_server-1.1.9/backend/infrahub/pytest_plugin.py +0 -159
  763. infrahub_server-1.1.9/backend/infrahub/schema/constants.py +0 -1
  764. infrahub_server-1.1.9/backend/infrahub/schema/tasks.py +0 -76
  765. infrahub_server-1.1.9/backend/infrahub/server.py +0 -221
  766. infrahub_server-1.1.9/backend/infrahub/services/__init__.py +0 -107
  767. infrahub_server-1.1.9/backend/infrahub/services/adapters/cache/__init__.py +0 -36
  768. infrahub_server-1.1.9/backend/infrahub/services/adapters/cache/nats.py +0 -134
  769. infrahub_server-1.1.9/backend/infrahub/services/adapters/cache/redis.py +0 -54
  770. infrahub_server-1.1.9/backend/infrahub/services/adapters/database/__init__.py +0 -9
  771. infrahub_server-1.1.9/backend/infrahub/services/adapters/event/__init__.py +0 -46
  772. infrahub_server-1.1.9/backend/infrahub/services/adapters/http/__init__.py +0 -30
  773. infrahub_server-1.1.9/backend/infrahub/services/adapters/http/httpx.py +0 -98
  774. infrahub_server-1.1.9/backend/infrahub/services/adapters/message_bus/__init__.py +0 -45
  775. infrahub_server-1.1.9/backend/infrahub/services/adapters/message_bus/local.py +0 -59
  776. infrahub_server-1.1.9/backend/infrahub/services/adapters/message_bus/nats.py +0 -289
  777. infrahub_server-1.1.9/backend/infrahub/services/adapters/message_bus/rabbitmq.py +0 -254
  778. infrahub_server-1.1.9/backend/infrahub/services/adapters/workflow/__init__.py +0 -52
  779. infrahub_server-1.1.9/backend/infrahub/services/adapters/workflow/local.py +0 -27
  780. infrahub_server-1.1.9/backend/infrahub/services/adapters/workflow/worker.py +0 -67
  781. infrahub_server-1.1.9/backend/infrahub/services/component.py +0 -148
  782. infrahub_server-1.1.9/backend/infrahub/services/protocols.py +0 -21
  783. infrahub_server-1.1.9/backend/infrahub/services/scheduler.py +0 -85
  784. infrahub_server-1.1.9/backend/infrahub/storage.py +0 -59
  785. infrahub_server-1.1.9/backend/infrahub/task_manager/constants.py +0 -15
  786. infrahub_server-1.1.9/backend/infrahub/task_manager/models.py +0 -65
  787. infrahub_server-1.1.9/backend/infrahub/task_manager/task.py +0 -273
  788. infrahub_server-1.1.9/backend/infrahub/tasks/artifact.py +0 -45
  789. infrahub_server-1.1.9/backend/infrahub/tasks/registry.py +0 -69
  790. infrahub_server-1.1.9/backend/infrahub/tasks/telemetry.py +0 -127
  791. infrahub_server-1.1.9/backend/infrahub/transformations/tasks.py +0 -56
  792. infrahub_server-1.1.9/backend/infrahub/types.py +0 -375
  793. infrahub_server-1.1.9/backend/infrahub/utils.py +0 -75
  794. infrahub_server-1.1.9/backend/infrahub/webhook/constants.py +0 -3
  795. infrahub_server-1.1.9/backend/infrahub/webhook/models.py +0 -112
  796. infrahub_server-1.1.9/backend/infrahub/webhook/tasks.py +0 -235
  797. infrahub_server-1.1.9/backend/infrahub/workers/infrahub_async.py +0 -217
  798. infrahub_server-1.1.9/backend/infrahub/workflows/catalogue.py +0 -457
  799. infrahub_server-1.1.9/backend/infrahub/workflows/initialization.py +0 -73
  800. infrahub_server-1.1.9/backend/infrahub/workflows/models.py +0 -80
  801. infrahub_server-1.1.9/backend/infrahub/workflows/utils.py +0 -79
  802. infrahub_server-1.1.9/pyproject.toml +0 -686
  803. infrahub_server-1.1.9/python_sdk/infrahub_sdk/client.py +0 -2704
  804. infrahub_server-1.1.9/python_sdk/infrahub_sdk/ctl/branch.py +0 -141
  805. infrahub_server-1.1.9/python_sdk/infrahub_sdk/ctl/utils.py +0 -217
  806. infrahub_server-1.1.9/python_sdk/infrahub_sdk/exceptions.py +0 -145
  807. infrahub_server-1.1.9/python_sdk/infrahub_sdk/generator.py +0 -150
  808. infrahub_server-1.1.9/python_sdk/infrahub_sdk/graphql.py +0 -167
  809. infrahub_server-1.1.9/python_sdk/infrahub_sdk/node.py +0 -2143
  810. infrahub_server-1.1.9/python_sdk/infrahub_sdk/protocols.py +0 -960
  811. infrahub_server-1.1.9/python_sdk/infrahub_sdk/protocols_base.py +0 -197
  812. infrahub_server-1.1.9/python_sdk/infrahub_sdk/schema/__init__.py +0 -684
  813. infrahub_server-1.1.9/python_sdk/infrahub_sdk/schema/main.py +0 -343
  814. infrahub_server-1.1.9/python_sdk/infrahub_sdk/timestamp.py +0 -91
  815. infrahub_server-1.1.9/python_sdk/infrahub_sdk/utils.py +0 -369
  816. infrahub_server-1.1.9/python_testcontainers/infrahub_testcontainers/container.py +0 -134
  817. infrahub_server-1.1.9/python_testcontainers/infrahub_testcontainers/docker-compose.test.yml +0 -167
  818. infrahub_server-1.1.9/python_testcontainers/infrahub_testcontainers/helpers.py +0 -148
  819. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/LICENSE.txt +0 -0
  820. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/README.md +0 -0
  821. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/__init__.py +0 -0
  822. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/__init__.py +0 -0
  823. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/auth.py +0 -0
  824. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/diff/__init__.py +0 -0
  825. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/diff/diff.py +0 -0
  826. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/exception_handlers.py +0 -0
  827. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/exceptions.py +0 -0
  828. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/file.py +0 -0
  829. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/internal.py +0 -0
  830. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/menu.py +0 -0
  831. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/static/redoc.standalone.js +0 -0
  832. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/static/swagger-ui-bundle.js +0 -0
  833. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/static/swagger-ui.css +0 -0
  834. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/api/storage.py +0 -0
  835. {infrahub_server-1.1.9/backend/infrahub/computed_attribute → infrahub_server-1.2.0/backend/infrahub/artifacts}/__init__.py +0 -0
  836. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/auth.py +0 -0
  837. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/cli/context.py +0 -0
  838. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/cli/server.py +0 -0
  839. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/components.py +0 -0
  840. {infrahub_server-1.1.9/backend/infrahub/core/constraint → infrahub_server-1.2.0/backend/infrahub/computed_attribute}/__init__.py +0 -0
  841. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/computed_attribute/constants.py +0 -0
  842. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/__init__.py +0 -0
  843. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/branch/__init__.py +0 -0
  844. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/branch/flow_models.py +0 -0
  845. {infrahub_server-1.1.9/backend/infrahub/core/constraint/node → infrahub_server-1.2.0/backend/infrahub/core/changelog}/__init__.py +0 -0
  846. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/constants/database.py +0 -0
  847. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/constants/relationship_label.py +0 -0
  848. {infrahub_server-1.1.9/backend/infrahub/core/diff → infrahub_server-1.2.0/backend/infrahub/core/constraint}/__init__.py +0 -0
  849. {infrahub_server-1.1.9/backend/infrahub/core/diff/artifacts → infrahub_server-1.2.0/backend/infrahub/core/constraint/node}/__init__.py +0 -0
  850. {infrahub_server-1.1.9/backend/infrahub/core/diff/enricher → infrahub_server-1.2.0/backend/infrahub/core/diff}/__init__.py +0 -0
  851. {infrahub_server-1.1.9/backend/infrahub/core/diff/merger → infrahub_server-1.2.0/backend/infrahub/core/diff/artifacts}/__init__.py +0 -0
  852. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/artifacts/calculator.py +0 -0
  853. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/calculator.py +0 -0
  854. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/conflict_transferer.py +0 -0
  855. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/conflicts_enricher.py +0 -0
  856. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/conflicts_extractor.py +0 -0
  857. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/coordinator.py +0 -0
  858. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/data_check_synchronizer.py +0 -0
  859. {infrahub_server-1.1.9/backend/infrahub/core/diff/model → infrahub_server-1.2.0/backend/infrahub/core/diff/enricher}/__init__.py +0 -0
  860. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/enricher/aggregated.py +0 -0
  861. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/enricher/interface.py +0 -0
  862. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/exceptions.py +0 -0
  863. {infrahub_server-1.1.9/backend/infrahub/core/diff/query → infrahub_server-1.2.0/backend/infrahub/core/diff/merger}/__init__.py +0 -0
  864. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/merger/model.py +0 -0
  865. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/merger/serializer.py +0 -0
  866. {infrahub_server-1.1.9/backend/infrahub/core/diff/repository → infrahub_server-1.2.0/backend/infrahub/core/diff/model}/__init__.py +0 -0
  867. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/models.py +0 -0
  868. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/parent_node_adder.py +0 -0
  869. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/payload_builder.py +0 -0
  870. {infrahub_server-1.1.9/backend/infrahub/core/integrity → infrahub_server-1.2.0/backend/infrahub/core/diff/query}/__init__.py +0 -0
  871. {infrahub_server-1.1.9/backend/infrahub/core/integrity/object_conflict → infrahub_server-1.2.0/backend/infrahub/core/diff/repository}/__init__.py +0 -0
  872. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/diff/repository/repository.py +0 -0
  873. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/graph/__init__.py +0 -0
  874. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/graph/constraints.py +0 -0
  875. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/graph/index.py +0 -0
  876. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/graph/schema.py +0 -0
  877. {infrahub_server-1.1.9/backend/infrahub/core/ipam → infrahub_server-1.2.0/backend/infrahub/core/integrity}/__init__.py +0 -0
  878. {infrahub_server-1.1.9/backend/infrahub/core/migrations/schema → infrahub_server-1.2.0/backend/infrahub/core/integrity/object_conflict}/__init__.py +0 -0
  879. {infrahub_server-1.1.9/backend/infrahub/core/node/constraints → infrahub_server-1.2.0/backend/infrahub/core/ipam}/__init__.py +0 -0
  880. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/ipam/kinds_getter.py +0 -0
  881. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/ipam/model.py +0 -0
  882. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/ipam/size.py +0 -0
  883. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/migrations/query/__init__.py +0 -0
  884. {infrahub_server-1.1.9/backend/infrahub/core/node/resource_manager → infrahub_server-1.2.0/backend/infrahub/core/migrations/schema}/__init__.py +0 -0
  885. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/migrations/schema/attribute_name_update.py +0 -0
  886. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/migrations/schema/node_attribute_add.py +0 -0
  887. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/migrations/schema/node_kind_update.py +0 -0
  888. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/migrations/schema/placeholder_dummy.py +0 -0
  889. {infrahub_server-1.1.9/backend/infrahub/core/relationship → infrahub_server-1.2.0/backend/infrahub/core/node}/constraints/__init__.py +0 -0
  890. {infrahub_server-1.1.9/backend/infrahub/core/schema/definitions → infrahub_server-1.2.0/backend/infrahub/core/node/resource_manager}/__init__.py +0 -0
  891. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/relationship/__init__.py +0 -0
  892. {infrahub_server-1.1.9/backend/infrahub/core/schema/generated → infrahub_server-1.2.0/backend/infrahub/core/relationship/constraints}/__init__.py +0 -0
  893. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/relationship/constraints/interface.py +0 -0
  894. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/root.py +0 -0
  895. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/schema/constants.py +0 -0
  896. {infrahub_server-1.1.9/backend/infrahub/core/validators/attribute → infrahub_server-1.2.0/backend/infrahub/core/schema/definitions}/__init__.py +0 -0
  897. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/schema/definitions/deprecated.py +0 -0
  898. {infrahub_server-1.1.9/backend/infrahub/core/validators/models → infrahub_server-1.2.0/backend/infrahub/core/schema/generated}/__init__.py +0 -0
  899. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/task/__init__.py +0 -0
  900. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/task/task_log.py +0 -0
  901. {infrahub_server-1.1.9/backend/infrahub/core/validators/node → infrahub_server-1.2.0/backend/infrahub/core/validators/attribute}/__init__.py +0 -0
  902. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/validators/interface.py +0 -0
  903. {infrahub_server-1.1.9/backend/infrahub/core/validators/relationship → infrahub_server-1.2.0/backend/infrahub/core/validators/models}/__init__.py +0 -0
  904. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/core/validators/models/violation.py +0 -0
  905. {infrahub_server-1.1.9/backend/infrahub/core/validators/uniqueness → infrahub_server-1.2.0/backend/infrahub/core/validators/node}/__init__.py +0 -0
  906. {infrahub_server-1.1.9/backend/infrahub/dependencies → infrahub_server-1.2.0/backend/infrahub/core/validators/relationship}/__init__.py +0 -0
  907. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/constraint → infrahub_server-1.2.0/backend/infrahub/core/validators/uniqueness}/__init__.py +0 -0
  908. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/database/constants.py +0 -0
  909. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/database/index.py +0 -0
  910. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/database/manager.py +0 -0
  911. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/database/metrics.py +0 -0
  912. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/database/neo4j.py +0 -0
  913. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/constraint/grouped → infrahub_server-1.2.0/backend/infrahub/dependencies}/__init__.py +0 -0
  914. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/constraint/node → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/constraint}/__init__.py +0 -0
  915. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/constraint/relationship_manager → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/constraint/grouped}/__init__.py +0 -0
  916. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/grouped/node_runner.py +0 -0
  917. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/constraint/schema → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/constraint/node}/__init__.py +0 -0
  918. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/node/grouped_uniqueness.py +0 -0
  919. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/node/uniqueness.py +0 -0
  920. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/constraint/relationship_manager}/__init__.py +0 -0
  921. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/relationship_manager/count.py +0 -0
  922. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/relationship_manager/peer_kind.py +0 -0
  923. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/relationship_manager/profiles_kind.py +0 -0
  924. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/diff/enricher → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/constraint/schema}/__init__.py +0 -0
  925. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/aggregated.py +0 -0
  926. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_choices.py +0 -0
  927. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_enum.py +0 -0
  928. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_kind.py +0 -0
  929. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_length.py +0 -0
  930. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_optional.py +0 -0
  931. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_regex.py +0 -0
  932. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/attribute_uniqueness.py +0 -0
  933. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/generate_profile.py +0 -0
  934. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/inherit_from.py +0 -0
  935. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/node_attribute.py +0 -0
  936. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/node_relationship.py +0 -0
  937. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/relationship_count.py +0 -0
  938. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/relationship_optional.py +0 -0
  939. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/constraint/schema/uniqueness.py +0 -0
  940. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/ip → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff}/__init__.py +0 -0
  941. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/calculator.py +0 -0
  942. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/conflict_transferer.py +0 -0
  943. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/conflicts_extractor.py +0 -0
  944. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/coordinator.py +0 -0
  945. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/data_check_conflict_recorder.py +0 -0
  946. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/data_check_synchronizer.py +0 -0
  947. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/diff_merger.py +0 -0
  948. {infrahub_server-1.1.9/backend/infrahub/dependencies/builder/node → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/diff/enricher}/__init__.py +0 -0
  949. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/enricher/aggregated.py +0 -0
  950. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/enricher/cardinality_one.py +0 -0
  951. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/enricher/hierarchy.py +0 -0
  952. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/enricher/labels.py +0 -0
  953. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/enricher/path_identifier.py +0 -0
  954. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/ipam_diff_parser.py +0 -0
  955. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/diff/repository.py +0 -0
  956. {infrahub_server-1.1.9/backend/infrahub/dependencies/component → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/ip}/__init__.py +0 -0
  957. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/ip/kinds_getter.py +0 -0
  958. {infrahub_server-1.1.9/backend/infrahub/generators → infrahub_server-1.2.0/backend/infrahub/dependencies/builder/node}/__init__.py +0 -0
  959. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/builder/node/delete_validator.py +0 -0
  960. {infrahub_server-1.1.9/backend/infrahub/git_credential → infrahub_server-1.2.0/backend/infrahub/dependencies/component}/__init__.py +0 -0
  961. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/component/exceptions.py +0 -0
  962. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/interface.py +0 -0
  963. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/dependencies/registry.py +0 -0
  964. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/events/constants.py +0 -0
  965. {infrahub_server-1.1.9/backend/infrahub/graphql → infrahub_server-1.2.0/backend/infrahub/generators}/__init__.py +0 -0
  966. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/git/__init__.py +0 -0
  967. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/git/directory.py +0 -0
  968. {infrahub_server-1.1.9/backend/infrahub/graphql/api → infrahub_server-1.2.0/backend/infrahub/git_credential}/__init__.py +0 -0
  969. {infrahub_server-1.1.9/backend/infrahub/graphql/auth → infrahub_server-1.2.0/backend/infrahub/graphql}/__init__.py +0 -0
  970. {infrahub_server-1.1.9/backend/infrahub/graphql/auth/query_permission_checker → infrahub_server-1.2.0/backend/infrahub/graphql/api}/__init__.py +0 -0
  971. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/api/dependencies.py +0 -0
  972. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/api/endpoints.py +0 -0
  973. {infrahub_server-1.1.9/backend/infrahub/graphql/loaders → infrahub_server-1.2.0/backend/infrahub/graphql/auth}/__init__.py +0 -0
  974. {infrahub_server-1.1.9/backend/infrahub/graphql/mutations → infrahub_server-1.2.0/backend/infrahub/graphql/auth/query_permission_checker}/__init__.py +0 -0
  975. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/auth/query_permission_checker/checker.py +0 -0
  976. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/auth/query_permission_checker/interface.py +0 -0
  977. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/constants.py +0 -0
  978. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/directives.py +0 -0
  979. {infrahub_server-1.1.9/backend/infrahub/graphql/mutations/node_getter → infrahub_server-1.2.0/backend/infrahub/graphql/loaders}/__init__.py +0 -0
  980. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/loaders/peers.py +0 -0
  981. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/metrics.py +0 -0
  982. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/models.py +0 -0
  983. {infrahub_server-1.1.9/backend/infrahub/graphql/queries/diff → infrahub_server-1.2.0/backend/infrahub/graphql/mutations}/__init__.py +0 -0
  984. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/mutations/attribute.py +0 -0
  985. {infrahub_server-1.1.9/backend/infrahub/graphql/resolvers → infrahub_server-1.2.0/backend/infrahub/graphql/mutations/node_getter}/__init__.py +0 -0
  986. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/queries/__init__.py +0 -0
  987. {infrahub_server-1.1.9/backend/infrahub/groups → infrahub_server-1.2.0/backend/infrahub/graphql/queries/diff}/__init__.py +0 -0
  988. {infrahub_server-1.1.9/backend/infrahub/menu → infrahub_server-1.2.0/backend/infrahub/graphql/resolvers}/__init__.py +0 -0
  989. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/types/__init__.py +0 -0
  990. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/types/attribute.py +0 -0
  991. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/types/task.py +0 -0
  992. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/graphql/types/task_log.py +0 -0
  993. {infrahub_server-1.1.9/backend/infrahub/message_bus/messages/proposed_change → infrahub_server-1.2.0/backend/infrahub/groups}/__init__.py +0 -0
  994. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/groups/models.py +0 -0
  995. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/helpers.py +0 -0
  996. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/log.py +0 -0
  997. {infrahub_server-1.1.9/backend/infrahub/pools → infrahub_server-1.2.0/backend/infrahub/menu}/__init__.py +0 -0
  998. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/menu/constants.py +0 -0
  999. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/event_worker_newprimaryapi.py +0 -0
  1000. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/git_file_get.py +0 -0
  1001. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/git_repository_connectivity.py +0 -0
  1002. {infrahub_server-1.1.9/backend/infrahub → infrahub_server-1.2.0/backend/infrahub/message_bus/messages}/proposed_change/__init__.py +0 -0
  1003. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/proposed_change/base_with_diff.py +0 -0
  1004. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/refresh_git_fetch.py +0 -0
  1005. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/refresh_registry_branches.py +0 -0
  1006. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/messages/refresh_registry_rebasedbranch.py +0 -0
  1007. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/operations/finalize/__init__.py +0 -0
  1008. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/operations/git/__init__.py +0 -0
  1009. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/operations/refresh/__init__.py +0 -0
  1010. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/operations/refresh/registry.py +0 -0
  1011. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/message_bus/operations/send/__init__.py +0 -0
  1012. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/middleware.py +0 -0
  1013. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/models.py +0 -0
  1014. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/__init__.py +0 -0
  1015. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/backend.py +0 -0
  1016. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/constants.py +0 -0
  1017. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/local_backend.py +0 -0
  1018. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/manager.py +0 -0
  1019. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/report.py +0 -0
  1020. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/permissions/types.py +0 -0
  1021. {infrahub_server-1.1.9/backend/infrahub/schema → infrahub_server-1.2.0/backend/infrahub/pools}/__init__.py +0 -0
  1022. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/pools/address.py +0 -0
  1023. {infrahub_server-1.1.9/backend/infrahub/services/adapters → infrahub_server-1.2.0/backend/infrahub/prefect_server}/__init__.py +0 -0
  1024. {infrahub_server-1.1.9/backend/infrahub/support → infrahub_server-1.2.0/backend/infrahub/proposed_change}/__init__.py +0 -0
  1025. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/proposed_change/constants.py +0 -0
  1026. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/serve/__init__.py +0 -0
  1027. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/serve/gunicorn_config.py +0 -0
  1028. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/serve/log.py +0 -0
  1029. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/serve/worker.py +0 -0
  1030. {infrahub_server-1.1.9/backend/infrahub/task_manager → infrahub_server-1.2.0/backend/infrahub/services/adapters}/__init__.py +0 -0
  1031. {infrahub_server-1.1.9/backend/infrahub/tasks → infrahub_server-1.2.0/backend/infrahub/support}/__init__.py +0 -0
  1032. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/support/macro.py +0 -0
  1033. {infrahub_server-1.1.9/backend/infrahub/transformations → infrahub_server-1.2.0/backend/infrahub/task_manager}/__init__.py +0 -0
  1034. {infrahub_server-1.1.9/backend/infrahub/webhook → infrahub_server-1.2.0/backend/infrahub/tasks}/__init__.py +0 -0
  1035. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/tasks/check.py +0 -0
  1036. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/tasks/dummy.py +0 -0
  1037. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/tasks/keepalive.py +0 -0
  1038. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/tasks/recurring.py +0 -0
  1039. {infrahub_server-1.1.9/backend/infrahub/workers → infrahub_server-1.2.0/backend/infrahub/telemetry}/__init__.py +0 -0
  1040. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/trace.py +0 -0
  1041. {infrahub_server-1.1.9/backend/infrahub/workflows → infrahub_server-1.2.0/backend/infrahub/transformations}/__init__.py +0 -0
  1042. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/transformations/constants.py +0 -0
  1043. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/transformations/models.py +0 -0
  1044. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/ctl → infrahub_server-1.2.0/backend/infrahub/trigger}/__init__.py +0 -0
  1045. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/pytest_plugin → infrahub_server-1.2.0/backend/infrahub/validators}/__init__.py +0 -0
  1046. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/visuals.py +0 -0
  1047. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/spec → infrahub_server-1.2.0/backend/infrahub/webhook}/__init__.py +0 -0
  1048. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/worker.py +0 -0
  1049. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/testing → infrahub_server-1.2.0/backend/infrahub/workers}/__init__.py +0 -0
  1050. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/testing/schemas → infrahub_server-1.2.0/backend/infrahub/workflows}/__init__.py +0 -0
  1051. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/backend/infrahub/workflows/constants.py +0 -0
  1052. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/__init__.py +0 -0
  1053. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/_importer.py +0 -0
  1054. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/analyzer.py +0 -0
  1055. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/async_typer.py +0 -0
  1056. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/batch.py +0 -0
  1057. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/branch.py +0 -0
  1058. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/checks.py +0 -0
  1059. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/code_generator.py +0 -0
  1060. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/config.py +0 -0
  1061. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/constants.py +0 -0
  1062. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/transfer → infrahub_server-1.2.0/python_sdk/infrahub_sdk/ctl}/__init__.py +0 -0
  1063. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/check.py +0 -0
  1064. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/cli.py +0 -0
  1065. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/cli_commands.py +0 -0
  1066. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/client.py +0 -0
  1067. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/config.py +0 -0
  1068. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/constants.py +0 -0
  1069. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/exceptions.py +0 -0
  1070. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/exporter.py +0 -0
  1071. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/generator.py +0 -0
  1072. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/importer.py +0 -0
  1073. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/menu.py +0 -0
  1074. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/object.py +0 -0
  1075. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/parameters.py +0 -0
  1076. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/render.py +0 -0
  1077. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/repository.py +0 -0
  1078. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/schema.py +0 -0
  1079. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/transform.py +0 -0
  1080. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/ctl/validate.py +0 -0
  1081. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/data.py +0 -0
  1082. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/diff.py +0 -0
  1083. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/groups.py +0 -0
  1084. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/jinja2.py +0 -0
  1085. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/object_store.py +0 -0
  1086. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/playback.py +0 -0
  1087. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/transfer/exporter → infrahub_server-1.2.0/python_sdk/infrahub_sdk/pytest_plugin}/__init__.py +0 -0
  1088. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/exceptions.py +0 -0
  1089. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/__init__.py +0 -0
  1090. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/base.py +0 -0
  1091. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/check.py +0 -0
  1092. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/graphql_query.py +0 -0
  1093. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/jinja2_transform.py +0 -0
  1094. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/items/python_transform.py +0 -0
  1095. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/loader.py +0 -0
  1096. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/models.py +0 -0
  1097. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/plugin.py +0 -0
  1098. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/pytest_plugin/utils.py +0 -0
  1099. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/queries.py +0 -0
  1100. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/query_groups.py +0 -0
  1101. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/recorder.py +0 -0
  1102. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/repository.py +0 -0
  1103. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/schema/repository.py +0 -0
  1104. {infrahub_server-1.1.9/python_sdk/infrahub_sdk/transfer/importer → infrahub_server-1.2.0/python_sdk/infrahub_sdk/spec}/__init__.py +0 -0
  1105. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/spec/menu.py +0 -0
  1106. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/spec/object.py +0 -0
  1107. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/store.py +0 -0
  1108. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/testing/docker.py +0 -0
  1109. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/testing/repository.py +0 -0
  1110. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/testing/schemas/animal.py +0 -0
  1111. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/testing/schemas/car_person.py +0 -0
  1112. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/topological_sort.py +0 -0
  1113. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/constants.py +0 -0
  1114. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/exceptions.py +0 -0
  1115. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/exporter/interface.py +0 -0
  1116. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/exporter/json.py +0 -0
  1117. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/importer/interface.py +0 -0
  1118. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/importer/json.py +0 -0
  1119. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transfer/schema_sorter.py +0 -0
  1120. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/transforms.py +0 -0
  1121. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/types.py +0 -0
  1122. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/uuidt.py +0 -0
  1123. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_sdk/infrahub_sdk/yaml.py +0 -0
  1124. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_testcontainers/infrahub_testcontainers/__init__.py +0 -0
  1125. {infrahub_server-1.1.9 → infrahub_server-1.2.0}/python_testcontainers/infrahub_testcontainers/haproxy.cfg +0 -0
@@ -0,0 +1,138 @@
1
+ Metadata-Version: 2.1
2
+ Name: infrahub-server
3
+ Version: 1.2.0
4
+ Summary: Infrahub is taking a new approach to Infrastructure Management by providing a new generation of datastore to organize and control all the data that defines how an infrastructure should run.
5
+ Home-page: https://opsmill.com
6
+ License: AGPL-3.0-only
7
+ Author: OpsMill
8
+ Author-email: info@opsmill.com
9
+ Requires-Python: >=3.10,<3.13
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: License :: OSI Approved :: GNU Affero General Public License v3
12
+ Classifier: Programming Language :: Python :: 3
13
+ Classifier: Programming Language :: Python :: 3.10
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Requires-Dist: Jinja2 (>=3,<4)
17
+ Requires-Dist: aio-pika (>=9.4,<9.5)
18
+ Requires-Dist: aiodataloader (==0.4.0)
19
+ Requires-Dist: asgi-correlation-id (==4.2.0)
20
+ Requires-Dist: authlib (==1.3.2)
21
+ Requires-Dist: bcrypt (>=4.1,<4.2)
22
+ Requires-Dist: boto3 (==1.34.129)
23
+ Requires-Dist: dulwich (>=0.22.7,<0.23.0)
24
+ Requires-Dist: email-validator (>=2.1,<2.2)
25
+ Requires-Dist: fastapi (>=0.115,<0.116)
26
+ Requires-Dist: fastapi-storages (>=0.3,<0.4)
27
+ Requires-Dist: gitpython (>=3,<4)
28
+ Requires-Dist: graphene (>=3.4,<3.5)
29
+ Requires-Dist: gunicorn (>=23.0.0,<24.0.0)
30
+ Requires-Dist: lunr (>=0.7.0.post1,<0.8.0)
31
+ Requires-Dist: nats-py (>=2.7.2,<3.0.0)
32
+ Requires-Dist: neo4j (>=5.28,<5.29)
33
+ Requires-Dist: neo4j-rust-ext (>=5.28,<5.29)
34
+ Requires-Dist: netaddr (==1.3.0)
35
+ Requires-Dist: numpy (>=1.24.2,<2.0.0) ; python_version >= "3.9" and python_version < "3.12"
36
+ Requires-Dist: numpy (>=1.26.2,<2.0.0) ; python_version >= "3.12"
37
+ Requires-Dist: opentelemetry-exporter-otlp-proto-grpc (==1.28.1)
38
+ Requires-Dist: opentelemetry-exporter-otlp-proto-http (==1.28.1)
39
+ Requires-Dist: opentelemetry-instrumentation-aio-pika (==0.49b1)
40
+ Requires-Dist: opentelemetry-instrumentation-fastapi (==0.49b1)
41
+ Requires-Dist: prefect (==3.2.11)
42
+ Requires-Dist: prefect-redis (==0.2.2)
43
+ Requires-Dist: pyarrow (>=14,<15)
44
+ Requires-Dist: pydantic (>=2.10,<2.11)
45
+ Requires-Dist: pydantic-settings (>=2.8,<2.9)
46
+ Requires-Dist: pyjwt (>=2.8,<2.9)
47
+ Requires-Dist: pytest (>=7.4,<7.5)
48
+ Requires-Dist: python-multipart (==0.0.18)
49
+ Requires-Dist: pyyaml (>=6,<7)
50
+ Requires-Dist: redis[hiredis] (>=5.0.0,<6.0.0)
51
+ Requires-Dist: rich (>=13,<14)
52
+ Requires-Dist: starlette-exporter (>=0.23,<0.24)
53
+ Requires-Dist: structlog (==24.1.0)
54
+ Requires-Dist: toml (>=0.10,<0.11)
55
+ Requires-Dist: typer (==0.12.5)
56
+ Requires-Dist: ujson (>=5,<6)
57
+ Requires-Dist: uvicorn[standard] (>=0.32,<0.33)
58
+ Requires-Dist: whenever (==0.7.2)
59
+ Project-URL: Documentation, https://docs.infrahub.app/
60
+ Project-URL: Repository, https://github.com/opsmill/infrahub
61
+ Description-Content-Type: text/markdown
62
+
63
+ <h1 align="center">
64
+ <a href=""><img src="docs/static/img/infrahub-hori.svg" alt="Infrahub" width="350"></a>
65
+ </h1>
66
+ <h3 align="center">Simplify Infrastructure Automation</h2>
67
+
68
+ <p align="center">
69
+ <a href="https://www.linkedin.com/company/opsmill">
70
+ <img src="https://img.shields.io/badge/linkedin-blue?logo=linkedin"/>
71
+ </a>
72
+ <a href="https://discord.gg/opsmill">
73
+ <img src="https://img.shields.io/badge/Discord-7289DA?&logo=discord&logoColor=white"/>
74
+ </a>
75
+ </p>
76
+
77
+ Infrahub from [OpsMill](https://opsmill.com) is taking a new approach to Infrastructure Management by providing a new generation of datastore to organize and control all the data that defines how an infrastructure should run. Infrahub offers a central hub to manage the data, templates and playbooks that powers your infrastructure by combining the version control and branch management capabilities similar to Git with the flexible data model and UI of a graph database.
78
+
79
+ If you just want to try Infrahub out, you can use our [Always-On Sandbox](https://demo.infrahub.app/) to get started.
80
+
81
+ ![infrahub screenshot](docs/docs/media/infrahub-readme.gif)
82
+
83
+ ## Why Use Infrahub?
84
+
85
+ **Unified Source of Truth** - Infrahub is a single source of truth for all your infrastructure and network data. It provides a unified view of your infrastructure, allowing you to manage your infrastructure in a more efficient and effective way. Infrahub allows unidirectional and bi-directional [data synchronization](https://docs.infrahub.app/sync/sync/) between other internal systems and Infrahub. The data can be accessed via WebUI, API and SDK, along with SSO and RBAC for access control.
86
+
87
+ **Flexible Schema** - Infrahub provides a flexible schema for your infrastructure data and related business information, allowing you to define your own data model and customize it to your needs. Get started quickly with our [schema library](https://github.com/opsmill/schema-library) or build your own.
88
+
89
+ **Version Control** - Infrahub provides a version control system for your infrastructure data, allowing you to track changes and revert to previous versions if needed. Immutable history of all changes to the data and artifacts is maintained, allowing you to audit and review changes to your infrastructure.
90
+
91
+ **CI Pipeline and Validation** - Infrahub provides a CI pipeline and validation system for your infrastructure data, allowing you to ensure that your infrastructure is always in a valid state. Infrahub was designed with infrastructure-as-code workflows in mind, removing fragility and complexity of combining together multiple tools and projects to achieve the same goal.
92
+
93
+ ## Infrahub Use Cases
94
+
95
+ **Service Catalog** - Infrahub acts as the underlying system to provide infrastructure-as-a-service, allowing you to manage your services and lifecycle them as the services evolve.
96
+
97
+ **Infrastructure Automation** - Provide infrastructure and network automation workflows with Infrahub rendering configurations and artifacts via Jinja2 and python,then passing to deployment tools such as [Nornir](https://www.opsmill.com/simplifying-network-automation-workflows-with-infrahub-nornir-and-jinja2/), [Ansible](https://docs.infrahub.app/ansible/ansible/), Terraform, or vendor-specific tools.
98
+
99
+ **Inventory Management** - Infrahub serves as a centralized inventory system for your infrastructure, allowing you to manage your inventory and track changes to your infrastructure. It provides a WebUI and API for other teams to self-service the information needed to allow the organization to operate.
100
+
101
+ **DCIM and IPAM** - Infrahub provides centralized DCIM and IPAM systems for your infrastructure, capable of handling complex cases such as overlapping IP addresses and VLANs, automation-friendly, branch-aware allocation of resources via Infrahub's [Resource Manager](https://docs.infrahub.app/python-sdk/guides/resource-manager), and more.
102
+
103
+ ## Quick Start
104
+
105
+ [Always-On Sandbox](https://demo.infrahub.app/) - Instantly login to the UI of a demo environment of Infrahub with sample data pre-loaded.
106
+
107
+ [Getting Started Environment & Tutorial](https://opsmill.instruqt.com/pages/labs) - It spins up an instance of Infrahub on our cloud, provides a browser, terminal, code editor and walks you through the basic concepts:
108
+
109
+ - Branching and version control
110
+ - Flexible schema
111
+ - Unified storage
112
+
113
+ For longer term tests, you can deploy a local instance of Infrahub by referring to our guide: [Installing Infrahub](https://docs.infrahub.app/guides/installation)
114
+
115
+ ## Documentation
116
+
117
+ If you'd like to learn more about Infrahub, please refer to the following resources:
118
+
119
+ - [Infrahub Overview](https://docs.infrahub.app/overview/)
120
+ - [Infrahub Documentation](https://docs.infrahub.app/)
121
+ - [FAQ](https://docs.infrahub.app/faq/)
122
+
123
+ ## Support and Community
124
+
125
+ If you need help, support for the community version of Infrahub is provided on [![Join our Discord server](https://img.shields.io/badge/Discord-7289DA?logo=discord&logoColor=white)](https://discord.gg/opsmill) or via [filing an issue on GitHub](https://github.com/opsmill/infrahub/issues).
126
+
127
+ ## Contributing
128
+
129
+ To help our community with the creation of contributions, please view our [CONTRIBUTING](./CONTRIBUTING.md) page.
130
+
131
+ <a href="https://github.com/opsmill/infrahub/graphs/contributors">
132
+ <img src="https://contrib.rocks/image?repo=opsmill/infrahub" />
133
+ </a>
134
+
135
+ ## Security
136
+
137
+ [View our SECURITY](https://github.com/opsmill/infrahub?tab=security-ov-file) policy to find the latest information.
138
+
@@ -0,0 +1,106 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING
4
+
5
+ from fastapi import APIRouter, Body, Depends, Request, Response
6
+ from pydantic import BaseModel, Field
7
+
8
+ from infrahub.api.dependencies import (
9
+ BranchParams,
10
+ get_branch_params,
11
+ get_context,
12
+ get_current_user,
13
+ get_db,
14
+ get_permission_manager,
15
+ )
16
+ from infrahub.core import registry
17
+ from infrahub.core.account import ObjectPermission
18
+ from infrahub.core.constants import GLOBAL_BRANCH_NAME, InfrahubKind, PermissionAction
19
+ from infrahub.core.protocols import CoreArtifactDefinition
20
+ from infrahub.database import InfrahubDatabase # noqa: TC001
21
+ from infrahub.exceptions import NodeNotFoundError
22
+ from infrahub.git.models import RequestArtifactDefinitionGenerate
23
+ from infrahub.log import get_logger
24
+ from infrahub.permissions.constants import PermissionDecisionFlag
25
+ from infrahub.workflows.catalogue import REQUEST_ARTIFACT_DEFINITION_GENERATE
26
+
27
+ if TYPE_CHECKING:
28
+ from infrahub.auth import AccountSession
29
+ from infrahub.context import InfrahubContext
30
+ from infrahub.permissions import PermissionManager
31
+ from infrahub.services import InfrahubServices
32
+
33
+ log = get_logger()
34
+ router = APIRouter(prefix="/artifact")
35
+
36
+
37
+ class ArtifactGeneratePayload(BaseModel):
38
+ nodes: list[str] = Field(default_factory=list)
39
+
40
+
41
+ class ArtifactGenerateResponse(BaseModel):
42
+ nodes: list[str]
43
+
44
+
45
+ @router.get("/{artifact_id:str}")
46
+ async def get_artifact(
47
+ artifact_id: str,
48
+ db: InfrahubDatabase = Depends(get_db),
49
+ branch_params: BranchParams = Depends(get_branch_params),
50
+ _: AccountSession = Depends(get_current_user),
51
+ ) -> Response:
52
+ artifact = await registry.manager.get_one(db=db, id=artifact_id, branch=branch_params.branch, at=branch_params.at)
53
+ if not artifact:
54
+ raise NodeNotFoundError(
55
+ branch_name=branch_params.branch.name, node_type=InfrahubKind.ARTIFACT, identifier=artifact_id
56
+ )
57
+
58
+ return Response(
59
+ content=registry.storage.retrieve(identifier=artifact.storage_id.value),
60
+ headers={"Content-Type": artifact.content_type.value.value},
61
+ )
62
+
63
+
64
+ @router.post("/generate/{artifact_definition_id:str}")
65
+ async def generate_artifact(
66
+ request: Request,
67
+ artifact_definition_id: str,
68
+ payload: ArtifactGeneratePayload = Body(
69
+ ArtifactGeneratePayload(), # noqa: B008
70
+ description="Payload of the request, can be used to limit the scope of the query to a specific list of hosts",
71
+ ),
72
+ db: InfrahubDatabase = Depends(get_db),
73
+ branch_params: BranchParams = Depends(get_branch_params),
74
+ permission_manager: PermissionManager = Depends(get_permission_manager),
75
+ context: InfrahubContext = Depends(get_context),
76
+ ) -> None:
77
+ permission_decision = (
78
+ PermissionDecisionFlag.ALLOW_DEFAULT
79
+ if branch_params.branch.name in (GLOBAL_BRANCH_NAME, registry.default_branch)
80
+ else PermissionDecisionFlag.ALLOW_OTHER
81
+ )
82
+ permissions = [
83
+ ObjectPermission(namespace="Core", name="Artifact", action=action.value, decision=permission_decision)
84
+ for action in (PermissionAction.CREATE, PermissionAction.UPDATE)
85
+ ]
86
+ permission_manager.raise_for_permissions(permissions=permissions)
87
+
88
+ # Verify that the artifact definition exists for the requested branch
89
+ artifact_definition = await registry.manager.get_one_by_id_or_default_filter(
90
+ db=db,
91
+ id=artifact_definition_id,
92
+ kind=CoreArtifactDefinition,
93
+ branch=branch_params.branch,
94
+ )
95
+
96
+ service: InfrahubServices = request.app.state.service
97
+ model = RequestArtifactDefinitionGenerate(
98
+ artifact_definition_id=artifact_definition.id,
99
+ artifact_definition_name=artifact_definition.name.value,
100
+ branch=branch_params.branch.name,
101
+ limit=payload.nodes,
102
+ )
103
+
104
+ await service.workflow.submit_workflow(
105
+ workflow=REQUEST_ARTIFACT_DEFINITION_GENERATE, context=context, parameters={"model": model}
106
+ )
@@ -0,0 +1,143 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING, AsyncIterator
4
+
5
+ from fastapi import Depends, Query, Request
6
+ from fastapi.security import APIKeyHeader, HTTPAuthorizationCredentials, HTTPBearer
7
+ from pydantic import BaseModel, ConfigDict
8
+
9
+ from infrahub import config
10
+ from infrahub.auth import AccountSession, authentication_token, validate_jwt_access_token, validate_jwt_refresh_token
11
+ from infrahub.context import InfrahubContext
12
+ from infrahub.core.branch import Branch # noqa: TC001
13
+ from infrahub.core.registry import registry
14
+ from infrahub.core.timestamp import Timestamp
15
+ from infrahub.database import InfrahubDatabase # noqa: TC001
16
+ from infrahub.exceptions import AuthorizationError
17
+ from infrahub.permissions import PermissionManager
18
+
19
+ if TYPE_CHECKING:
20
+ from neo4j import AsyncSession
21
+
22
+ from infrahub.models import RefreshTokenData
23
+
24
+ jwt_scheme = HTTPBearer(auto_error=False)
25
+ api_key_scheme = APIKeyHeader(name="X-INFRAHUB-KEY", auto_error=False)
26
+
27
+
28
+ async def cookie_auth_scheme(request: Request) -> str | None:
29
+ return request.cookies.get("access_token") # Replace with the actual name of your JWT cookie
30
+
31
+
32
+ class BranchParams(BaseModel):
33
+ branch: Branch
34
+ at: Timestamp
35
+
36
+ model_config = ConfigDict(arbitrary_types_allowed=True)
37
+
38
+
39
+ async def get_session(request: Request) -> AsyncIterator[AsyncSession]:
40
+ session = request.app.state.db.session(database=config.SETTINGS.database.database_name)
41
+ try:
42
+ yield session
43
+ finally:
44
+ await session.close()
45
+
46
+
47
+ async def get_db(request: Request) -> InfrahubDatabase:
48
+ return request.app.state.db.start_session()
49
+
50
+
51
+ async def get_access_token(
52
+ request: Request, jwt_header: HTTPAuthorizationCredentials = Depends(jwt_scheme)
53
+ ) -> AccountSession:
54
+ if jwt_header:
55
+ return await validate_jwt_access_token(token=jwt_header.credentials)
56
+ if token := request.cookies.get("access_token"):
57
+ return await validate_jwt_access_token(token=token)
58
+
59
+ raise AuthorizationError("A JWT access token is required to perform this operation.")
60
+
61
+
62
+ async def get_refresh_token(
63
+ request: Request,
64
+ db: InfrahubDatabase = Depends(get_db),
65
+ jwt_header: HTTPAuthorizationCredentials | None = Depends(jwt_scheme),
66
+ ) -> RefreshTokenData:
67
+ token = None
68
+
69
+ # Check for token in header
70
+ if jwt_header:
71
+ token = jwt_header.credentials
72
+
73
+ # If no auth header, try to get the token from the cookie
74
+ if not token:
75
+ token = request.cookies.get("refresh_token")
76
+
77
+ # If still no token, raise an error
78
+ if not token:
79
+ raise AuthorizationError("A JWT refresh token is required to perform this operation.")
80
+
81
+ return await validate_jwt_refresh_token(db=db, token=token)
82
+
83
+
84
+ async def get_branch_params(
85
+ db: InfrahubDatabase = Depends(get_db),
86
+ branch_name: str | None = Query(None, alias="branch", description="Name of the branch to use for the query"),
87
+ at: str | None = Query(None, description="Time to use for the query, in absolute or relative format"),
88
+ ) -> BranchParams:
89
+ branch = await registry.get_branch(db=db, branch=branch_name)
90
+
91
+ return BranchParams(branch=branch, at=Timestamp(at))
92
+
93
+
94
+ async def get_branch_dep(
95
+ db: InfrahubDatabase = Depends(get_db),
96
+ branch_name: str | None = Query(None, alias="branch", description="Name of the branch to use for the query"),
97
+ ) -> Branch:
98
+ return await registry.get_branch(db=db, branch=branch_name)
99
+
100
+
101
+ async def get_current_user(
102
+ request: Request,
103
+ jwt_header: HTTPAuthorizationCredentials = Depends(jwt_scheme),
104
+ db: InfrahubDatabase = Depends(get_db),
105
+ api_key: str = Depends(api_key_scheme),
106
+ ) -> AccountSession:
107
+ """Return current user"""
108
+ jwt_token = None
109
+ if jwt_header:
110
+ jwt_token = jwt_header.credentials
111
+
112
+ if not jwt_token:
113
+ jwt_token = request.cookies.get("access_token")
114
+
115
+ account_session = await authentication_token(db=db, jwt_token=jwt_token, api_key=api_key)
116
+
117
+ if (
118
+ account_session.authenticated
119
+ or request.url.path.startswith("/graphql")
120
+ or (config.SETTINGS.main.allow_anonymous_access and request.method.lower() in ["get", "options"])
121
+ ):
122
+ return account_session
123
+
124
+ raise AuthorizationError("Authentication is required")
125
+
126
+
127
+ async def get_permission_manager(
128
+ db: InfrahubDatabase = Depends(get_db),
129
+ branch_params: BranchParams = Depends(get_branch_params),
130
+ account_session: AccountSession = Depends(get_current_user),
131
+ ) -> PermissionManager:
132
+ """Return a `PermissionManager` for an account session based on a branch."""
133
+ permission_manager = PermissionManager(account_session=account_session)
134
+ await permission_manager.load_permissions(db=db, branch=branch_params.branch)
135
+
136
+ return permission_manager
137
+
138
+
139
+ async def get_context(
140
+ branch: Branch = Depends(get_branch_dep),
141
+ account_session: AccountSession = Depends(get_current_user),
142
+ ) -> InfrahubContext:
143
+ return InfrahubContext.init(branch=branch, account=account_session)
@@ -0,0 +1,35 @@
1
+ from typing import Any
2
+
3
+ from pydantic import BaseModel, ConfigDict, field_validator, model_validator
4
+
5
+ from infrahub.core.branch import Branch
6
+ from infrahub.core.timestamp import Timestamp
7
+
8
+
9
+ class DiffQueryValidated(BaseModel):
10
+ model_config = ConfigDict(arbitrary_types_allowed=True)
11
+ branch: Branch
12
+ time_from: str | None = None
13
+ time_to: str | None = None
14
+ branch_only: bool
15
+
16
+ @field_validator("time_from", "time_to", mode="before")
17
+ @classmethod
18
+ def validate_time(cls, value: str | None) -> str | None:
19
+ if not value:
20
+ return None
21
+ Timestamp(value)
22
+ return value
23
+
24
+ @model_validator(mode="before")
25
+ @classmethod
26
+ def validate_time_from_if_required(cls, values: dict[str, Any]) -> dict[str, Any]:
27
+ branch: Branch | None = values.get("branch")
28
+ time_from: Timestamp | None = values.get("time_from")
29
+ if getattr(branch, "is_default", False) and not time_from:
30
+ branch_name = getattr(branch, "name", "")
31
+ raise ValueError(f"time_from is mandatory when diffing on the default branch `{branch_name}`.")
32
+ time_to: Timestamp | None = values.get("time_to")
33
+ if time_to and time_from and time_to < time_from:
34
+ raise ValueError("time_from and time_to are not a valid time range")
35
+ return values
@@ -0,0 +1,146 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import TYPE_CHECKING
4
+ from urllib.parse import urljoin
5
+
6
+ import ujson
7
+ from authlib.integrations.httpx_client import AsyncOAuth2Client
8
+ from fastapi import APIRouter, Depends, Request, Response
9
+ from fastapi.responses import JSONResponse, RedirectResponse
10
+ from opentelemetry import trace
11
+
12
+ from infrahub import config, models
13
+ from infrahub.api.dependencies import get_db
14
+ from infrahub.auth import signin_sso_account
15
+ from infrahub.exceptions import GatewayError, ProcessingError
16
+ from infrahub.log import get_logger
17
+ from infrahub.message_bus.types import KVTTL
18
+
19
+ if TYPE_CHECKING:
20
+ import httpx
21
+
22
+ from infrahub.database import InfrahubDatabase
23
+ from infrahub.services import InfrahubServices
24
+
25
+
26
+ log = get_logger()
27
+ router = APIRouter(prefix="/oauth2")
28
+
29
+
30
+ def _get_redirect_url(request: Request, provider_name: str) -> str:
31
+ """Return public redirect URL."""
32
+ base_url = config.SETTINGS.main.public_url or str(request.base_url)
33
+ return urljoin(base_url, f"auth/oauth2/{provider_name}/callback")
34
+
35
+
36
+ @router.get("/{provider_name:str}/authorize")
37
+ async def authorize(request: Request, provider_name: str, final_url: str | None = None) -> Response:
38
+ provider = config.SETTINGS.security.get_oauth2_provider(provider=provider_name)
39
+
40
+ with trace.get_tracer(__name__).start_as_current_span("sso_oauth2_client_configuration") as span:
41
+ span.set_attribute("provider_name", provider_name)
42
+ span.set_attribute("scopes", provider.scopes)
43
+
44
+ client = AsyncOAuth2Client(
45
+ client_id=provider.client_id,
46
+ client_secret=provider.client_secret,
47
+ scope=provider.scopes,
48
+ )
49
+
50
+ redirect_uri = _get_redirect_url(request=request, provider_name=provider_name)
51
+ final_url = final_url or config.SETTINGS.main.public_url or str(request.base_url)
52
+
53
+ authorization_uri, state = client.create_authorization_url(
54
+ url=provider.authorization_url, redirect_uri=redirect_uri, scope=provider.scopes, final_url=final_url
55
+ )
56
+
57
+ service: InfrahubServices = request.app.state.service
58
+
59
+ await service.cache.set(
60
+ key=f"security:oauth2:provider:{provider_name}:state:{state}", value=final_url, expires=KVTTL.TWO_HOURS
61
+ )
62
+
63
+ if config.SETTINGS.dev.frontend_redirect_sso:
64
+ return JSONResponse(content={"url": authorization_uri})
65
+
66
+ return RedirectResponse(url=authorization_uri)
67
+
68
+
69
+ @router.get("/{provider_name:str}/token")
70
+ async def token(
71
+ request: Request,
72
+ response: Response,
73
+ provider_name: str,
74
+ state: str,
75
+ code: str,
76
+ db: InfrahubDatabase = Depends(get_db),
77
+ ) -> models.UserTokenWithUrl:
78
+ provider = config.SETTINGS.security.get_oauth2_provider(provider=provider_name)
79
+
80
+ service: InfrahubServices = request.app.state.service
81
+
82
+ cache_key = f"security:oauth2:provider:{provider_name}:state:{state}"
83
+ stored_final_url = await service.cache.get(key=cache_key)
84
+ await service.cache.delete(key=cache_key)
85
+
86
+ if not stored_final_url:
87
+ raise ProcessingError(message="Invalid 'state' parameter")
88
+
89
+ token_data = {
90
+ "code": code,
91
+ "client_id": provider.client_id,
92
+ "client_secret": provider.client_secret,
93
+ "redirect_uri": _get_redirect_url(request=request, provider_name=provider_name),
94
+ "grant_type": "authorization_code",
95
+ }
96
+
97
+ token_response = await service.http.post(provider.token_url, data=token_data)
98
+ _validate_response(response=token_response)
99
+
100
+ with trace.get_tracer(__name__).start_as_current_span("sso_token_request") as span:
101
+ span.set_attribute("token_request_data", ujson.dumps(token_response.json()))
102
+ payload = token_response.json()
103
+
104
+ headers = {"Authorization": f"{payload.get('token_type')} {payload.get('access_token')}"}
105
+ if provider.userinfo_method == config.UserInfoMethod.GET:
106
+ userinfo_response = await service.http.get(provider.userinfo_url, headers=headers)
107
+ else:
108
+ userinfo_response = await service.http.post(provider.userinfo_url, headers=headers)
109
+
110
+ _validate_response(response=userinfo_response)
111
+ user_info = userinfo_response.json()
112
+ sso_groups = user_info.get("groups", [])
113
+ if not sso_groups and config.SETTINGS.security.sso_user_default_group:
114
+ sso_groups = [config.SETTINGS.security.sso_user_default_group]
115
+
116
+ with trace.get_tracer(__name__).start_as_current_span("signin_sso_account") as span:
117
+ span.set_attribute("account_name", ujson.dumps(userinfo_response.json()))
118
+ span.set_attribute("sso_groups", sso_groups)
119
+ user_token = await signin_sso_account(db=db, account_name=user_info["name"], sso_groups=sso_groups)
120
+
121
+ response.set_cookie(
122
+ "access_token", user_token.access_token, httponly=True, max_age=config.SETTINGS.security.access_token_lifetime
123
+ )
124
+ response.set_cookie(
125
+ "refresh_token",
126
+ user_token.refresh_token,
127
+ httponly=True,
128
+ max_age=config.SETTINGS.security.refresh_token_lifetime,
129
+ )
130
+
131
+ return models.UserTokenWithUrl(
132
+ access_token=user_token.access_token, refresh_token=user_token.refresh_token, final_url=stored_final_url
133
+ )
134
+
135
+
136
+ def _validate_response(response: httpx.Response) -> None:
137
+ if 200 <= response.status_code <= 299:
138
+ return
139
+
140
+ log.error(
141
+ "Invalid response from the OAuth provider",
142
+ url=response.url,
143
+ status_code=response.status_code,
144
+ body=response.json(),
145
+ )
146
+ raise GatewayError(message="Invalid response from Authentication provider")