infrahub-server 1.6.3__py3-none-any.whl → 1.7.0b0__py3-none-any.whl
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.
- infrahub/actions/tasks.py +4 -2
- infrahub/api/schema.py +3 -1
- infrahub/artifacts/tasks.py +1 -0
- infrahub/auth.py +2 -2
- infrahub/cli/db.py +6 -6
- infrahub/computed_attribute/gather.py +3 -4
- infrahub/computed_attribute/tasks.py +23 -6
- infrahub/config.py +8 -0
- infrahub/constants/enums.py +12 -0
- infrahub/core/account.py +5 -8
- infrahub/core/attribute.py +106 -108
- infrahub/core/branch/models.py +44 -71
- infrahub/core/branch/tasks.py +5 -3
- infrahub/core/changelog/diff.py +1 -20
- infrahub/core/changelog/models.py +0 -7
- infrahub/core/constants/__init__.py +17 -0
- infrahub/core/constants/database.py +0 -1
- infrahub/core/constants/schema.py +0 -1
- infrahub/core/convert_object_type/repository_conversion.py +3 -4
- infrahub/core/diff/data_check_synchronizer.py +3 -2
- infrahub/core/diff/enricher/cardinality_one.py +1 -1
- infrahub/core/diff/merger/merger.py +27 -1
- infrahub/core/diff/merger/serializer.py +3 -10
- infrahub/core/diff/model/diff.py +1 -1
- infrahub/core/diff/query/merge.py +376 -135
- infrahub/core/graph/__init__.py +1 -1
- infrahub/core/graph/constraints.py +2 -2
- infrahub/core/graph/schema.py +2 -12
- infrahub/core/manager.py +132 -126
- infrahub/core/metadata/__init__.py +0 -0
- infrahub/core/metadata/interface.py +37 -0
- infrahub/core/metadata/model.py +31 -0
- infrahub/core/metadata/query/__init__.py +0 -0
- infrahub/core/metadata/query/node_metadata.py +301 -0
- infrahub/core/migrations/graph/__init__.py +4 -0
- infrahub/core/migrations/graph/m013_convert_git_password_credential.py +3 -8
- infrahub/core/migrations/graph/m017_add_core_profile.py +5 -2
- infrahub/core/migrations/graph/m018_uniqueness_nulls.py +2 -1
- infrahub/core/migrations/graph/m019_restore_rels_to_time.py +0 -10
- infrahub/core/migrations/graph/m020_duplicate_edges.py +0 -8
- infrahub/core/migrations/graph/m025_uniqueness_nulls.py +2 -1
- infrahub/core/migrations/graph/m026_0000_prefix_fix.py +2 -1
- infrahub/core/migrations/graph/m029_duplicates_cleanup.py +0 -1
- infrahub/core/migrations/graph/m031_check_number_attributes.py +2 -2
- infrahub/core/migrations/graph/m038_redo_0000_prefix_fix.py +2 -1
- infrahub/core/migrations/graph/m049_remove_is_visible_relationship.py +38 -0
- infrahub/core/migrations/graph/m050_backfill_vertex_metadata.py +168 -0
- infrahub/core/migrations/query/attribute_add.py +17 -6
- infrahub/core/migrations/query/attribute_remove.py +19 -5
- infrahub/core/migrations/query/attribute_rename.py +21 -5
- infrahub/core/migrations/query/node_duplicate.py +19 -4
- infrahub/core/migrations/schema/attribute_kind_update.py +25 -7
- infrahub/core/migrations/schema/attribute_supports_profile.py +3 -1
- infrahub/core/migrations/schema/models.py +3 -0
- infrahub/core/migrations/schema/node_attribute_add.py +4 -1
- infrahub/core/migrations/schema/node_remove.py +24 -2
- infrahub/core/migrations/schema/tasks.py +4 -1
- infrahub/core/migrations/shared.py +13 -6
- infrahub/core/models.py +6 -6
- infrahub/core/node/__init__.py +156 -57
- infrahub/core/node/create.py +7 -3
- infrahub/core/node/standard.py +100 -14
- infrahub/core/property.py +0 -1
- infrahub/core/protocols_base.py +6 -2
- infrahub/core/query/__init__.py +6 -7
- infrahub/core/query/attribute.py +161 -46
- infrahub/core/query/branch.py +57 -69
- infrahub/core/query/diff.py +4 -4
- infrahub/core/query/node.py +618 -180
- infrahub/core/query/relationship.py +449 -300
- infrahub/core/query/standard_node.py +25 -5
- infrahub/core/query/utils.py +2 -4
- infrahub/core/relationship/constraints/profiles_removal.py +168 -0
- infrahub/core/relationship/model.py +293 -139
- infrahub/core/schema/attribute_parameters.py +1 -28
- infrahub/core/schema/attribute_schema.py +17 -11
- infrahub/core/schema/manager.py +63 -43
- infrahub/core/schema/relationship_schema.py +6 -2
- infrahub/core/schema/schema_branch.py +48 -76
- infrahub/core/task/task.py +4 -2
- infrahub/core/utils.py +0 -22
- infrahub/core/validators/attribute/kind.py +2 -5
- infrahub/core/validators/determiner.py +3 -3
- infrahub/database/__init__.py +3 -3
- infrahub/dependencies/builder/constraint/grouped/node_runner.py +2 -0
- infrahub/dependencies/builder/constraint/relationship_manager/profiles_removal.py +8 -0
- infrahub/dependencies/registry.py +2 -0
- infrahub/display_labels/tasks.py +12 -3
- infrahub/git/integrator.py +18 -18
- infrahub/git/tasks.py +1 -1
- infrahub/graphql/app.py +2 -2
- infrahub/graphql/constants.py +3 -0
- infrahub/graphql/context.py +1 -1
- infrahub/graphql/initialization.py +11 -0
- infrahub/graphql/loaders/account.py +134 -0
- infrahub/graphql/loaders/node.py +5 -12
- infrahub/graphql/loaders/peers.py +5 -7
- infrahub/graphql/manager.py +158 -18
- infrahub/graphql/metadata.py +91 -0
- infrahub/graphql/models.py +33 -3
- infrahub/graphql/mutations/account.py +5 -5
- infrahub/graphql/mutations/attribute.py +0 -2
- infrahub/graphql/mutations/branch.py +9 -5
- infrahub/graphql/mutations/computed_attribute.py +1 -1
- infrahub/graphql/mutations/display_label.py +1 -1
- infrahub/graphql/mutations/hfid.py +1 -1
- infrahub/graphql/mutations/ipam.py +4 -6
- infrahub/graphql/mutations/main.py +9 -4
- infrahub/graphql/mutations/profile.py +16 -22
- infrahub/graphql/mutations/proposed_change.py +4 -4
- infrahub/graphql/mutations/relationship.py +40 -10
- infrahub/graphql/mutations/repository.py +14 -12
- infrahub/graphql/mutations/schema.py +2 -2
- infrahub/graphql/queries/branch.py +62 -6
- infrahub/graphql/queries/diff/tree.py +5 -5
- infrahub/graphql/resolvers/account_metadata.py +84 -0
- infrahub/graphql/resolvers/ipam.py +6 -8
- infrahub/graphql/resolvers/many_relationship.py +77 -35
- infrahub/graphql/resolvers/resolver.py +16 -12
- infrahub/graphql/resolvers/single_relationship.py +87 -23
- infrahub/graphql/subscription/graphql_query.py +2 -0
- infrahub/graphql/types/__init__.py +0 -1
- infrahub/graphql/types/attribute.py +10 -5
- infrahub/graphql/types/branch.py +40 -53
- infrahub/graphql/types/enums.py +3 -0
- infrahub/graphql/types/metadata.py +28 -0
- infrahub/graphql/types/node.py +22 -2
- infrahub/graphql/types/relationship.py +10 -2
- infrahub/graphql/types/standard_node.py +4 -3
- infrahub/hfid/tasks.py +12 -3
- infrahub/profiles/gather.py +56 -0
- infrahub/profiles/mandatory_fields_checker.py +116 -0
- infrahub/profiles/models.py +66 -0
- infrahub/profiles/node_applier.py +153 -12
- infrahub/profiles/queries/get_profile_data.py +143 -31
- infrahub/profiles/tasks.py +79 -27
- infrahub/profiles/triggers.py +22 -0
- infrahub/proposed_change/tasks.py +4 -1
- infrahub/tasks/artifact.py +1 -0
- infrahub/transformations/tasks.py +2 -2
- infrahub/trigger/catalogue.py +2 -0
- infrahub/trigger/models.py +1 -0
- infrahub/trigger/setup.py +3 -3
- infrahub/trigger/tasks.py +3 -0
- infrahub/validators/tasks.py +1 -0
- infrahub/webhook/models.py +1 -1
- infrahub/webhook/tasks.py +1 -1
- infrahub/workers/dependencies.py +9 -3
- infrahub/workers/infrahub_async.py +13 -4
- infrahub/workflows/catalogue.py +19 -0
- infrahub_sdk/node/constants.py +1 -0
- infrahub_sdk/node/related_node.py +13 -4
- infrahub_sdk/node/relationship.py +8 -0
- {infrahub_server-1.6.3.dist-info → infrahub_server-1.7.0b0.dist-info}/METADATA +17 -16
- {infrahub_server-1.6.3.dist-info → infrahub_server-1.7.0b0.dist-info}/RECORD +161 -143
- infrahub_testcontainers/container.py +3 -3
- infrahub_testcontainers/docker-compose-cluster.test.yml +7 -7
- infrahub_testcontainers/docker-compose.test.yml +13 -5
- {infrahub_server-1.6.3.dist-info → infrahub_server-1.7.0b0.dist-info}/WHEEL +0 -0
- {infrahub_server-1.6.3.dist-info → infrahub_server-1.7.0b0.dist-info}/entry_points.txt +0 -0
- {infrahub_server-1.6.3.dist-info → infrahub_server-1.7.0b0.dist-info}/licenses/LICENSE.txt +0 -0
|
@@ -30,8 +30,8 @@ INFRAHUB_SERVICES: dict[str, ContainerService] = {
|
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
PROJECT_ENV_VARIABLES: dict[str, str] = {
|
|
33
|
-
"MESSAGE_QUEUE_DOCKER_IMAGE": "rabbitmq:
|
|
34
|
-
"CACHE_DOCKER_IMAGE": "redis:
|
|
33
|
+
"MESSAGE_QUEUE_DOCKER_IMAGE": "rabbitmq:4.2.1-management",
|
|
34
|
+
"CACHE_DOCKER_IMAGE": "redis:8.4.0",
|
|
35
35
|
"INFRAHUB_TESTING_DOCKER_IMAGE": "registry.opsmill.io/opsmill/infrahub",
|
|
36
36
|
"INFRAHUB_TESTING_DOCKER_ENTRYPOINT": f"gunicorn --config backend/infrahub/serve/gunicorn_config.py -w {os.environ.get('INFRAHUB_TESTING_WEB_CONCURRENCY', '4')} --logger-class infrahub.serve.log.GunicornLogger infrahub.server:app", # noqa: E501
|
|
37
37
|
"INFRAHUB_TESTING_IMAGE_VERSION": infrahub_version,
|
|
@@ -152,7 +152,7 @@ class InfrahubDockerCompose(DockerCompose):
|
|
|
152
152
|
"INFRAHUB_TESTING_DOCKER_ENTRYPOINT": f"gunicorn --config community/backend/infrahub/serve/gunicorn_config.py -w {os.environ.get('INFRAHUB_TESTING_WEB_CONCURRENCY', '4')} --logger-class infrahub.serve.log.GunicornLogger infrahub_enterprise.server:app", # noqa: E501
|
|
153
153
|
"INFRAHUB_TESTING_WORKFLOW_DEFAULT_WORKER_TYPE": "infrahubentasync",
|
|
154
154
|
"INFRAHUB_TESTING_PREFECT_UI_ENABLED": "false",
|
|
155
|
-
"NEO4J_DOCKER_IMAGE": "neo4j:2025.
|
|
155
|
+
"NEO4J_DOCKER_IMAGE": "neo4j:2025.10.1-enterprise",
|
|
156
156
|
}
|
|
157
157
|
)
|
|
158
158
|
if os.environ.get("INFRAHUB_TESTING_TASKMGR_SCALEOUT"):
|
|
@@ -22,7 +22,7 @@ x-neo4j-config-common: &neo4j-config-common
|
|
|
22
22
|
|
|
23
23
|
services:
|
|
24
24
|
message-queue:
|
|
25
|
-
image: ${MESSAGE_QUEUE_DOCKER_IMAGE:-rabbitmq:
|
|
25
|
+
image: ${MESSAGE_QUEUE_DOCKER_IMAGE:-rabbitmq:4.2.1-management}
|
|
26
26
|
restart: unless-stopped
|
|
27
27
|
environment:
|
|
28
28
|
RABBITMQ_DEFAULT_USER: infrahub
|
|
@@ -37,7 +37,7 @@ services:
|
|
|
37
37
|
- ${INFRAHUB_TESTING_MESSAGE_QUEUE_PORT:-0}:15692
|
|
38
38
|
|
|
39
39
|
cache:
|
|
40
|
-
image: ${CACHE_DOCKER_IMAGE:-redis:
|
|
40
|
+
image: ${CACHE_DOCKER_IMAGE:-redis:8.4.0}
|
|
41
41
|
restart: unless-stopped
|
|
42
42
|
healthcheck:
|
|
43
43
|
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
|
@@ -67,7 +67,7 @@ services:
|
|
|
67
67
|
limits:
|
|
68
68
|
cpus: ${INFRAHUB_TESTING_DB_CPU_LIMIT}
|
|
69
69
|
memory: ${INFRAHUB_TESTING_DB_MEMORY_LIMIT}
|
|
70
|
-
image: "${DATABASE_DOCKER_IMAGE:-neo4j:
|
|
70
|
+
image: "${DATABASE_DOCKER_IMAGE:-neo4j:2025.10.1-enterprise}"
|
|
71
71
|
restart: unless-stopped
|
|
72
72
|
environment:
|
|
73
73
|
<<: *neo4j-config-common
|
|
@@ -100,7 +100,7 @@ services:
|
|
|
100
100
|
limits:
|
|
101
101
|
cpus: ${INFRAHUB_TESTING_DB_CPU_LIMIT}
|
|
102
102
|
memory: ${INFRAHUB_TESTING_DB_MEMORY_LIMIT}
|
|
103
|
-
image: "${DATABASE_DOCKER_IMAGE:-neo4j:
|
|
103
|
+
image: "${DATABASE_DOCKER_IMAGE:-neo4j:2025.10.1-enterprise}"
|
|
104
104
|
environment:
|
|
105
105
|
<<: *neo4j-config-common
|
|
106
106
|
NEO4J_metrics_prometheus_endpoint: 0.0.0.0:2005
|
|
@@ -135,7 +135,7 @@ services:
|
|
|
135
135
|
limits:
|
|
136
136
|
cpus: ${INFRAHUB_TESTING_DB_CPU_LIMIT}
|
|
137
137
|
memory: ${INFRAHUB_TESTING_DB_MEMORY_LIMIT}
|
|
138
|
-
image: "${DATABASE_DOCKER_IMAGE:-neo4j:
|
|
138
|
+
image: "${DATABASE_DOCKER_IMAGE:-neo4j:2025.10.1-enterprise}"
|
|
139
139
|
environment:
|
|
140
140
|
<<: *neo4j-config-common
|
|
141
141
|
NEO4J_metrics_prometheus_endpoint: 0.0.0.0:2006
|
|
@@ -240,14 +240,14 @@ services:
|
|
|
240
240
|
PREFECT_SERVER_SERVICES_TASK_RUN_RECORDER_ENABLED: "true"
|
|
241
241
|
|
|
242
242
|
task-manager-db:
|
|
243
|
-
image: "${POSTGRES_DOCKER_IMAGE:-postgres:
|
|
243
|
+
image: "${POSTGRES_DOCKER_IMAGE:-postgres:18-alpine}"
|
|
244
244
|
command: postgres -c 'max_connections=${INFRAHUB_TESTING_TASK_MANAGER_DB_MAX_CONNECTIONS:-100}'
|
|
245
245
|
environment:
|
|
246
246
|
- POSTGRES_USER=postgres
|
|
247
247
|
- POSTGRES_PASSWORD=postgres
|
|
248
248
|
- POSTGRES_DB=prefect
|
|
249
249
|
volumes:
|
|
250
|
-
- workflow_db:/var/lib/postgresql/
|
|
250
|
+
- workflow_db:/var/lib/postgresql/18/docker
|
|
251
251
|
- "./${INFRAHUB_TESTING_LOCAL_DB_BACKUP_DIRECTORY}:${INFRAHUB_TESTING_INTERNAL_DB_BACKUP_DIRECTORY}"
|
|
252
252
|
healthcheck:
|
|
253
253
|
test: ["CMD-SHELL", "pg_isready"]
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
# https://docs.infrahub.app/reference/configuration
|
|
6
6
|
services:
|
|
7
7
|
message-queue:
|
|
8
|
-
image: ${MESSAGE_QUEUE_DOCKER_IMAGE:-rabbitmq:
|
|
8
|
+
image: ${MESSAGE_QUEUE_DOCKER_IMAGE:-rabbitmq:4.2.1-management}
|
|
9
9
|
restart: unless-stopped
|
|
10
10
|
environment:
|
|
11
11
|
RABBITMQ_DEFAULT_USER: infrahub
|
|
@@ -20,7 +20,7 @@ services:
|
|
|
20
20
|
- ${INFRAHUB_TESTING_MESSAGE_QUEUE_PORT:-0}:15692
|
|
21
21
|
|
|
22
22
|
cache:
|
|
23
|
-
image: ${CACHE_DOCKER_IMAGE:-redis:
|
|
23
|
+
image: ${CACHE_DOCKER_IMAGE:-redis:8.4.0}
|
|
24
24
|
restart: unless-stopped
|
|
25
25
|
healthcheck:
|
|
26
26
|
test: ["CMD-SHELL", "redis-cli ping | grep PONG"]
|
|
@@ -50,7 +50,7 @@ services:
|
|
|
50
50
|
limits:
|
|
51
51
|
cpus: ${INFRAHUB_TESTING_DB_CPU_LIMIT:-0.0}
|
|
52
52
|
memory: ${INFRAHUB_TESTING_DB_MEMORY_LIMIT:-0}
|
|
53
|
-
image: ${NEO4J_DOCKER_IMAGE:-neo4j:2025.
|
|
53
|
+
image: ${NEO4J_DOCKER_IMAGE:-neo4j:2025.10.1-community}
|
|
54
54
|
restart: unless-stopped
|
|
55
55
|
environment:
|
|
56
56
|
NEO4J_AUTH: neo4j/admin
|
|
@@ -150,15 +150,23 @@ services:
|
|
|
150
150
|
PREFECT_SERVER_SERVICES_TRIGGERS_ENABLED: "true"
|
|
151
151
|
PREFECT_SERVER_SERVICES_TASK_RUN_RECORDER_ENABLED: "true"
|
|
152
152
|
|
|
153
|
+
PREFECT_SERVER_SERVICES_EVENT_PERSISTER_READ_BATCH_SIZE:
|
|
154
|
+
PREFECT_SERVER_SERVICES_EVENT_PERSISTER_BATCH_SIZE:
|
|
155
|
+
PREFECT_SERVER_SERVICES_EVENT_PERSISTER_BATCH_SIZE_DELETE:
|
|
156
|
+
PREFECT_SERVER_SERVICES_EVENT_PERSISTER_FLUSH_INTERVAL:
|
|
157
|
+
|
|
158
|
+
PREFECT_SERVER_SERVICES_TASK_RUN_RECORDER_BATCH_SIZE:
|
|
159
|
+
PREFECT_SERVER_SERVICES_TASK_RUN_RECORDER_FLUSH_INTERVAL:
|
|
160
|
+
|
|
153
161
|
task-manager-db:
|
|
154
|
-
image: "${POSTGRES_DOCKER_IMAGE:-postgres:
|
|
162
|
+
image: "${POSTGRES_DOCKER_IMAGE:-postgres:18-alpine}"
|
|
155
163
|
command: postgres -c 'max_connections=${INFRAHUB_TESTING_TASK_MANAGER_DB_MAX_CONNECTIONS:-100}'
|
|
156
164
|
environment:
|
|
157
165
|
- POSTGRES_USER=postgres
|
|
158
166
|
- POSTGRES_PASSWORD=postgres
|
|
159
167
|
- POSTGRES_DB=prefect
|
|
160
168
|
volumes:
|
|
161
|
-
- workflow_db:/var/lib/postgresql/
|
|
169
|
+
- workflow_db:/var/lib/postgresql/18/docker
|
|
162
170
|
- "./${INFRAHUB_TESTING_LOCAL_DB_BACKUP_DIRECTORY}:${INFRAHUB_TESTING_INTERNAL_DB_BACKUP_DIRECTORY}"
|
|
163
171
|
healthcheck:
|
|
164
172
|
test: ["CMD-SHELL", "pg_isready"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|