airbyte-internal-ops 0.1.5__tar.gz → 0.1.7__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.
- airbyte_internal_ops-0.1.7/CONTRIBUTING.md +110 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/PKG-INFO +70 -1
- airbyte_internal_ops-0.1.7/README.md +127 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/pyproject.toml +2 -1
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/__init__.py +44 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pipeline.py +2 -8
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/airbyte_repo/list_connectors.py +132 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/cli/registry.py +181 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/connection_config_retriever/__init__.py +26 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/connection_config_retriever}/audit_logging.py +5 -6
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/connection_config_retriever}/retrieval.py +8 -22
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/connection_config_retriever}/secrets_resolution.py +8 -42
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/constants.py +50 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/connection_secret_retriever.py +17 -6
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/github_repo_ops.py +10 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/mcp/prod_db_queries.py +357 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/server.py +2 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/prod_db_access/__init__.py +34 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/prod_db_access/db_engine.py +126 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/prod_db_access/queries.py +272 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/prod_db_access/sql.py +353 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/registry/__init__.py +34 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/registry/models.py +63 -0
- airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/registry/publish.py +368 -0
- airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/__init__.py +0 -0
- airbyte_internal_ops-0.1.7/tests/test_cli_registry.py +303 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/uv.lock +1651 -1657
- airbyte_internal_ops-0.1.5/CONTRIBUTING.md +0 -48
- airbyte_internal_ops-0.1.5/README.md +0 -59
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/__init__.py +0 -16
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/publish/commands.py +0 -242
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/publish/context.py +0 -175
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/publish/pipeline.py +0 -1056
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry/publish/commands.py +0 -127
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/python_registry.py +0 -238
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/python_registry_publish.py +0 -119
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/cli/registry.py +0 -92
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/constants.py +0 -15
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever/__init__.py +0 -35
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever/consts.py +0 -33
- airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/live_tests/_connection_retriever/db_access.py +0 -82
- airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_steps/__init__.py +0 -3
- airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_tests/__init__.py +0 -3
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.env.template +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/copilot-instructions.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/dependabot.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/pr-welcome-message.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/release-drafter.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/autofix-command.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/connector-live-test.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/connector-regression-test.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/format-check.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/lint-check.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/lock-command.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/pdoc_preview.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/pdoc_publish.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/poe-command.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/pr-welcome.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/publish.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/pytest-fast.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/pytest-matrix.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/release-drafter.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/slash-command-dispatch.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.github/workflows/test-connection-retriever.yml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.gitignore +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/.mcp.json.template +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/bin/test_mcp_tool.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/conftest.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/docs/.gitignore +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/docs/generate.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/docs/templates/custom.css +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/docs/templates/theme.css +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/poe_tasks.toml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/pyrefly.toml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/pytest.ini +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/ruff.toml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_annotations.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/dbml_assembler.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/erd_service.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_erd_generator/relationships.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/cli.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/hacks.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/insights.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/pylint.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/pylint_plugins/cdk_deprecation_checkers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/result_backends.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_insights/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/.gitignore +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/backends/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/backends/base_backend.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/backends/duckdb_backend.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/backends/file_backend.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/connection_objects_retrieval.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/connector_runner.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/errors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/evaluation_modes.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/hacks.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/json_schema_helper.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/mitm_addons.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/proxy.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/secret_access.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/segment_tracking.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/commons/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/conftest.py.disabled +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/consts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/poetry.lock +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/pytest.ini +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/regression_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/regression_tests/test_check.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/regression_tests/test_discover.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/regression_tests/test_read.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/regression_tests/test_spec.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/report.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/stash_keys.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/templates/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/templates/private_details.html.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/templates/report.html.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/validation_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/validation_tests/test_check.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/validation_tests/test_discover.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/validation_tests/test_read.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_live_tests/validation_tests/test_spec.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_ops/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/connector/hooks.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/connector/normalization.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/pipx.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/python/poetry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/remote_storage.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/secrets.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/system/common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/actions/system/docker.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/git.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/internal_tools.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/java.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger/containers/python.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/cache_keys.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/cli.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/cdk_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/command.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/dagger_fs.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/format.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/modifed.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/connectors/yaml.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/argument_parsing.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/execution/run_steps.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/gcs.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/git.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/github.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/pip.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/sentry_utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/slack.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/DELETEME-dagger-helpers/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/build_customization.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/java_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/normalization.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/build_image/steps/python_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/consts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/context.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/generate_erd/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/list/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/list/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/migrate_to_inline_schemas/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/publish → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/reports.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/pull_request → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/context.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/java_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/python_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps/templates/test_report.html.j2 +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/test/steps → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/steps.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date/templates/up_to_date_pr_body.md.j2 +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/up_to_date → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/connectors/upgrade_cdk → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/metadata → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry/commands.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/base_image.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/docker.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/gradle.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/no_op.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/poetry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps/pull_request.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/test/pipeline.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/poetry/publish → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/update}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/update/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/airbyte_ci.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/auto_update.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/click_decorators.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/confirm_prompt.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/dagger_pipeline_command.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/dagger_run.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/ensure_repo_root.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/lazy_group.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/secrets.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/cli/telemetry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/consts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/hacks.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/steps → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/artifacts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/ci_requirements.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/airbyte_ci/update → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/click_pipeline_context.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts/pipeline_context.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/reports.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/secrets.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/singleton.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/steps.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/assets.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/documentation.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/templates/documentation_headers_check_description.md.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/templates/section_content_description.md.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/documentation/templates/template.md.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/metadata.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/packaging.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/security.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/checks/version.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/cli.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/consts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/templates/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/templates/qa_checks.md.j2 +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_qa/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/bin/bundle-schemas.js +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/bin/generate-metadata-models.sh +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ActorDefinitionResourceRequirements.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/AirbyteInternal.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/AllowedHosts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorBreakingChanges.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorBuildOptions.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorIPCOptions.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorMetadataDefinitionV0.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorMetadataDefinitionV0.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorMetrics.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorPackageInfo.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorRegistryDestinationDefinition.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorRegistryReleases.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorRegistrySourceDefinition.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorRegistryV0.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorReleases.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ConnectorTestSuiteOptions.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/GeneratedFields.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/GitInfo.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/JobType.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/NormalizationDestinationDefinitionConfig.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/RegistryOverrides.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ReleaseStage.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/RemoteRegistries.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/ResourceRequirements.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/RolloutConfiguration.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/Secret.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/SecretStore.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/SourceFileInfo.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/SuggestedStreams.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/SupportLevel.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/TestConnections.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/generated/airbyte-connector-metadata-schema.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ActorDefinitionResourceRequirements.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/AirbyteInternal.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/AllowedHosts.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorBreakingChanges.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorBuildOptions.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorIPCOptions.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorMetadataDefinitionV0.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorMetrics.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorPackageInfo.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorRegistryDestinationDefinition.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorRegistryReleases.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorRegistrySourceDefinition.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorRegistryV0.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorReleases.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ConnectorTestSuiteOptions.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/GeneratedFields.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/GitInfo.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/JobType.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/NormalizationDestinationDefinitionConfig.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/RegistryOverrides.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ReleaseStage.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/RemoteRegistries.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/ResourceRequirements.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/RolloutConfiguration.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/Secret.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/SecretStore.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/SourceFileInfo.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/SuggestedStreams.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/SupportLevel.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/models/TestConnections.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/package-lock.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/package.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_models/transform.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/commands.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/constants.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/docker_hub.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/docs/external_documentation_urls.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/gcs_upload.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/files.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/gcs.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/object_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/helpers/slack.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/.env.template +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/README.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/dagster_cloud.yaml +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/connector_metrics.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/github.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/metadata.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry_entry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/registry_report.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/slack.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/assets/specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/config.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/fetcher/connector_cdk_version.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/hacks.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/jobs/registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/logging/publish_connector_lifecycle.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/logging/sentry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/models/ci_report.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/models/metadata.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/ops/slack.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/file_managers/local_file_manager.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/gcp.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/github.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/resources/local.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/gcs.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/github.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/sensors/registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/base.html +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/connector_registry_locations.html +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/templates/render.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/blob_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/dagster_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/orchestrator/utils/object_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/poetry.lock +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/conftest.py.disabled +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/cloud_registry.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/fixtures/oss_registry.json +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_connector_metrics.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_dagster_helpers.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_debug.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_partition_jobs.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests/test_specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry_entry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/registry_report.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/sentry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/spec_cache.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/specs_secrets_mask.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/stale_metadata_report.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/base.html +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/connector_registry_locations.html +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/templates/render.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/validators/metadata_validator.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/airbyte_repo/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/airbyte_repo/bump_version.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/airbyte_repo/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/_base.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/_shared.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/app.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/cloud.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/gh.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cli/repo.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cloud_admin/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cloud_admin/api_client.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cloud_admin/auth.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cloud_admin/connection_config.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/cloud_admin/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/ci_output.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/commons/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/config.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/connection_fetcher.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/connector_runner.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/evaluation_modes.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/http_metrics.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/message_cache/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/message_cache/duckdb_cache.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/models.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/obfuscation.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/regression/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/regression/comparators.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/schema_generation.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/validation/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/validation/catalog_validators.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/live_tests/validation/record_validators.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/_guidance.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/_mcp_utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/cloud_connector_versions.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/connector_analysis.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/connector_qa.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/github.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/live_tests.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/metadata.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/prerelease.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/prompts.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/registry.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/src/airbyte_ops_mcp/mcp/server_info.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp → airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/prod_db_access}/py.typed +0 -0
- /airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/connector_live_tests/backends/__init__.py → /airbyte_internal_ops-0.1.7/src/airbyte_ops_mcp/py.typed +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_erd_generator/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_erd_generator/builder.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_erd_generator/test_dbml_assembler.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_erd_generator/test_relationships.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_live_tests/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/connector_qa → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/connector_live_tests/backends}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_live_tests/backends/test_file_backend.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_live_tests/test_get_connection_objects_retrieval.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_live_tests/test_json_schema_helper.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/conftest.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/bad-header.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/bad-title.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/extra-header.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/missing-entry.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_migration_files/out-of-order.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_ops/test_utils.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/connector_qa/integration_tests → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/connector_qa}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/conftest.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/connector_qa/unit_tests → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/connector_qa/integration_tests}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/integration_tests/test_documentation.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/connector_qa/unit_tests}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/correct.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/incorrect_not_all_structure.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/data/docs/invalid_links.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_assets.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_documentation.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_metadata.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_packaging.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_security.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_checks/test_version.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/connector_qa/unit_tests/test_models.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/connector_pipelines/models/contexts → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/conftest.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_actions/test_environments.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_bases.py +0 -0
- {airbyte_internal_ops-0.1.5/src/airbyte_ops_mcp/_legacy/airbyte_ci/metadata_service/orchestrator/tests → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_build_image}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_build_image/dummy_build_customization.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_manifest_only_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_python_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_build_image/test_steps/test_common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/changelog_header_no_newline.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/changelog_header_no_separator.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/no_changelog_header.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/initial_files/valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/changelog_header_no_newline.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/changelog_header_no_separator.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_version_date_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_version_date_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_versions_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/dupicate_versions_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/duplicate_entry_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/duplicate_entry_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/existing_entries_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/existing_entries_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/no_changelog_header.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/single_insert_valid_changelog_at_end.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog/result_files/single_insert_valid_changelog_in_middle.md +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_changelog.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_cli}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_cli/test_click_decorators.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_build_image → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_commands}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_cli → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_commands/test_groups}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_commands/test_groups/test_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_commands → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_dagger}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_commands/test_groups → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_dagger → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/test_python}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/test_python/test_common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_gradle.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_helpers}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/test_argument_parsing.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_execution/test_run_steps.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_pip.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_helpers/test_utils.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_dagger/test_actions/test_python → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_models}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_models/test_click_pipeline_context.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_models/test_singleton.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_poetry/test_poetry_publish.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_publish.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_helpers → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_steps}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_steps/test_simple_docker_step.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_steps/test_version_check.py +0 -0
- {airbyte_internal_ops-0.1.5/tests/legacy/airbyte_ci/pipelines/test_models → airbyte_internal_ops-0.1.7/tests/legacy/airbyte_ci/pipelines/test_tests}/__init__.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_tests/test_common.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_tests/test_python_connectors.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/test_upgrade_java_cdk.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/legacy/airbyte_ci/pipelines/utils.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/test_airbyte_admin_mcp.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/test_bump_version.py +0 -0
- {airbyte_internal_ops-0.1.5 → airbyte_internal_ops-0.1.7}/tests/test_list_connectors.py +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
First clone the repo, then use something like the following MCP config.
|
|
4
|
+
|
|
5
|
+
```json
|
|
6
|
+
{
|
|
7
|
+
"mcpServers": {
|
|
8
|
+
"airbyte-ops-mcp": {
|
|
9
|
+
"type": "stdio",
|
|
10
|
+
"command": "uv",
|
|
11
|
+
"args": [
|
|
12
|
+
"run",
|
|
13
|
+
"--project=/Users/{my-user-id}/repos/airbyte-ops-mcp/",
|
|
14
|
+
"airbyte-ops-mcp"
|
|
15
|
+
],
|
|
16
|
+
"env": {
|
|
17
|
+
"AIRBYTE_MCP_ENV_FILE": "/path/to/airbyte-ops-mcp/.env"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"airbyte-coral-mcp": {
|
|
21
|
+
"type": "stdio",
|
|
22
|
+
"command": "uvx",
|
|
23
|
+
"args": [
|
|
24
|
+
"--python=3.11",
|
|
25
|
+
"--from=airbyte@latest",
|
|
26
|
+
"airbyte-mcp"
|
|
27
|
+
],
|
|
28
|
+
"env": {
|
|
29
|
+
"AIRBYTE_MCP_ENV_FILE": "/Users/{user-id}/.mcp/airbyte_mcp.env"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Internal Secrets for Live Tests
|
|
37
|
+
|
|
38
|
+
The live tests feature can retrieve unmasked connection secrets from Airbyte Cloud's internal database. This requires:
|
|
39
|
+
|
|
40
|
+
- **GCP_PROD_DB_ACCESS_CREDENTIALS** - Access to prod Cloud SQL and Google Secret Manager for DB connection details
|
|
41
|
+
|
|
42
|
+
To test locally:
|
|
43
|
+
|
|
44
|
+
1. Set up GCP Application Default Credentials: `gcloud auth application-default login`
|
|
45
|
+
2. Ensure you have access to the `prod-ab-cloud-proj` project
|
|
46
|
+
3. Connect to Tailscale (required for private network access)
|
|
47
|
+
|
|
48
|
+
In CI, these secrets are available at the org level and a Cloud SQL Auth Proxy handles connectivity.
|
|
49
|
+
|
|
50
|
+
## Authorizing Service Accounts
|
|
51
|
+
|
|
52
|
+
To grant a service account access to the prod database query tools, you need to grant permissions on the `CONNECTION_RETRIEVER_PG_CONNECTION_DETAILS` secret in Google Secret Manager (see `CONNECTION_RETRIEVER_PG_CONNECTION_DETAILS_SECRET_ID` in `src/airbyte_ops_mcp/constants.py`). The service account needs both `secretAccessor` (to read the secret value) and `viewer` (to list secret versions) roles.
|
|
53
|
+
|
|
54
|
+
### Required Permissions
|
|
55
|
+
|
|
56
|
+
#### Secret Manager Permissions
|
|
57
|
+
|
|
58
|
+
Grant both roles scoped to the specific secret:
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Grant secretAccessor role (for reading secret values)
|
|
62
|
+
gcloud secrets add-iam-policy-binding projects/587336813068/secrets/CONNECTION_RETRIEVER_PG_CONNECTION_DETAILS \
|
|
63
|
+
--member="serviceAccount:YOUR_SERVICE_ACCOUNT@prod-ab-cloud-proj.iam.gserviceaccount.com" \
|
|
64
|
+
--role="roles/secretmanager.secretAccessor"
|
|
65
|
+
|
|
66
|
+
# Grant viewer role (for listing secret versions)
|
|
67
|
+
gcloud secrets add-iam-policy-binding projects/587336813068/secrets/CONNECTION_RETRIEVER_PG_CONNECTION_DETAILS \
|
|
68
|
+
--member="serviceAccount:YOUR_SERVICE_ACCOUNT@prod-ab-cloud-proj.iam.gserviceaccount.com" \
|
|
69
|
+
--role="roles/secretmanager.viewer"
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
#### Cloud SQL Permissions
|
|
73
|
+
|
|
74
|
+
Grant Cloud SQL access at the project level:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# Grant Cloud SQL Client role (required for connecting via Cloud SQL Proxy or Python Connector)
|
|
78
|
+
gcloud projects add-iam-policy-binding prod-ab-cloud-proj \
|
|
79
|
+
--member="serviceAccount:YOUR_SERVICE_ACCOUNT@prod-ab-cloud-proj.iam.gserviceaccount.com" \
|
|
80
|
+
--role="roles/cloudsql.client"
|
|
81
|
+
|
|
82
|
+
# Grant Cloud SQL Instance User role (may be required depending on org policies)
|
|
83
|
+
gcloud projects add-iam-policy-binding prod-ab-cloud-proj \
|
|
84
|
+
--member="serviceAccount:YOUR_SERVICE_ACCOUNT@prod-ab-cloud-proj.iam.gserviceaccount.com" \
|
|
85
|
+
--role="roles/cloudsql.instanceUser"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Note: `roles/cloudsql.client` is required for the Cloud SQL Python Connector and Cloud SQL Auth Proxy to establish connections. `roles/cloudsql.instanceUser` is typically needed for IAM database authentication; it may be redundant when using username/password authentication (as this codebase does), but some environments may still require it.
|
|
89
|
+
|
|
90
|
+
### Verifying Permissions
|
|
91
|
+
|
|
92
|
+
To check existing permissions on the secret:
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
gcloud secrets get-iam-policy projects/587336813068/secrets/CONNECTION_RETRIEVER_PG_CONNECTION_DETAILS
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Using Cloud SQL Proxy
|
|
99
|
+
|
|
100
|
+
When running outside of the VPC (without Tailscale), use the Cloud SQL Auth Proxy:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# Start the proxy (use a non-conflicting port if 5432 is in use)
|
|
104
|
+
cloud-sql-proxy prod-ab-cloud-proj:us-west3:prod-pgsql-replica --port=5433
|
|
105
|
+
|
|
106
|
+
# Set environment variables for your application
|
|
107
|
+
export USE_CLOUD_SQL_PROXY=1
|
|
108
|
+
export DB_PORT=5433
|
|
109
|
+
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account-key.json
|
|
110
|
+
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: airbyte-internal-ops
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.7
|
|
4
4
|
Summary: MCP and API interfaces that let the agents do the admin work
|
|
5
5
|
Author-email: Aaron Steers <aj@airbyte.io>
|
|
6
6
|
Keywords: admin,airbyte,api,mcp
|
|
@@ -24,6 +24,7 @@ Requires-Dist: fastmcp<3.0,>=2.12.1
|
|
|
24
24
|
Requires-Dist: gitpython<4.0,>=3.1.29
|
|
25
25
|
Requires-Dist: google-cloud-logging<4.0,>=3.9.0
|
|
26
26
|
Requires-Dist: google-cloud-secret-manager<3.0,>=2.18.0
|
|
27
|
+
Requires-Dist: google-cloud-storage<3.0,>=2.8.0
|
|
27
28
|
Requires-Dist: jinja2<4.0,>=3.1.2
|
|
28
29
|
Requires-Dist: pydantic>=2.0.0
|
|
29
30
|
Requires-Dist: python-dotenv<2.0,>=1.0.0
|
|
@@ -95,3 +96,71 @@ AIRBYTE_CLOUD_TEST_WORKSPACE_ID="..."
|
|
|
95
96
|
Once configured, use the `test_my_tools` prompt by typing "/test" into your agent and selecting the auto-complete option for the `test_my_tools` prompt.
|
|
96
97
|
|
|
97
98
|
This prompt will step through all the tools, demoing their capabilities.
|
|
99
|
+
|
|
100
|
+
## Usage Examples
|
|
101
|
+
|
|
102
|
+
### Testing MCP Tools Locally
|
|
103
|
+
|
|
104
|
+
Use the `mcp-tool-test` poe task to test tools directly:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
# List connectors in a repo
|
|
108
|
+
poe mcp-tool-test list_connectors_in_repo '{"repo_path": "/path/to/airbyte"}'
|
|
109
|
+
|
|
110
|
+
# Get cloud connector version
|
|
111
|
+
poe mcp-tool-test get_cloud_connector_version '{"workspace_id": "...", "actor_id": "..."}'
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Using Cloud SQL Proxy for Database Tools
|
|
115
|
+
|
|
116
|
+
Some tools (like `list_org_connections_by_source_type_db`) require access to the Airbyte Cloud Prod DB Replica. To test these locally:
|
|
117
|
+
|
|
118
|
+
1. Authenticate with GCP:
|
|
119
|
+
```bash
|
|
120
|
+
gcloud auth login
|
|
121
|
+
gcloud auth application-default login
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
2. Start Cloud SQL Proxy:
|
|
125
|
+
```bash
|
|
126
|
+
cloud-sql-proxy prod-ab-cloud-proj:us-west3:prod-pgsql-replica --port=15432
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
3. Run the tool with proxy environment variables:
|
|
130
|
+
```bash
|
|
131
|
+
USE_CLOUD_SQL_PROXY=1 DB_PORT=15432 poe mcp-tool-test list_org_connections_by_source_type_db \
|
|
132
|
+
'{"organization_id": "...", "connector_canonical_name": "source-youtube-analytics"}'
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Instructions for Agents
|
|
136
|
+
|
|
137
|
+
When working with a user to set up and use this MCP server, agents should follow these steps for authentication:
|
|
138
|
+
|
|
139
|
+
### GCP Authentication Flow
|
|
140
|
+
|
|
141
|
+
For tools that require GCP access (database queries, secret manager, etc.), guide the user through authentication:
|
|
142
|
+
|
|
143
|
+
1. **Check if gcloud is installed.** If not, install it:
|
|
144
|
+
```bash
|
|
145
|
+
curl -sSL https://sdk.cloud.google.com | bash -s -- --disable-prompts
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
2. **Run gcloud auth login with `--no-launch-browser`** to get a verification URL:
|
|
149
|
+
```bash
|
|
150
|
+
gcloud auth login --no-launch-browser
|
|
151
|
+
```
|
|
152
|
+
Send the verification URL to the user and ask them to complete sign-in and provide the verification code.
|
|
153
|
+
|
|
154
|
+
3. **Set up Application Default Credentials (ADC)** for library access:
|
|
155
|
+
```bash
|
|
156
|
+
gcloud auth application-default login --no-launch-browser
|
|
157
|
+
```
|
|
158
|
+
Again, send the URL to the user and collect the verification code.
|
|
159
|
+
|
|
160
|
+
4. **For database tools**, start Cloud SQL Proxy on an available port and use the `USE_CLOUD_SQL_PROXY` and `DB_PORT` environment variables.
|
|
161
|
+
|
|
162
|
+
### Airbyte Cloud Authentication
|
|
163
|
+
|
|
164
|
+
For tools that interact with Airbyte Cloud API, ensure the user has configured:
|
|
165
|
+
- `AIRBYTE_CLOUD_CLIENT_ID` and `AIRBYTE_CLOUD_CLIENT_SECRET` in their `.env` file
|
|
166
|
+
- For admin operations: `AIRBYTE_INTERNAL_ADMIN_FLAG=airbyte.io` and `AIRBYTE_INTERNAL_ADMIN_USER`
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# airbyte-ops-mcp
|
|
2
|
+
|
|
3
|
+
MCP and API interfaces that let the agents do the admin work.
|
|
4
|
+
|
|
5
|
+
## Installing Ops MCP in your Client
|
|
6
|
+
|
|
7
|
+
This config example will help you add the MCP server to your client:
|
|
8
|
+
|
|
9
|
+
```json
|
|
10
|
+
{
|
|
11
|
+
"mcpServers": {
|
|
12
|
+
"airbyte-ops-mcp": {
|
|
13
|
+
"type": "stdio",
|
|
14
|
+
"command": "uv",
|
|
15
|
+
"args": [
|
|
16
|
+
"run",
|
|
17
|
+
"--project=/Users/aj.steers/repos/airbyte-ops-mcp/",
|
|
18
|
+
"airbyte-ops-mcp"
|
|
19
|
+
],
|
|
20
|
+
"env": {
|
|
21
|
+
"AIRBYTE_MCP_ENV_FILE": "/Users/{user-id}/.mcp/airbyte_mcp.env"
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
"airbyte-coral-mcp": {
|
|
25
|
+
"type": "stdio",
|
|
26
|
+
"command": "uvx",
|
|
27
|
+
"args": [
|
|
28
|
+
"--python=3.11",
|
|
29
|
+
"--from=airbyte@latest",
|
|
30
|
+
"airbyte-mcp"
|
|
31
|
+
],
|
|
32
|
+
"env": {
|
|
33
|
+
"AIRBYTE_MCP_ENV_FILE": "/Users/{user-id}/.mcp/airbyte_mcp.env"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Your `.env` file should include the following values:
|
|
41
|
+
|
|
42
|
+
```ini
|
|
43
|
+
# Creds for Airbyte Cloud OAuth
|
|
44
|
+
AIRBYTE_CLOUD_CLIENT_ID="..."
|
|
45
|
+
AIRBYTE_CLOUD_CLIENT_SECRET="..."
|
|
46
|
+
|
|
47
|
+
# Required for elevated admin operations
|
|
48
|
+
AIRBYTE_INTERNAL_ADMIN_FLAG=airbyte.io
|
|
49
|
+
AIRBYTE_INTERNAL_ADMIN_USER={my-id}@airbyte.io
|
|
50
|
+
|
|
51
|
+
# Workspace ID for Testing
|
|
52
|
+
AIRBYTE_CLOUD_TEST_WORKSPACE_ID="..."
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Getting Started
|
|
56
|
+
|
|
57
|
+
Once configured, use the `test_my_tools` prompt by typing "/test" into your agent and selecting the auto-complete option for the `test_my_tools` prompt.
|
|
58
|
+
|
|
59
|
+
This prompt will step through all the tools, demoing their capabilities.
|
|
60
|
+
|
|
61
|
+
## Usage Examples
|
|
62
|
+
|
|
63
|
+
### Testing MCP Tools Locally
|
|
64
|
+
|
|
65
|
+
Use the `mcp-tool-test` poe task to test tools directly:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
# List connectors in a repo
|
|
69
|
+
poe mcp-tool-test list_connectors_in_repo '{"repo_path": "/path/to/airbyte"}'
|
|
70
|
+
|
|
71
|
+
# Get cloud connector version
|
|
72
|
+
poe mcp-tool-test get_cloud_connector_version '{"workspace_id": "...", "actor_id": "..."}'
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### Using Cloud SQL Proxy for Database Tools
|
|
76
|
+
|
|
77
|
+
Some tools (like `list_org_connections_by_source_type_db`) require access to the Airbyte Cloud Prod DB Replica. To test these locally:
|
|
78
|
+
|
|
79
|
+
1. Authenticate with GCP:
|
|
80
|
+
```bash
|
|
81
|
+
gcloud auth login
|
|
82
|
+
gcloud auth application-default login
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
2. Start Cloud SQL Proxy:
|
|
86
|
+
```bash
|
|
87
|
+
cloud-sql-proxy prod-ab-cloud-proj:us-west3:prod-pgsql-replica --port=15432
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
3. Run the tool with proxy environment variables:
|
|
91
|
+
```bash
|
|
92
|
+
USE_CLOUD_SQL_PROXY=1 DB_PORT=15432 poe mcp-tool-test list_org_connections_by_source_type_db \
|
|
93
|
+
'{"organization_id": "...", "connector_canonical_name": "source-youtube-analytics"}'
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## Instructions for Agents
|
|
97
|
+
|
|
98
|
+
When working with a user to set up and use this MCP server, agents should follow these steps for authentication:
|
|
99
|
+
|
|
100
|
+
### GCP Authentication Flow
|
|
101
|
+
|
|
102
|
+
For tools that require GCP access (database queries, secret manager, etc.), guide the user through authentication:
|
|
103
|
+
|
|
104
|
+
1. **Check if gcloud is installed.** If not, install it:
|
|
105
|
+
```bash
|
|
106
|
+
curl -sSL https://sdk.cloud.google.com | bash -s -- --disable-prompts
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
2. **Run gcloud auth login with `--no-launch-browser`** to get a verification URL:
|
|
110
|
+
```bash
|
|
111
|
+
gcloud auth login --no-launch-browser
|
|
112
|
+
```
|
|
113
|
+
Send the verification URL to the user and ask them to complete sign-in and provide the verification code.
|
|
114
|
+
|
|
115
|
+
3. **Set up Application Default Credentials (ADC)** for library access:
|
|
116
|
+
```bash
|
|
117
|
+
gcloud auth application-default login --no-launch-browser
|
|
118
|
+
```
|
|
119
|
+
Again, send the URL to the user and collect the verification code.
|
|
120
|
+
|
|
121
|
+
4. **For database tools**, start Cloud SQL Proxy on an available port and use the `USE_CLOUD_SQL_PROXY` and `DB_PORT` environment variables.
|
|
122
|
+
|
|
123
|
+
### Airbyte Cloud Authentication
|
|
124
|
+
|
|
125
|
+
For tools that interact with Airbyte Cloud API, ensure the user has configured:
|
|
126
|
+
- `AIRBYTE_CLOUD_CLIENT_ID` and `AIRBYTE_CLOUD_CLIENT_SECRET` in their `.env` file
|
|
127
|
+
- For admin operations: `AIRBYTE_INTERNAL_ADMIN_FLAG=airbyte.io` and `AIRBYTE_INTERNAL_ADMIN_USER`
|
|
@@ -14,12 +14,14 @@ dependencies = [
|
|
|
14
14
|
"asyncer>=0.0.4,<1.0",
|
|
15
15
|
"click>=8.1.3,<9.0",
|
|
16
16
|
"cloud-sql-python-connector[pg8000]>=1.7.0,<2.0",
|
|
17
|
+
"cyclopts>=4.0.0,<5.0",
|
|
17
18
|
"docker>=6.0,<7.0",
|
|
18
19
|
"dpath>=2.1.5,<3.0",
|
|
19
20
|
"fastmcp>=2.12.1,<3.0",
|
|
20
21
|
"gitpython>=3.1.29,<4.0",
|
|
21
22
|
"google-cloud-logging>=3.9.0,<4.0",
|
|
22
23
|
"google-cloud-secret-manager>=2.18.0,<3.0",
|
|
24
|
+
"google-cloud-storage>=2.8.0,<3.0",
|
|
23
25
|
"jinja2>=3.1.2,<4.0",
|
|
24
26
|
"pydantic>=2.0.0",
|
|
25
27
|
"python-dotenv>=1.0.0,<2.0",
|
|
@@ -30,7 +32,6 @@ dependencies = [
|
|
|
30
32
|
"slack-sdk>=3.36.0,<4.0",
|
|
31
33
|
"sqlalchemy>=2.0.0,<3.0",
|
|
32
34
|
"toml>=0.10.2,<1.0",
|
|
33
|
-
"cyclopts>=4.0.0,<5.0",
|
|
34
35
|
]
|
|
35
36
|
keywords = ["airbyte", "mcp", "admin", "api"]
|
|
36
37
|
classifiers = [
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"""Airbyte Admin MCP - MCP and API interfaces that let the agents do the admin work.
|
|
2
|
+
|
|
3
|
+
.. include:: ../../../README.md
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
from airbyte_ops_mcp import (
|
|
7
|
+
airbyte_repo,
|
|
8
|
+
cli,
|
|
9
|
+
cloud_admin,
|
|
10
|
+
connection_config_retriever,
|
|
11
|
+
constants,
|
|
12
|
+
live_tests,
|
|
13
|
+
mcp,
|
|
14
|
+
prod_db_access,
|
|
15
|
+
registry,
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
__version__ = "0.1.0"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def hello() -> str:
|
|
22
|
+
"""Return a friendly greeting."""
|
|
23
|
+
return "Hello from airbyte-internal-ops!"
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def get_version() -> str:
|
|
27
|
+
"""Return the current version."""
|
|
28
|
+
return __version__
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
__all__ = [
|
|
32
|
+
"__version__",
|
|
33
|
+
"airbyte_repo",
|
|
34
|
+
"cli",
|
|
35
|
+
"cloud_admin",
|
|
36
|
+
"connection_config_retriever",
|
|
37
|
+
"constants",
|
|
38
|
+
"get_version",
|
|
39
|
+
"hello",
|
|
40
|
+
"live_tests",
|
|
41
|
+
"mcp",
|
|
42
|
+
"prod_db_access",
|
|
43
|
+
"registry",
|
|
44
|
+
]
|
|
@@ -16,7 +16,6 @@ from connector_ops.utils import ConnectorLanguage # type: ignore
|
|
|
16
16
|
from consts import ContextState
|
|
17
17
|
from dagger import Config
|
|
18
18
|
from pipelines.airbyte_ci.connectors.context import ConnectorContext
|
|
19
|
-
from pipelines.airbyte_ci.connectors.publish.context import PublishConnectorContext
|
|
20
19
|
from pipelines.airbyte_ci.connectors.test.context import ConnectorTestContext
|
|
21
20
|
from pipelines.airbyte_ci.steps.no_op import NoOpStep
|
|
22
21
|
from pipelines.dagger.actions.system import docker
|
|
@@ -55,7 +54,6 @@ async def context_to_step_result(context: PipelineContext) -> StepResult:
|
|
|
55
54
|
async def run_report_complete_pipeline(
|
|
56
55
|
dagger_client: dagger.Client,
|
|
57
56
|
contexts: List[ConnectorContext]
|
|
58
|
-
| List[PublishConnectorContext]
|
|
59
57
|
| List[PipelineContext]
|
|
60
58
|
| List[ConnectorTestContext],
|
|
61
59
|
) -> None:
|
|
@@ -87,18 +85,14 @@ async def run_report_complete_pipeline(
|
|
|
87
85
|
|
|
88
86
|
|
|
89
87
|
async def run_connectors_pipelines(
|
|
90
|
-
contexts: List[ConnectorContext]
|
|
91
|
-
| List[PublishConnectorContext]
|
|
92
|
-
| List[ConnectorTestContext],
|
|
88
|
+
contexts: List[ConnectorContext] | List[ConnectorTestContext],
|
|
93
89
|
connector_pipeline: Callable,
|
|
94
90
|
pipeline_name: str,
|
|
95
91
|
concurrency: int,
|
|
96
92
|
dagger_logs_path: Optional[Path],
|
|
97
93
|
execute_timeout: Optional[int],
|
|
98
94
|
*args: Any,
|
|
99
|
-
) ->
|
|
100
|
-
List[ConnectorContext] | List[PublishConnectorContext] | List[ConnectorTestContext]
|
|
101
|
-
):
|
|
95
|
+
) -> List[ConnectorContext] | List[ConnectorTestContext]:
|
|
102
96
|
"""Run a connector pipeline for all the connector contexts."""
|
|
103
97
|
|
|
104
98
|
default_connectors_semaphore = anyio.Semaphore(concurrency)
|
|
@@ -34,6 +34,22 @@ class ConnectorLanguage(StrEnum):
|
|
|
34
34
|
MANIFEST_ONLY = "manifest-only"
|
|
35
35
|
|
|
36
36
|
|
|
37
|
+
class ConnectorType(StrEnum):
|
|
38
|
+
"""Connector types (source or destination)."""
|
|
39
|
+
|
|
40
|
+
SOURCE = "source"
|
|
41
|
+
DESTINATION = "destination"
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
class ConnectorSubtype(StrEnum):
|
|
45
|
+
"""Connector subtypes based on data source category."""
|
|
46
|
+
|
|
47
|
+
API = "api"
|
|
48
|
+
DATABASE = "database"
|
|
49
|
+
FILE = "file"
|
|
50
|
+
CUSTOM = "custom"
|
|
51
|
+
|
|
52
|
+
|
|
37
53
|
def get_modified_connectors(
|
|
38
54
|
repo_path: str | Path,
|
|
39
55
|
base_ref: str = GIT_DEFAULT_BRANCH,
|
|
@@ -245,6 +261,106 @@ def get_connectors_by_language(
|
|
|
245
261
|
return connectors_by_language
|
|
246
262
|
|
|
247
263
|
|
|
264
|
+
def get_connectors_by_type(
|
|
265
|
+
repo_path: str | Path,
|
|
266
|
+
connector_type: ConnectorType,
|
|
267
|
+
) -> set[str]:
|
|
268
|
+
"""Get set of all connector IDs for a specific type (source or destination).
|
|
269
|
+
|
|
270
|
+
This function reads connector directories to determine which connectors
|
|
271
|
+
match the specified type based on their metadata.yaml or name prefix.
|
|
272
|
+
|
|
273
|
+
Args:
|
|
274
|
+
repo_path: Path to the Airbyte monorepo
|
|
275
|
+
connector_type: Type to filter by (source or destination)
|
|
276
|
+
|
|
277
|
+
Returns:
|
|
278
|
+
Set of connector technical names matching the specified type
|
|
279
|
+
|
|
280
|
+
Example:
|
|
281
|
+
>>> source_connectors = get_connectors_by_type(
|
|
282
|
+
... "/path/to/airbyte", ConnectorType.SOURCE
|
|
283
|
+
... )
|
|
284
|
+
>>> "source-postgres" in source_connectors
|
|
285
|
+
True
|
|
286
|
+
"""
|
|
287
|
+
repo_path = Path(repo_path)
|
|
288
|
+
connectors_dir = repo_path / CONNECTOR_PATH_PREFIX
|
|
289
|
+
|
|
290
|
+
if not connectors_dir.exists():
|
|
291
|
+
raise ValueError(f"Connectors directory not found: {connectors_dir}")
|
|
292
|
+
|
|
293
|
+
type_value = connector_type.value
|
|
294
|
+
connectors_by_type = set()
|
|
295
|
+
|
|
296
|
+
for connector_dir in connectors_dir.iterdir():
|
|
297
|
+
if not connector_dir.is_dir():
|
|
298
|
+
continue
|
|
299
|
+
|
|
300
|
+
connector_name = connector_dir.name
|
|
301
|
+
|
|
302
|
+
# First try to get type from metadata.yaml
|
|
303
|
+
metadata = get_connector_metadata(repo_path, connector_name)
|
|
304
|
+
if metadata:
|
|
305
|
+
metadata_type = metadata.get("connectorType")
|
|
306
|
+
if metadata_type == type_value:
|
|
307
|
+
connectors_by_type.add(connector_name)
|
|
308
|
+
continue
|
|
309
|
+
|
|
310
|
+
# Fallback to name prefix detection
|
|
311
|
+
if connector_name.startswith(f"{type_value}-"):
|
|
312
|
+
connectors_by_type.add(connector_name)
|
|
313
|
+
|
|
314
|
+
return connectors_by_type
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
def get_connectors_by_subtype(
|
|
318
|
+
repo_path: str | Path,
|
|
319
|
+
connector_subtype: ConnectorSubtype,
|
|
320
|
+
) -> set[str]:
|
|
321
|
+
"""Get set of all connector IDs for a specific subtype (api, database, file, etc.).
|
|
322
|
+
|
|
323
|
+
This function reads connector metadata.yaml files to determine which connectors
|
|
324
|
+
match the specified subtype.
|
|
325
|
+
|
|
326
|
+
Args:
|
|
327
|
+
repo_path: Path to the Airbyte monorepo
|
|
328
|
+
connector_subtype: Subtype to filter by (api, database, file, custom)
|
|
329
|
+
|
|
330
|
+
Returns:
|
|
331
|
+
Set of connector technical names matching the specified subtype
|
|
332
|
+
|
|
333
|
+
Example:
|
|
334
|
+
>>> database_connectors = get_connectors_by_subtype(
|
|
335
|
+
... "/path/to/airbyte", ConnectorSubtype.DATABASE
|
|
336
|
+
... )
|
|
337
|
+
>>> "source-postgres" in database_connectors
|
|
338
|
+
True
|
|
339
|
+
"""
|
|
340
|
+
repo_path = Path(repo_path)
|
|
341
|
+
connectors_dir = repo_path / CONNECTOR_PATH_PREFIX
|
|
342
|
+
|
|
343
|
+
if not connectors_dir.exists():
|
|
344
|
+
raise ValueError(f"Connectors directory not found: {connectors_dir}")
|
|
345
|
+
|
|
346
|
+
subtype_value = connector_subtype.value
|
|
347
|
+
connectors_by_subtype = set()
|
|
348
|
+
|
|
349
|
+
for connector_dir in connectors_dir.iterdir():
|
|
350
|
+
if not connector_dir.is_dir():
|
|
351
|
+
continue
|
|
352
|
+
|
|
353
|
+
connector_name = connector_dir.name
|
|
354
|
+
metadata = get_connector_metadata(repo_path, connector_name)
|
|
355
|
+
|
|
356
|
+
if metadata:
|
|
357
|
+
metadata_subtype = metadata.get("connectorSubtype")
|
|
358
|
+
if metadata_subtype == subtype_value:
|
|
359
|
+
connectors_by_subtype.add(connector_name)
|
|
360
|
+
|
|
361
|
+
return connectors_by_subtype
|
|
362
|
+
|
|
363
|
+
|
|
248
364
|
@lru_cache(maxsize=1024)
|
|
249
365
|
def _detect_connector_language(connector_dir: Path, connector_name: str) -> str | None:
|
|
250
366
|
"""Detect the language of a connector based on its file structure.
|
|
@@ -401,6 +517,8 @@ def list_connectors(
|
|
|
401
517
|
modified: bool | None = None,
|
|
402
518
|
language_filter: set[str] | None = None,
|
|
403
519
|
language_exclude: set[str] | None = None,
|
|
520
|
+
connector_type: str | None = None,
|
|
521
|
+
connector_subtype: str | None = None,
|
|
404
522
|
base_ref: str | None = None,
|
|
405
523
|
head_ref: str | None = None,
|
|
406
524
|
) -> ConnectorListResult:
|
|
@@ -417,6 +535,8 @@ def list_connectors(
|
|
|
417
535
|
False=not-modified only, None=all)
|
|
418
536
|
language_filter: Set of languages to include (python, java, low-code, manifest-only)
|
|
419
537
|
language_exclude: Set of languages to exclude (mutually exclusive with language_filter)
|
|
538
|
+
connector_type: Filter by connector type (source, destination, or None for all)
|
|
539
|
+
connector_subtype: Filter by connector subtype (api, database, file, custom, or None for all)
|
|
420
540
|
base_ref: Base git reference for modification detection (default: "origin/main")
|
|
421
541
|
head_ref: Head git reference for modification detection (default: "HEAD")
|
|
422
542
|
|
|
@@ -475,6 +595,18 @@ def list_connectors(
|
|
|
475
595
|
excluded = get_connectors_by_language(repo_path, ConnectorLanguage(lang))
|
|
476
596
|
result -= excluded
|
|
477
597
|
|
|
598
|
+
# Apply connector type filter
|
|
599
|
+
if connector_type is not None:
|
|
600
|
+
type_set = get_connectors_by_type(repo_path, ConnectorType(connector_type))
|
|
601
|
+
result &= type_set
|
|
602
|
+
|
|
603
|
+
# Apply connector subtype filter
|
|
604
|
+
if connector_subtype is not None:
|
|
605
|
+
subtype_set = get_connectors_by_subtype(
|
|
606
|
+
repo_path, ConnectorSubtype(connector_subtype)
|
|
607
|
+
)
|
|
608
|
+
result &= subtype_set
|
|
609
|
+
|
|
478
610
|
return ConnectorListResult(
|
|
479
611
|
connectors=sorted(result),
|
|
480
612
|
count=len(result),
|