port-ocean 0.23.4__tar.gz → 0.23.5__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.
Potentially problematic release.
This version of port-ocean might be problematic. Click here for more details.
- {port_ocean-0.23.4 → port_ocean-0.23.5}/PKG-INFO +1 -1
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.Deb +6 -6
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/config/dynamic.py +1 -1
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/sync_raw.py +2 -3
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/core.py +4 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/helpers/metric/metric.py +3 -1
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/log/test_handlers.py +2 -1
- {port_ocean-0.23.4 → port_ocean-0.23.5}/pyproject.toml +1 -1
- {port_ocean-0.23.4 → port_ocean-0.23.5}/LICENSE.md +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/README.md +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.alpine +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.base.builder +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.base.runner +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.dockerignore +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Dockerfile.local +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/Makefile +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/entry_local.sh +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/grpcio.sh +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/integrations/_infra/init.sh +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/bootstrap.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cache/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cache/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cache/disk.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cache/errors.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cache/memory.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cli.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/defaults/__init___.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/defaults/clean.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/defaults/dock.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/defaults/group.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/list_integrations.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/main.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/new.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/pull.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/sail.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/commands/version.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/cookiecutter.json +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/extensions.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/hooks/post_gen_project.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.env.example +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.gitignore +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/.gitignore +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/blueprints.json +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/port-app-config.yml +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/spec.yaml +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/CHANGELOG.md +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/CONTRIBUTING.md +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/README.md +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/changelog/.gitignore +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/debug.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/main.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/poetry.toml +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/pyproject.toml +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/sonar-project.properties +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/tests/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/tests/test_sample.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/auth/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/auth/auth_client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/auth/oauth_client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/authentication.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/blueprints.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/entities.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/integrations.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/migrations.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/mixins/organization.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/retry_transport.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/types.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/clients/port/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/config/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/config/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/config/settings.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/consumers/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/consumers/kafka_consumer.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/context/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/context/event.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/context/metric_resource.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/context/ocean.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/context/resource.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/defaults/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/defaults/clean.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/defaults/common.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/defaults/initialize.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/factory.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/http.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/kafka.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/once.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/polling.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/event_listener/webhooks_only.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/port/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/port/applier.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/port/get_related_entities.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/port/order_by_entities_dependencies.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entity_processor/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entity_processor/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entity_processor/jq_entity_processor.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/port_app_config/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/port_app_config/api.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/port_app_config/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/port_app_config/models.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/queue/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/queue/abstract_queue.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/queue/local_queue.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/resync_state_updater/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/resync_state_updater/updater.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/webhook/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/webhook/abstract_webhook_processor.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/webhook/processor_manager.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/webhook/webhook_event.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/events.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/handler.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/live_events.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/sync.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/integrations/mixins/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/models.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/ocean_types.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/utils/entity_topological_sorter.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/utils/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/debug_cli.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/api.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/clients.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/context.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/port_defaults.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/exceptions/webhook_processor.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/helpers/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/helpers/async_client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/helpers/metric/utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/helpers/retry.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/log/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/log/handlers.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/log/logger_setup.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/log/sensetive.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/middlewares.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/ocean.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/py.typed +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/run.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/sonar-project.properties +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/cache/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/cache/test_disk_cache.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/cache/test_memory_cache.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/oauth/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/oauth/test_oauth_client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/port/mixins/test_entities.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/port/mixins/test_organization_mixin.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/conftest.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/conftest.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/defaults/test_common.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/entities_state_applier/test_applier.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/entity_processor/test_jq_entity_processor.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/mixins/test_live_events.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/mixins/test_sync_raw.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/port_app_config/test_api.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/port_app_config/test_base.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/queue/test_local_queue.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/webhook/test_abstract_webhook_processor.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/webhook/test_processor_manager.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/webhook/test_webhook_event.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/test_utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/utils/test_entity_topological_sorter.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/utils/test_resolve_entities_diff.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/fake_port_api.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/fixtures.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/integration.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/ocean_app.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/port_client.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/helpers/smoke_test.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/test_metric.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/test_ocean.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/test_smoke.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/utils/test_async_iterators.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/utils/test_cache.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/__init__.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/async_http.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/async_iterators.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/cache.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/ipc.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/misc.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/queue_utils.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/repeat.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/signal.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/utils/time.py +0 -0
- {port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/version.py +0 -0
|
@@ -5,15 +5,11 @@ FROM ${BASE_BUILDER_PYTHON_IMAGE} AS base
|
|
|
5
5
|
|
|
6
6
|
ARG BUILD_CONTEXT
|
|
7
7
|
ARG BUILDPLATFORM
|
|
8
|
-
ARG PROMETHEUS_MULTIPROC_DIR=/tmp/ocean/prometheus/metrics
|
|
9
8
|
|
|
10
9
|
ENV LIBRDKAFKA_VERSION=2.8.2 \
|
|
11
10
|
PYTHONUNBUFFERED=1 \
|
|
12
11
|
POETRY_VIRTUALENVS_IN_PROJECT=1 \
|
|
13
|
-
PIP_ROOT_USER_ACTION=ignore
|
|
14
|
-
PROMETHEUS_MULTIPROC_DIR=${PROMETHEUS_MULTIPROC_DIR}
|
|
15
|
-
|
|
16
|
-
RUN mkdir -p ${PROMETHEUS_MULTIPROC_DIR}
|
|
12
|
+
PIP_ROOT_USER_ACTION=ignore
|
|
17
13
|
|
|
18
14
|
WORKDIR /app
|
|
19
15
|
|
|
@@ -25,8 +21,12 @@ FROM ${BASE_RUNNER_PYTHON_IMAGE} AS prod
|
|
|
25
21
|
|
|
26
22
|
ARG INTEGRATION_VERSION
|
|
27
23
|
ARG BUILD_CONTEXT
|
|
24
|
+
ARG PROMETHEUS_MULTIPROC_DIR=/tmp/ocean/prometheus/metrics
|
|
28
25
|
|
|
29
|
-
ENV LIBRDKAFKA_VERSION=2.8.2
|
|
26
|
+
ENV LIBRDKAFKA_VERSION=2.8.2 \
|
|
27
|
+
PROMETHEUS_MULTIPROC_DIR=${PROMETHEUS_MULTIPROC_DIR}
|
|
28
|
+
|
|
29
|
+
RUN mkdir -p ${PROMETHEUS_MULTIPROC_DIR}
|
|
30
30
|
|
|
31
31
|
RUN apt-get update \
|
|
32
32
|
&& apt-get install -y \
|
|
@@ -51,7 +51,7 @@ def default_config_factory(configurations: Any) -> Type[BaseModel]:
|
|
|
51
51
|
case _:
|
|
52
52
|
raise ValueError(f"Unknown type: {config.type}")
|
|
53
53
|
|
|
54
|
-
default = ... if config.required else None
|
|
54
|
+
default: Any = ... if config.required else None
|
|
55
55
|
if config.default is not None:
|
|
56
56
|
default = parse_obj_as(field_type, config.default)
|
|
57
57
|
fields[decamelize(config.name)] = (
|
|
@@ -33,7 +33,7 @@ from port_ocean.core.ocean_types import (
|
|
|
33
33
|
CalculationResult,
|
|
34
34
|
)
|
|
35
35
|
from port_ocean.core.utils.utils import resolve_entities_diff, zip_and_sum, gather_and_split_errors_from_results
|
|
36
|
-
from port_ocean.exceptions.core import OceanAbortException
|
|
36
|
+
from port_ocean.exceptions.core import IntegrationSubProcessFailedException, OceanAbortException
|
|
37
37
|
from port_ocean.helpers.metric.metric import MetricResourceKind, SyncState, MetricType, MetricPhase
|
|
38
38
|
from port_ocean.helpers.metric.utils import TimeMetric, TimeMetricWithResourceKind
|
|
39
39
|
from port_ocean.utils.ipc import FileIPC
|
|
@@ -626,14 +626,13 @@ class SyncRawMixin(HandlerMixin, EventsMixin):
|
|
|
626
626
|
id = uuid.uuid4()
|
|
627
627
|
logger.info(f"Starting subprocess with id {id}")
|
|
628
628
|
file_ipc_map = {
|
|
629
|
-
"process_resource": FileIPC(id, "process_resource",([],[])),
|
|
629
|
+
"process_resource": FileIPC(id, "process_resource",([],[IntegrationSubProcessFailedException(f"Subprocess failed for {resource.kind} with index {index}")])),
|
|
630
630
|
"topological_entities": FileIPC(id, "topological_entities",[]),
|
|
631
631
|
}
|
|
632
632
|
process = ProcessWrapper(target=self.process_resource_in_subprocess, args=(file_ipc_map,resource,index,user_agent_type))
|
|
633
633
|
process.start()
|
|
634
634
|
await process.join_async()
|
|
635
635
|
|
|
636
|
-
|
|
637
636
|
event.entity_topological_sorter.entities.extend(file_ipc_map["topological_entities"].load())
|
|
638
637
|
return file_ipc_map["process_resource"].load()
|
|
639
638
|
|
|
@@ -123,6 +123,7 @@ class Metrics:
|
|
|
123
123
|
self.registry = prometheus_client.CollectorRegistry()
|
|
124
124
|
if multiprocessing_enabled:
|
|
125
125
|
multiprocess.MultiProcessCollector(self.registry)
|
|
126
|
+
self.multiprocessing_enabled = multiprocessing_enabled
|
|
126
127
|
self.metrics: dict[str, Gauge] = {}
|
|
127
128
|
self.load_metrics()
|
|
128
129
|
self._integration_version: Optional[str] = None
|
|
@@ -213,7 +214,8 @@ class Metrics:
|
|
|
213
214
|
logger.error(f"Failed to cleanup prometheus metrics: {e}")
|
|
214
215
|
|
|
215
216
|
def initialize_metrics(self, kind_blockes: list[str]) -> None:
|
|
216
|
-
self.
|
|
217
|
+
if self.multiprocessing_enabled:
|
|
218
|
+
self.cleanup_prometheus_metrics()
|
|
217
219
|
for kind in kind_blockes:
|
|
218
220
|
self.set_metric(MetricType.SUCCESS_NAME, [kind, MetricPhase.RESYNC], 0)
|
|
219
221
|
self.set_metric(MetricType.DURATION_NAME, [kind, MetricPhase.RESYNC], 0)
|
|
@@ -21,7 +21,8 @@ def test_serialize_record_log_shape() -> None:
|
|
|
21
21
|
)
|
|
22
22
|
serialized_record = _serialize_record(record)
|
|
23
23
|
assert all(key in serialized_record for key in expected_keys)
|
|
24
|
-
|
|
24
|
+
message = serialized_record.get("message", None)
|
|
25
|
+
assert message is not None and log_message in message
|
|
25
26
|
|
|
26
27
|
|
|
27
28
|
def test_serialize_record_exc_info_single_exception() -> None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/cli/cookiecutter/hooks/post_gen_project.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/__init__.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entities_state_applier/base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/entity_processor/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/port_app_config/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/resync_state_updater/__init__.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/resync_state_updater/updater.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/core/handlers/webhook/processor_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/clients/port/mixins/test_entities.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/mixins/test_live_events.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/mixins/test_sync_raw.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/port_app_config/test_api.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/port_app_config/test_base.py
RENAMED
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/queue/test_local_queue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/handlers/webhook/test_webhook_event.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.23.4 → port_ocean-0.23.5}/port_ocean/tests/core/utils/test_resolve_entities_diff.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|