splunk-soar-sdk 2.0.1__tar.gz → 2.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/PKG-INFO +1 -1
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/pyproject.toml +1 -1
- splunk_soar_sdk-2.1.1/release_notes.txt +21 -0
- splunk_soar_sdk-2.1.1/release_version.txt +1 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app.py +15 -2
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/action.py +3 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/actions.py +5 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/app.json +76 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/app.py +19 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/test_actions.py +21 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app_action.py +23 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/uv.lock +1 -1
- splunk_soar_sdk-2.0.1/release_notes.txt +0 -21
- splunk_soar_sdk-2.0.1/release_version.txt +0 -1
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/ISSUE_TEMPLATE/bug.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/pull_request_template.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/utils/github.js +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/utils/update_version.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/workflows/code_quality.yml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/workflows/commit_hygiene.yml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/workflows/generate_docs.yml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.github/workflows/semantic_release.yml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.gitignore +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.pre-commit-config.yaml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/.releaserc +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/LICENSE +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/README.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/commitlint.config.js +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/api_reference.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/app_structure/index.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/app_structure/pre-commit-config.yaml.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/app_structure/pyproject.toml.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/app_structure/src_app.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/changelog.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/cli_reference.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/conf.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/custom_views/index.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/custom_views/reusable_components.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/custom_views/templates.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/custom_views/view_handlers.md +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/defining_asset.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/first_action.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/index.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/init_app.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/installation.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/testing_and_building.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/index.rst +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/abstract.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/action_results.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/actions_manager.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/apis/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/apis/artifact.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/apis/container.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/apis/utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/apis/vault.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_cli_runner.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_client.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/.gitignore +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/.pre-commit-config.yaml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/logo.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/logo_dark.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/src/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/uv.lock +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/asset.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/async_utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/init/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/init/cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/manifests/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/manifests/cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/manifests/deserializers.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/manifests/processors.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/manifests/serializers.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/package/cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/package/utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/path_utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/cli/utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/action_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/app_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/asset_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/templates/pyproject.toml.jinja +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/toml_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/colors.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/compat.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/crypto.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/make_request.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/on_poll.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/test_connectivity.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/view_handler.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/webhook.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/exceptions.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/input_spec.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/logging.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/adapters.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/app.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/datatypes.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/dependencies.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/meta/webhooks.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/models/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/models/artifact.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/models/container.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/models/vault_attachment.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/models/view.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/params.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/paths.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/py.typed +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/action_result.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/app.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/base_connector.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/connector_result.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/consts.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/encryption_helper.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/install_info.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/json_keys.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/ph_ipc.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/vault.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom_common/app_interface/app_interface.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom_common/encryption/encryption_manager_factory.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/base/base_template.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/base/error.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/base/header.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/base/logo_header.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/components/pie_chart.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/widgets/widget_resize_snippet.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/templates/widgets/widget_template.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/types.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/component_registry.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/components/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/components/pie_chart.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/template_filters.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/template_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/views/view_parser.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/webhooks/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/webhooks/models.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/webhooks/routing.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/test.png +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/test.txt +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/datapath_parse.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/manifests/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/manifests/test_processors.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_assets/converted_app/actions.py.txt +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_convert_cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_deserializers.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_init_cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_manifests_cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_package_cli.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_serializers.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/cli/test_utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/code_renderers/test_action_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/conftest.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/example_asset.json +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/logo.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/logo_dark.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/pyproject.toml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/actions/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/actions/async_action.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/actions/generate_category.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/actions/reverse_string.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/src/ignoreme.txt +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/templates/reverse_string.html +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app/uv.lock +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/app.json +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/logo.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/logo_dark.svg +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/pyproject.toml +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/src/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/src/app.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/example_app_with_webhook/uv.lock +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/interfaces/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/interfaces/test_artifact_interface.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/interfaces/test_container_interface.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/interfaces/test_vault_interface.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/test_adapters.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/test_datatypes.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/test_dependencies.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/meta/test_webhooks.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/mocks/__init__.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/mocks/dynamic_mocks.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/mocks/importable_action.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/stubs.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_action_results.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_actions_manager.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app_action_params.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app_action_results.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app_client.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_app_runner.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_asset.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_assets/splunk-sdk-2.1.0.tar.gz +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_async_integration.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_async_utils.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_code_renderers.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_compat.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_container.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_custom_views.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_encryption.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_logging.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_make_request_action.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_on_poll.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_params.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_template_filters.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_template_renderer.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_test_connectivity.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/test_view_parser.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/webhooks/test_models.py +0 -0
- {splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/tests/webhooks/test_routing.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: splunk-soar-sdk
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.1.1
|
|
4
4
|
Summary: The official framework for developing and testing Splunk SOAR Apps
|
|
5
5
|
Project-URL: Homepage, https://github.com/phantomcyber/splunk-soar-sdk
|
|
6
6
|
Project-URL: Documentation, https://github.com/phantomcyber/splunk-soar-sdk
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
## [2.1.1](https://github.com/phantomcyber/splunk-soar-sdk/compare/2.1.0...2.1.1) (2025-09-30)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* list output fixes ([f1d9b89](https://github.com/phantomcyber/splunk-soar-sdk/commit/f1d9b8998cbed7a82e83b3813b7fa0b61de13180))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## [2.1.1](https://github.com/phantomcyber/splunk-soar-sdk/compare/2.1.0...2.1.1) (2025-09-30)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* list output fixes ([f1d9b89](https://github.com/phantomcyber/splunk-soar-sdk/commit/f1d9b8998cbed7a82e83b3813b7fa0b61de13180))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
2.1.1
|
|
@@ -241,6 +241,7 @@ class App:
|
|
|
241
241
|
view_template: Optional[str] = None,
|
|
242
242
|
versions: str = "EQ(*)",
|
|
243
243
|
summary_type: Optional[type[ActionOutput]] = None,
|
|
244
|
+
enable_concurrency_lock: bool = False,
|
|
244
245
|
) -> Action:
|
|
245
246
|
"""Dynamically register an action function defined in another module.
|
|
246
247
|
|
|
@@ -301,6 +302,7 @@ class App:
|
|
|
301
302
|
versions: Version constraint string for when this action is available.
|
|
302
303
|
Defaults to "EQ(*)" (all versions).
|
|
303
304
|
summary_type: Pydantic model class for structuring action summary output.
|
|
305
|
+
enable_concurrency_lock: Whether to enable a concurrency lock for this action. Defaults to False.
|
|
304
306
|
|
|
305
307
|
Returns:
|
|
306
308
|
The registered Action instance with all metadata and handlers configured.
|
|
@@ -356,6 +358,7 @@ class App:
|
|
|
356
358
|
view_handler=view_handler,
|
|
357
359
|
versions=versions,
|
|
358
360
|
summary_type=summary_type,
|
|
361
|
+
enable_concurrency_lock=enable_concurrency_lock,
|
|
359
362
|
)(action)
|
|
360
363
|
|
|
361
364
|
def _resolve_function_import(self, action_path: str) -> Callable:
|
|
@@ -421,6 +424,7 @@ class App:
|
|
|
421
424
|
view_handler: Optional[Callable] = None,
|
|
422
425
|
versions: str = "EQ(*)",
|
|
423
426
|
summary_type: Optional[type[ActionOutput]] = None,
|
|
427
|
+
enable_concurrency_lock: bool = False,
|
|
424
428
|
) -> ActionDecorator:
|
|
425
429
|
"""Decorator for registering an action function.
|
|
426
430
|
|
|
@@ -439,6 +443,7 @@ class App:
|
|
|
439
443
|
view_handler=view_handler,
|
|
440
444
|
versions=versions,
|
|
441
445
|
summary_type=summary_type,
|
|
446
|
+
enable_concurrency_lock=enable_concurrency_lock,
|
|
442
447
|
)
|
|
443
448
|
|
|
444
449
|
def test_connectivity(self) -> ConnectivityTestDecorator:
|
|
@@ -642,9 +647,17 @@ class App:
|
|
|
642
647
|
statuses = []
|
|
643
648
|
for item in result:
|
|
644
649
|
statuses.append(
|
|
645
|
-
App._adapt_action_result(
|
|
650
|
+
App._adapt_action_result(
|
|
651
|
+
item, actions_manager, action_params, message, summary
|
|
652
|
+
)
|
|
653
|
+
)
|
|
654
|
+
# Handle empty list/iterator case
|
|
655
|
+
if not statuses:
|
|
656
|
+
result = ActionOutput(
|
|
657
|
+
status=True, message=message or "Action completed successfully"
|
|
646
658
|
)
|
|
647
|
-
|
|
659
|
+
else:
|
|
660
|
+
return all(statuses)
|
|
648
661
|
|
|
649
662
|
if isinstance(result, ActionOutput):
|
|
650
663
|
output_dict = result.dict(by_alias=True)
|
|
@@ -42,6 +42,7 @@ class ActionDecorator:
|
|
|
42
42
|
view_handler: Optional[Callable] = None,
|
|
43
43
|
versions: str = "EQ(*)",
|
|
44
44
|
summary_type: Optional[type[ActionOutput]] = None,
|
|
45
|
+
enable_concurrency_lock: bool = False,
|
|
45
46
|
) -> None:
|
|
46
47
|
self.app = app
|
|
47
48
|
self.name = name
|
|
@@ -55,6 +56,7 @@ class ActionDecorator:
|
|
|
55
56
|
self.view_handler = view_handler
|
|
56
57
|
self.versions = versions
|
|
57
58
|
self.summary_type = summary_type
|
|
59
|
+
self.enable_concurrency_lock = enable_concurrency_lock
|
|
58
60
|
|
|
59
61
|
def __call__(self, function: Callable) -> Action:
|
|
60
62
|
"""Decorator for the action handling function.
|
|
@@ -152,6 +154,7 @@ class ActionDecorator:
|
|
|
152
154
|
versions=self.versions,
|
|
153
155
|
view_handler=self.view_handler,
|
|
154
156
|
summary_type=self.summary_type,
|
|
157
|
+
enable_concurrency_lock=self.enable_concurrency_lock,
|
|
155
158
|
)
|
|
156
159
|
|
|
157
160
|
self.app.actions_manager.set_action(action_identifier, inner)
|
|
@@ -22,6 +22,7 @@ class ActionMeta(BaseModel):
|
|
|
22
22
|
output: Type[ActionOutput] = Field(default=ActionOutput) # noqa: UP006
|
|
23
23
|
view_handler: Optional[Callable] = None
|
|
24
24
|
summary_type: Optional[Type[ActionOutput]] = Field(default=None, exclude=True) # noqa: UP006
|
|
25
|
+
enable_concurrency_lock: bool = False
|
|
25
26
|
|
|
26
27
|
def dict(self, *args: Any, **kwargs: Any) -> dict[str, Any]: # noqa: ANN401
|
|
27
28
|
"""Serializes the action metadata to a dictionary."""
|
|
@@ -52,4 +53,8 @@ class ActionMeta(BaseModel):
|
|
|
52
53
|
# Remove view_handler from the output since in render
|
|
53
54
|
data.pop("view_handler", None)
|
|
54
55
|
|
|
56
|
+
if self.enable_concurrency_lock:
|
|
57
|
+
data["lock"] = {"enabled": True}
|
|
58
|
+
data.pop("enable_concurrency_lock", None)
|
|
59
|
+
|
|
55
60
|
return data
|
|
@@ -99,6 +99,82 @@
|
|
|
99
99
|
}
|
|
100
100
|
]
|
|
101
101
|
},
|
|
102
|
+
{
|
|
103
|
+
"action": "test summary with list output",
|
|
104
|
+
"description": "test summary with list output",
|
|
105
|
+
"identifier": "test_summary_with_list_output",
|
|
106
|
+
"output": [
|
|
107
|
+
{
|
|
108
|
+
"data_path": "action_result.status",
|
|
109
|
+
"data_type": "string",
|
|
110
|
+
"example_values": [
|
|
111
|
+
"success",
|
|
112
|
+
"failure"
|
|
113
|
+
]
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"data_path": "action_result.message",
|
|
117
|
+
"data_type": "string"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"data_path": "summary.total_objects",
|
|
121
|
+
"data_type": "numeric",
|
|
122
|
+
"example_values": [
|
|
123
|
+
1
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"data_path": "summary.total_objects_successful",
|
|
128
|
+
"data_type": "numeric",
|
|
129
|
+
"example_values": [
|
|
130
|
+
1
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
],
|
|
134
|
+
"parameters": {},
|
|
135
|
+
"read_only": true,
|
|
136
|
+
"type": "generic",
|
|
137
|
+
"verbose": "",
|
|
138
|
+
"versions": "EQ(*)"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"action": "test empty list output",
|
|
142
|
+
"description": "test empty list output",
|
|
143
|
+
"identifier": "test_empty_list_output",
|
|
144
|
+
"output": [
|
|
145
|
+
{
|
|
146
|
+
"data_path": "action_result.status",
|
|
147
|
+
"data_type": "string",
|
|
148
|
+
"example_values": [
|
|
149
|
+
"success",
|
|
150
|
+
"failure"
|
|
151
|
+
]
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"data_path": "action_result.message",
|
|
155
|
+
"data_type": "string"
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"data_path": "summary.total_objects",
|
|
159
|
+
"data_type": "numeric",
|
|
160
|
+
"example_values": [
|
|
161
|
+
1
|
|
162
|
+
]
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"data_path": "summary.total_objects_successful",
|
|
166
|
+
"data_type": "numeric",
|
|
167
|
+
"example_values": [
|
|
168
|
+
1
|
|
169
|
+
]
|
|
170
|
+
}
|
|
171
|
+
],
|
|
172
|
+
"parameters": {},
|
|
173
|
+
"read_only": true,
|
|
174
|
+
"type": "generic",
|
|
175
|
+
"verbose": "",
|
|
176
|
+
"versions": "EQ(*)"
|
|
177
|
+
},
|
|
102
178
|
{
|
|
103
179
|
"action": "reverse string",
|
|
104
180
|
"identifier": "reverse_string",
|
|
@@ -53,6 +53,25 @@ def test_connectivity(soar: SOARClient, asset: Asset) -> None:
|
|
|
53
53
|
logger.progress("this is a progress message")
|
|
54
54
|
|
|
55
55
|
|
|
56
|
+
class ActionOutputSummary(ActionOutput):
|
|
57
|
+
is_success: bool
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
@app.action()
|
|
61
|
+
def test_summary_with_list_output(
|
|
62
|
+
params: Params, asset: Asset, soar: SOARClient
|
|
63
|
+
) -> list[ActionOutput]:
|
|
64
|
+
soar.set_summary(ActionOutputSummary(is_success=True))
|
|
65
|
+
return [ActionOutput(), ActionOutput()]
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
@app.action()
|
|
69
|
+
def test_empty_list_output(
|
|
70
|
+
params: Params, asset: Asset, soar: SOARClient
|
|
71
|
+
) -> list[ActionOutput]:
|
|
72
|
+
return []
|
|
73
|
+
|
|
74
|
+
|
|
56
75
|
app.register_action(
|
|
57
76
|
"actions.reverse_string:reverse_string",
|
|
58
77
|
action_type="investigate",
|
|
@@ -70,3 +70,24 @@ def test_action_meta_dict_without_view_handler():
|
|
|
70
70
|
|
|
71
71
|
assert "render" not in result
|
|
72
72
|
assert "view_handler" not in result
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def test_action_meta_dict_with_concurrency_lock():
|
|
76
|
+
"""Test ActionMeta.dict() with enable_concurrency_lock set to True."""
|
|
77
|
+
|
|
78
|
+
meta = ActionMeta(
|
|
79
|
+
action="test_action",
|
|
80
|
+
identifier="test_identifier",
|
|
81
|
+
description="Test description",
|
|
82
|
+
verbose="Test verbose",
|
|
83
|
+
type="generic",
|
|
84
|
+
read_only=True,
|
|
85
|
+
versions="EQ(*)",
|
|
86
|
+
enable_concurrency_lock=True,
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
result = meta.dict()
|
|
90
|
+
|
|
91
|
+
assert "lock" in result
|
|
92
|
+
assert result["lock"]["enabled"] is True
|
|
93
|
+
assert "enable_concurrency_lock" not in result
|
|
@@ -506,3 +506,26 @@ def test_register_action_with_view_handler_module_not_in_sys_modules(simple_app:
|
|
|
506
506
|
view_handler=fake_module_view_handler,
|
|
507
507
|
view_template="sample_template.html",
|
|
508
508
|
)
|
|
509
|
+
|
|
510
|
+
|
|
511
|
+
def test_empty_list_output(simple_app: App, mocker: pytest_mock.MockerFixture):
|
|
512
|
+
@simple_app.action()
|
|
513
|
+
def action_example(params: Params, soar: SOARClient) -> list[ActionOutput]:
|
|
514
|
+
return []
|
|
515
|
+
|
|
516
|
+
add_result_mock = mocker.patch.object(simple_app.actions_manager, "add_result")
|
|
517
|
+
result = action_example(Params(), soar=simple_app.soar_client)
|
|
518
|
+
assert result is True
|
|
519
|
+
assert add_result_mock.call_count == 1
|
|
520
|
+
|
|
521
|
+
|
|
522
|
+
def test_list_output_with_summary(simple_app: App, mocker: pytest_mock.MockerFixture):
|
|
523
|
+
@simple_app.action()
|
|
524
|
+
def action_example(params: Params, soar: SOARClient) -> list[ActionOutput]:
|
|
525
|
+
soar.set_summary(ActionOutput())
|
|
526
|
+
return [ActionOutput()]
|
|
527
|
+
|
|
528
|
+
set_summary_mock = mocker.patch.object(simple_app.soar_client, "set_summary")
|
|
529
|
+
result = action_example(Params(), soar=simple_app.soar_client)
|
|
530
|
+
assert result is True
|
|
531
|
+
assert set_summary_mock.call_count == 1
|
|
@@ -1291,7 +1291,7 @@ wheels = [
|
|
|
1291
1291
|
|
|
1292
1292
|
[[package]]
|
|
1293
1293
|
name = "splunk-soar-sdk"
|
|
1294
|
-
version = "2.
|
|
1294
|
+
version = "2.1.1"
|
|
1295
1295
|
source = { editable = "." }
|
|
1296
1296
|
dependencies = [
|
|
1297
1297
|
{ name = "beautifulsoup4", marker = "(python_full_version < '3.10' and platform_machine == 'arm64' and sys_platform == 'darwin') or (python_full_version >= '3.13' and platform_machine == 'arm64' and sys_platform == 'darwin') or (python_full_version < '3.10' and platform_machine == 'x86_64' and sys_platform == 'darwin') or (python_full_version >= '3.13' and platform_machine == 'x86_64' and sys_platform == 'darwin') or (python_full_version < '3.10' and platform_machine == 'aarch64' and sys_platform == 'linux') or (python_full_version >= '3.13' and platform_machine == 'aarch64' and sys_platform == 'linux') or (python_full_version < '3.10' and platform_machine == 'x86_64' and sys_platform == 'linux') or (python_full_version >= '3.13' and platform_machine == 'x86_64' and sys_platform == 'linux')" },
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
## [2.0.1](https://github.com/phantomcyber/splunk-soar-sdk/compare/2.0.0...2.0.1) (2025-09-25)
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
### Bug Fixes
|
|
5
|
-
|
|
6
|
-
* handle lists and optionals of nested types properly ([98a84b5](https://github.com/phantomcyber/splunk-soar-sdk/commit/98a84b52fa79aaf08b4ce7493abef76df94cfb37))
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
## [2.0.1](https://github.com/phantomcyber/splunk-soar-sdk/compare/2.0.0...2.0.1) (2025-09-25)
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
### Bug Fixes
|
|
16
|
-
|
|
17
|
-
* handle lists and optionals of nested types properly ([98a84b5](https://github.com/phantomcyber/splunk-soar-sdk/commit/98a84b52fa79aaf08b4ce7493abef76df94cfb37))
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
2.0.1
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/app_structure/pre-commit-config.yaml.rst
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
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/docs/getting_started/testing_and_building.rst
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
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/.gitignore
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/logo.svg
RENAMED
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/logo_dark.svg
RENAMED
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/src/__init__.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/app_templates/basic_app/uv.lock
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
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/action_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/asset_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/code_renderers/toml_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/decorators/test_connectivity.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
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/base_connector.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/connector_result.py
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-2.0.1 → splunk_soar_sdk-2.1.1}/src/soar_sdk/shims/phantom/encryption_helper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|