port-ocean 0.21.0__tar.gz → 0.21.2__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.
- {port_ocean-0.21.0 → port_ocean-0.21.2}/PKG-INFO +1 -1
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/config/settings.py +2 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/defaults/initialize.py +2 -4
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/webhook/processor_manager.py +2 -2
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/ocean.py +4 -1
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/webhook/test_processor_manager.py +33 -9
- {port_ocean-0.21.0 → port_ocean-0.21.2}/pyproject.toml +1 -1
- {port_ocean-0.21.0 → port_ocean-0.21.2}/LICENSE.md +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/README.md +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Dockerfile.Deb +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Dockerfile.alpine +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Dockerfile.base.builder +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Dockerfile.base.runner +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Dockerfile.dockerignore +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/Makefile +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/grpcio.sh +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/integrations/_infra/init.sh +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/bootstrap.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cli.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/defaults/__init___.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/defaults/clean.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/defaults/dock.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/defaults/group.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/list_integrations.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/main.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/new.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/pull.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/sail.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/commands/version.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/cookiecutter.json +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/extensions.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/hooks/post_gen_project.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.env.example +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.gitignore +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/.gitignore +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/blueprints.json +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/resources/port-app-config.yml +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/.port/spec.yaml +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/CHANGELOG.md +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/CONTRIBUTING.md +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/README.md +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/changelog/.gitignore +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/debug.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/main.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/poetry.toml +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/pyproject.toml +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/sonar-project.properties +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/tests/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/cookiecutter/{{cookiecutter.integration_slug}}/tests/test_sample.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/cli/utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/auth/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/auth/auth_client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/auth/oauth_client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/authentication.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/blueprints.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/entities.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/integrations.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/migrations.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/mixins/organization.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/retry_transport.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/types.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/clients/port/utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/config/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/config/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/config/dynamic.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/consumers/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/consumers/kafka_consumer.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/context/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/context/event.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/context/ocean.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/context/resource.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/defaults/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/defaults/clean.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/defaults/common.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/factory.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/http.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/kafka.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/once.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/polling.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/event_listener/webhooks_only.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/port/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/port/applier.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/port/get_related_entities.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/port/order_by_entities_dependencies.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entity_processor/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entity_processor/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entity_processor/jq_entity_processor.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/port_app_config/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/port_app_config/api.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/port_app_config/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/port_app_config/models.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/queue/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/queue/abstract_queue.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/queue/local_queue.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/resync_state_updater/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/resync_state_updater/updater.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/webhook/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/webhook/abstract_webhook_processor.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/webhook/webhook_event.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/events.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/handler.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/live_events.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/sync.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/sync_raw.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/integrations/mixins/utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/models.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/ocean_types.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/utils/entity_topological_sorter.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/utils/utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/debug_cli.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/api.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/clients.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/context.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/core.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/port_defaults.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/exceptions/webhook_processor.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/helpers/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/helpers/async_client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/helpers/retry.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/log/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/log/handlers.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/log/logger_setup.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/log/sensetive.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/middlewares.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/py.typed +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/run.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/sonar-project.properties +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/clients/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/clients/oauth/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/clients/oauth/test_oauth_client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/clients/port/mixins/test_entities.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/clients/port/mixins/test_organization_mixin.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/conftest.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/defaults/test_common.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/entities_state_applier/test_applier.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/entity_processor/test_jq_entity_processor.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/mixins/test_live_events.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/mixins/test_sync_raw.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/port_app_config/test_api.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/port_app_config/test_base.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/queue/test_local_queue.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/webhook/test_abstract_webhook_processor.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/webhook/test_webhook_event.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/test_utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/utils/test_entity_topological_sorter.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/utils/test_resolve_entities_diff.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/fake_port_api.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/fixtures.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/integration.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/ocean_app.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/port_client.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/helpers/smoke_test.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/log/test_handlers.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/test_ocean.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/test_smoke.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/utils/test_async_iterators.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/utils/test_cache.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/__init__.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/async_http.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/async_iterators.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/cache.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/misc.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/queue_utils.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/repeat.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/signal.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/utils/time.py +0 -0
- {port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/version.py +0 -0
|
@@ -83,6 +83,8 @@ class IntegrationConfiguration(BaseOceanSettings, extra=Extra.allow):
|
|
|
83
83
|
)
|
|
84
84
|
runtime: Runtime = Runtime.OnPrem
|
|
85
85
|
resources_path: str = Field(default=".port/resources")
|
|
86
|
+
max_event_processing_seconds: float = 90.0
|
|
87
|
+
max_wait_seconds_before_shutdown: float = 5.0
|
|
86
88
|
|
|
87
89
|
@root_validator()
|
|
88
90
|
def validate_integration_config(cls, values: dict[str, Any]) -> dict[str, Any]:
|
|
@@ -208,9 +208,6 @@ async def _create_resources(
|
|
|
208
208
|
async def _initialize_defaults(
|
|
209
209
|
config_class: Type[PortAppConfig], integration_config: IntegrationConfiguration
|
|
210
210
|
) -> None:
|
|
211
|
-
if not integration_config.initialize_port_resources:
|
|
212
|
-
return
|
|
213
|
-
|
|
214
211
|
port_client = ocean.port_client
|
|
215
212
|
defaults = get_port_integration_defaults(
|
|
216
213
|
config_class, integration_config.resources_path
|
|
@@ -274,9 +271,10 @@ async def _initialize_defaults(
|
|
|
274
271
|
if (
|
|
275
272
|
integration_config.create_port_resources_origin
|
|
276
273
|
== CreatePortResourcesOrigin.Port
|
|
274
|
+
or not integration_config.initialize_port_resources
|
|
277
275
|
):
|
|
278
276
|
logger.info(
|
|
279
|
-
"Skipping creating defaults resources due to `create_port_resources_origin` being `Port`"
|
|
277
|
+
"Skipping creating defaults resources due to `create_port_resources_origin` being `Port` or `initialize_port_resources` being `false`"
|
|
280
278
|
)
|
|
281
279
|
return
|
|
282
280
|
try:
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/webhook/processor_manager.py
RENAMED
|
@@ -24,8 +24,8 @@ class LiveEventsProcessorManager(LiveEventsMixin, EventsMixin):
|
|
|
24
24
|
self,
|
|
25
25
|
router: APIRouter,
|
|
26
26
|
signal_handler: SignalHandler,
|
|
27
|
-
max_event_processing_seconds: float
|
|
28
|
-
max_wait_seconds_before_shutdown: float
|
|
27
|
+
max_event_processing_seconds: float,
|
|
28
|
+
max_wait_seconds_before_shutdown: float,
|
|
29
29
|
) -> None:
|
|
30
30
|
self._router = router
|
|
31
31
|
self._processors_classes: Dict[str, list[Type[AbstractWebhookProcessor]]] = {}
|
|
@@ -57,7 +57,10 @@ class Ocean:
|
|
|
57
57
|
self.integration_router = integration_router or APIRouter()
|
|
58
58
|
|
|
59
59
|
self.webhook_manager = LiveEventsProcessorManager(
|
|
60
|
-
self.integration_router,
|
|
60
|
+
self.integration_router,
|
|
61
|
+
signal_handler,
|
|
62
|
+
max_event_processing_seconds=self.config.max_event_processing_seconds,
|
|
63
|
+
max_wait_seconds_before_shutdown=self.config.max_wait_seconds_before_shutdown,
|
|
61
64
|
)
|
|
62
65
|
|
|
63
66
|
self.port_client = PortClient(
|
|
@@ -175,7 +175,10 @@ def processor_manager() -> LiveEventsProcessorManager:
|
|
|
175
175
|
router = APIRouter()
|
|
176
176
|
signal_handler = SignalHandler()
|
|
177
177
|
return LiveEventsProcessorManager(
|
|
178
|
-
router,
|
|
178
|
+
router,
|
|
179
|
+
signal_handler,
|
|
180
|
+
max_event_processing_seconds=3,
|
|
181
|
+
max_wait_seconds_before_shutdown=3,
|
|
179
182
|
)
|
|
180
183
|
|
|
181
184
|
|
|
@@ -195,7 +198,7 @@ def webhook_event_for_process_webhook_request() -> WebhookEvent:
|
|
|
195
198
|
|
|
196
199
|
@pytest.fixture
|
|
197
200
|
def processor_manager_for_process_webhook_request() -> LiveEventsProcessorManager:
|
|
198
|
-
return LiveEventsProcessorManager(APIRouter(), SignalHandler())
|
|
201
|
+
return LiveEventsProcessorManager(APIRouter(), SignalHandler(), 3, 3)
|
|
199
202
|
|
|
200
203
|
|
|
201
204
|
@pytest.fixture
|
|
@@ -571,7 +574,10 @@ async def test_integrationTest_postRequestSent_webhookEventRawResultProcessed_en
|
|
|
571
574
|
test_path = "/webhook-test"
|
|
572
575
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
573
576
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
574
|
-
mock_context.app.integration_router,
|
|
577
|
+
mock_context.app.integration_router,
|
|
578
|
+
SignalHandler(),
|
|
579
|
+
max_event_processing_seconds=3,
|
|
580
|
+
max_wait_seconds_before_shutdown=3,
|
|
575
581
|
)
|
|
576
582
|
|
|
577
583
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessor)
|
|
@@ -682,7 +688,10 @@ async def test_integrationTest_postRequestSent_reachedTimeout_entityNotUpserted(
|
|
|
682
688
|
test_path = "/webhook-test"
|
|
683
689
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
684
690
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
685
|
-
mock_context.app.integration_router,
|
|
691
|
+
mock_context.app.integration_router,
|
|
692
|
+
SignalHandler(),
|
|
693
|
+
2,
|
|
694
|
+
2,
|
|
686
695
|
)
|
|
687
696
|
|
|
688
697
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessor)
|
|
@@ -796,7 +805,10 @@ async def test_integrationTest_postRequestSent_noMatchingHandlers_entityNotUpser
|
|
|
796
805
|
test_path = "/webhook-test"
|
|
797
806
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
798
807
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
799
|
-
mock_context.app.integration_router,
|
|
808
|
+
mock_context.app.integration_router,
|
|
809
|
+
SignalHandler(),
|
|
810
|
+
3,
|
|
811
|
+
3,
|
|
800
812
|
)
|
|
801
813
|
|
|
802
814
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessor)
|
|
@@ -973,7 +985,10 @@ async def test_integrationTest_postRequestSent_webhookEventRawResultProcessedFor
|
|
|
973
985
|
test_path = "/webhook-test"
|
|
974
986
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
975
987
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
976
|
-
mock_context.app.integration_router,
|
|
988
|
+
mock_context.app.integration_router,
|
|
989
|
+
SignalHandler(),
|
|
990
|
+
3,
|
|
991
|
+
3,
|
|
977
992
|
)
|
|
978
993
|
|
|
979
994
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessorA)
|
|
@@ -1100,7 +1115,10 @@ async def test_integrationTest_postRequestSent_webhookEventRawResultProcessedwit
|
|
|
1100
1115
|
test_path = "/webhook-test"
|
|
1101
1116
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
1102
1117
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
1103
|
-
mock_context.app.integration_router,
|
|
1118
|
+
mock_context.app.integration_router,
|
|
1119
|
+
SignalHandler(),
|
|
1120
|
+
3,
|
|
1121
|
+
3,
|
|
1104
1122
|
)
|
|
1105
1123
|
|
|
1106
1124
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessor)
|
|
@@ -1227,7 +1245,10 @@ async def test_integrationTest_postRequestSent_webhookEventRawResultProcessedwit
|
|
|
1227
1245
|
test_path = "/webhook-test"
|
|
1228
1246
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
1229
1247
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
1230
|
-
mock_context.app.integration_router,
|
|
1248
|
+
mock_context.app.integration_router,
|
|
1249
|
+
SignalHandler(),
|
|
1250
|
+
90.0,
|
|
1251
|
+
5.0,
|
|
1231
1252
|
)
|
|
1232
1253
|
|
|
1233
1254
|
mock_context.app.webhook_manager.register_processor(test_path, TestProcessor)
|
|
@@ -1363,7 +1384,10 @@ async def test_integrationTest_postRequestSent_oneProcessorThrowsException_onlyS
|
|
|
1363
1384
|
test_path = "/webhook-test"
|
|
1364
1385
|
mock_context.app.integration = BaseIntegration(ocean)
|
|
1365
1386
|
mock_context.app.webhook_manager = LiveEventsProcessorManager(
|
|
1366
|
-
mock_context.app.integration_router,
|
|
1387
|
+
mock_context.app.integration_router,
|
|
1388
|
+
SignalHandler(),
|
|
1389
|
+
3,
|
|
1390
|
+
3,
|
|
1367
1391
|
)
|
|
1368
1392
|
|
|
1369
1393
|
# Register both processors
|
|
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.21.0 → port_ocean-0.21.2}/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
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entities_state_applier/__init__.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/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.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/entity_processor/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/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.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/resync_state_updater/__init__.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/core/handlers/resync_state_updater/updater.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
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/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
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/mixins/test_live_events.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/mixins/test_sync_raw.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/port_app_config/test_api.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/port_app_config/test_base.py
RENAMED
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/queue/test_local_queue.py
RENAMED
|
File without changes
|
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/port_ocean/tests/core/handlers/webhook/test_webhook_event.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{port_ocean-0.21.0 → port_ocean-0.21.2}/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
|