datachain 0.37.6__tar.gz → 0.37.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.
Potentially problematic release.
This version of datachain might be problematic. Click here for more details.
- {datachain-0.37.6 → datachain-0.37.7}/PKG-INFO +2 -2
- datachain-0.37.7/docs/studio/index.md +62 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/ca-certificates.md +410 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/git-forges/bitbucket.md +575 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/git-forges/github.md +472 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/git-forges/gitlab.md +555 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/git-forges/index.md +353 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/index.md +415 -0
- datachain-0.37.7/docs/studio/self-hosting/configuration/ssl-tls.md +384 -0
- datachain-0.37.7/docs/studio/self-hosting/index.md +89 -0
- datachain-0.37.7/docs/studio/self-hosting/installation/aws-ami.md +198 -0
- datachain-0.37.7/docs/studio/self-hosting/installation/index.md +106 -0
- datachain-0.37.7/docs/studio/self-hosting/installation/k8s-helm.md +422 -0
- datachain-0.37.7/docs/studio/self-hosting/troubleshooting/502-errors.md +499 -0
- datachain-0.37.7/docs/studio/self-hosting/troubleshooting/index.md +410 -0
- datachain-0.37.7/docs/studio/self-hosting/troubleshooting/support-bundle.md +459 -0
- datachain-0.37.7/docs/studio/self-hosting/upgrading/airgap-procedure.md +501 -0
- datachain-0.37.7/docs/studio/self-hosting/upgrading/index.md +396 -0
- datachain-0.37.7/docs/studio/self-hosting/upgrading/regular-procedure.md +464 -0
- datachain-0.37.7/docs/studio/user-guide/account-management.md +98 -0
- datachain-0.37.7/docs/studio/user-guide/authentication/openid-connect.md +180 -0
- datachain-0.37.7/docs/studio/user-guide/authentication/single-sign-on.md +55 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/configure-a-project.md +101 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/create-a-project.md +95 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/explore-ml-experiments.md +251 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/index.md +44 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/live-metrics-and-plots.md +157 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/run-experiments.md +28 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/share-a-project.md +44 -0
- datachain-0.37.7/docs/studio/user-guide/experiments/visualize-and-compare.md +53 -0
- datachain-0.37.7/docs/studio/user-guide/git-connections/custom-gitlab-server.md +207 -0
- datachain-0.37.7/docs/studio/user-guide/git-connections/github-app.md +129 -0
- datachain-0.37.7/docs/studio/user-guide/git-connections/index.md +34 -0
- datachain-0.37.7/docs/studio/user-guide/index.md +29 -0
- datachain-0.37.7/docs/studio/user-guide/jobs/create-and-run.md +233 -0
- datachain-0.37.7/docs/studio/user-guide/jobs/index.md +64 -0
- datachain-0.37.7/docs/studio/user-guide/jobs/monitor-jobs.md +252 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/add-a-model.md +67 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/assign-stage.md +66 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/register-version.md +63 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/remove-a-model-or-its-details.md +39 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/use-models.md +63 -0
- datachain-0.37.7/docs/studio/user-guide/model-registry/view-and-compare-models.md +79 -0
- datachain-0.37.7/docs/studio/user-guide/team-collaboration.md +250 -0
- datachain-0.37.7/docs/studio/user-guide/troubleshooting.md +476 -0
- {datachain-0.37.6 → datachain-0.37.7}/mkdocs.yml +58 -4
- {datachain-0.37.6 → datachain-0.37.7}/pyproject.toml +1 -1
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/datachain.py +2 -1
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/PKG-INFO +2 -2
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/SOURCES.txt +44 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/requires.txt +1 -1
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_datachain.py +16 -0
- {datachain-0.37.6 → datachain-0.37.7}/.cruft.json +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.gitattributes +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/ISSUE_TEMPLATE/empty_issue.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/codecov.yaml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/dependabot.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/workflows/benchmarks.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/workflows/release.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/workflows/tests-studio.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/workflows/tests.yml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.github/workflows/update-template.yaml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.gitignore +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/.pre-commit-config.yaml +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/CODE_OF_CONDUCT.rst +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/LICENSE +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/README.rst +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/api_hooks.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/assets/captioned_cartoons.png +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/assets/datachain-white.svg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/assets/datachain.svg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/assets/webhook_dialog.png +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/assets/webhook_list.png +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/auth/login.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/auth/logout.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/auth/team.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/auth/token.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/index.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/job/cancel.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/job/clusters.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/job/logs.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/job/ls.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/commands/job/run.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/contributing.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/css/github-permalink-style.css +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/examples.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/checkpoints.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/db_migrations.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/delta.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/env.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/index.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/namespaces.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/processing.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/remotes.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/guide/retry.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/index.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/overrides/main.html +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/quick-start.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/arrowrow.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/bbox.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/file.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/imagefile.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/index.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/pose.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/segment.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/tarvfile.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/textfile.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/data-types/videofile.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/datachain.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/func.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/aggregate.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/array.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/conditional.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/numeric.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/path.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/random.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/string.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/functions/window.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/index.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/toolkit.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/torch.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/references/udf.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/studio/api/.gitkeep +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/studio/webhooks.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/templates/main.dot +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/templates/operation.dot +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/templates/responses.def +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/docs/tutorials.md +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/iptc_exif_xmp_lib.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/llava2_image_desc_lib.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/openimage-detect.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/ultralytics-bbox.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/ultralytics-pose.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/computer_vision/ultralytics-segment.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/common_sql_functions.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/json-csv-reader.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/nested_datamodel.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/torch-loader.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/udfs/parallel.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/udfs/simple.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/get_started/udfs/stateful.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/incremental_processing/delta.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/incremental_processing/retry.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/incremental_processing/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/llm_and_nlp/claude-query.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/llm_and_nlp/hf-dataset-llm-eval.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/audio-to-text.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/clip_inference.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/hf_pipeline.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/openai_image_desc_lib.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/wds.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/examples/multimodal/wds_filtered.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/noxfile.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/setup.cfg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/__main__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/asyn.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cache.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/catalog/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/catalog/catalog.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/catalog/datasource.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/catalog/dependency.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/catalog/loader.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/checkpoint.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/datasets.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/du.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/index.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/ls.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/misc.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/query.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/commands/show.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/parser/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/parser/job.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/parser/studio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/parser/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/cli/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/azure.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/fileslice.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/fsspec.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/gcs.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/hf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/http.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/local.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/client/s3.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/config.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/db_engine.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/job.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/metastore.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/schema.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/serializer.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/sqlite.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/data_storage/warehouse.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/dataset.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/delta.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/diff/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/error.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/fs/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/fs/reference.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/fs/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/aggregate.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/array.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/base.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/conditional.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/func.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/numeric.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/path.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/random.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/string.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/func/window.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/hash_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/job.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/arrow.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/audio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/clip.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/flatten.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/python_to_sql.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/sql_to_python.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/unflatten.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/convert/values_to_tuples.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/data_model.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dataset_info.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/csv.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/database.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/datasets.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/hf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/json.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/listings.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/pandas.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/parquet.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/records.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/storage.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/storage_pattern.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/dc/values.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/file.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/hf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/image.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/listing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/listing_info.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/meta_formats.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/model_store.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/namespaces.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/projects.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/pytorch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/settings.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/signal_schema.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/tar.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/text.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/udf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/udf_signature.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/video.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/webdataset.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/lib/webdataset_laion.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/listing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/bbox.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/pose.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/segment.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/ultralytics/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/ultralytics/bbox.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/ultralytics/pose.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/ultralytics/segment.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/model/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/namespace.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/node.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/nodes_fetcher.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/nodes_thread_pool.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/plugins.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/progress.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/project.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/py.typed +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/batch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/dataset.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/dispatch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/metrics.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/params.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/queue.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/schema.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/session.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/query/udf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/remote/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/remote/studio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/script_meta.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/semver.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/default/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/default/base.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/aggregate.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/array.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/conditional.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/numeric.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/path.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/random.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/functions/string.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/postgresql_dialect.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/postgresql_types.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/selectable.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/sqlite/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/sqlite/base.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/sqlite/types.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/sqlite/vector.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/types.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/sql/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/studio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/telemetry.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/toolkit/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/toolkit/split.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/torch/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain/utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/dependency_links.txt +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/entry_points.txt +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/src/datachain.egg-info/top_level.txt +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/conftest.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/datasets/.dvc/.gitignore +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/datasets/.dvc/config +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/datasets/.gitignore +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/datasets/laion-tiny.npz.dvc +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/test_datachain.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/test_ls.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/benchmarks/test_version.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/conftest.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/data.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/examples/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/examples/test_examples.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/examples/test_wds_e2e.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/examples/wds_data.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/data/Big_Buck_Bunny_360_10s_1MB.mp4 +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/data/lena.jpg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/fake-service-account-credentials.json +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_aggregate.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_array.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_conditional.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_numeric.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_path.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_random.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/functions/test_string.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/data/running-mask0.png +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/data/running-mask1.png +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/data/running.jpg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/data/ships.jpg +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/model/test_yolo.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_audio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_catalog.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_checkpoints.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_client.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_cloud_transfer.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_data_storage.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_datachain.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_datachain_merge.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_dataset_query.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_datasets.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_delta.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_feature_pickling.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_file.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_hf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_hidden_field.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_image.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_listing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_ls.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_meta_formats.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_metastore.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_metrics.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_mutate.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_pull.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_pytorch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_query.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_read_database.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_read_dataset_remote.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_read_dataset_version_specifiers.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_retry.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_session.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_storage_pattern.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_studio_datetime_parsing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_temp_table_tracking.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_to_database.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_toolkit.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_udf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_union.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_video.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/func/test_warehouse.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/scripts/feature_class.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/scripts/feature_class_exception.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/scripts/feature_class_parallel.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/scripts/feature_class_parallel_data_model.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/scripts/name_len_slow.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_atomicity.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_cli_e2e.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_cli_studio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_import_time.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_job_management_e2e.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_query_e2e.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/test_telemetry.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/conftest.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_arrow.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_audio.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_checkpoints.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_clip.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_datachain_bootstrap.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_datachain_merge.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_diff.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_feature.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_feature_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_file.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_hf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_image.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_listing_info.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_namespace.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_partition_by.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_project.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_python_to_sql.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_schema.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_settings.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_signal_schema.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_sql_to_python.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_storage_pattern.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_text.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_udf.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_udf_signature.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/lib/test_webdataset.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/model/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/model/test_bbox.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/model/test_pose.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/model/test_segment.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/model/test_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/sqlite/__init__.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/sqlite/test_types.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/sqlite/test_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_array.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_conditional.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_path.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_random.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_selectable.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/sql/test_string.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_asyn.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_batching.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_cache.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_catalog.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_catalog_loader.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_cli_datasets.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_cli_parsing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_client.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_client_gcs.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_client_http.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_client_s3.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_config.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_data_storage.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_database_engine.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_datachain_hash.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_dataset.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_dispatch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_fileslice.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_func.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_hash_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_job_management.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_listing.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_metastore.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_module_exports.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_pytorch.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_query.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_query_metrics.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_query_params.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_query_steps_hash.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_script_meta.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_semver.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_serializer.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_session.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_utils.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/unit/test_warehouse.py +0 -0
- {datachain-0.37.6 → datachain-0.37.7}/tests/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: datachain
|
|
3
|
-
Version: 0.37.
|
|
3
|
+
Version: 0.37.7
|
|
4
4
|
Summary: Wrangle unstructured AI data at scale
|
|
5
5
|
Author-email: Dmitry Petrov <support@dvc.org>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -55,9 +55,9 @@ Provides-Extra: docs
|
|
|
55
55
|
Requires-Dist: mkdocs>=1.5.2; extra == "docs"
|
|
56
56
|
Requires-Dist: mkdocs-gen-files>=0.5.0; extra == "docs"
|
|
57
57
|
Requires-Dist: mkdocs-material==9.5.22; extra == "docs"
|
|
58
|
-
Requires-Dist: mkdocs-section-index>=0.3.6; extra == "docs"
|
|
59
58
|
Requires-Dist: mkdocstrings-python>=1.6.3; extra == "docs"
|
|
60
59
|
Requires-Dist: mkdocs-literate-nav>=0.6.1; extra == "docs"
|
|
60
|
+
Requires-Dist: mkdocs-section-index>=0.3.10; extra == "docs"
|
|
61
61
|
Requires-Dist: eval-type-backport; extra == "docs"
|
|
62
62
|
Provides-Extra: torch
|
|
63
63
|
Requires-Dist: torch>=2.1.0; extra == "torch"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# DataChain Studio
|
|
2
|
+
|
|
3
|
+
DataChain Studio is a web application that enables Machine Learning and Data teams to seamlessly
|
|
4
|
+
|
|
5
|
+
- [Run and track jobs](user-guide/jobs/index.md)
|
|
6
|
+
- [Track experiments and manage models](user-guide/experiments/index.md) (via DVC integration)
|
|
7
|
+
- [Collaborate on data projects](user-guide/team-collaboration.md)
|
|
8
|
+
|
|
9
|
+
DataChain Studio supports multiple workflows:
|
|
10
|
+
- **DataChain workflows**: For unstructured data processing and transformation
|
|
11
|
+
- **DVC + Git workflows**: For ML experiment tracking and model registry, maintaining Git as the single-source-of-truth
|
|
12
|
+
|
|
13
|
+
Sign in to DataChain Studio using your GitHub.com, GitLab.com, or Bitbucket.org account, or with your email address. Explore the demo projects and datasets, and [let us know](user-guide/troubleshooting.md#support) if you need any help getting started.
|
|
14
|
+
|
|
15
|
+
## Why DataChain Studio?
|
|
16
|
+
|
|
17
|
+
- Simplify data processing job tracking, visualization, and collaboration.
|
|
18
|
+
- Support both modern DataChain workflows and traditional DVC experiment tracking.
|
|
19
|
+
- Keep your code, data and processing connected at all times.
|
|
20
|
+
- Apply your existing software engineering stack for data and ML teams.
|
|
21
|
+
- Build a comprehensive data processing and ML platform for transparency and discovery across all your projects.
|
|
22
|
+
- For DVC projects, maintain Git as the single-source-of-truth and use [GitOps](https://www.gitops.tech/) for deployment and automation.
|
|
23
|
+
|
|
24
|
+
## Getting Started
|
|
25
|
+
|
|
26
|
+
New to DataChain Studio? Start with these guides:
|
|
27
|
+
|
|
28
|
+
- **[User Guide](user-guide/index.md)** - Learn how to use DataChain Studio features
|
|
29
|
+
- **[API Reference](api/index.md)** - Integrate with Studio programmatically
|
|
30
|
+
- **[Webhooks](webhooks.md)** - Set up event notifications
|
|
31
|
+
- **[Self-hosting](self-hosting/index.md)** - Deploy your own Studio instance
|
|
32
|
+
|
|
33
|
+
## Key Features
|
|
34
|
+
|
|
35
|
+
### Dataset Management
|
|
36
|
+
- Track and version your datasets
|
|
37
|
+
- Visualize data processing pipelines
|
|
38
|
+
- Share datasets across teams
|
|
39
|
+
|
|
40
|
+
### Job Processing
|
|
41
|
+
- Run data processing jobs in the cloud
|
|
42
|
+
- Monitor job progress and logs
|
|
43
|
+
- Schedule recurring data processing tasks
|
|
44
|
+
|
|
45
|
+
### ML Experiment Tracking (DVC Integration)
|
|
46
|
+
- Track and compare ML experiments
|
|
47
|
+
- Manage model lifecycle and registry
|
|
48
|
+
- Visualize metrics and plots
|
|
49
|
+
- Git-based experiment versioning
|
|
50
|
+
|
|
51
|
+
### Team Collaboration
|
|
52
|
+
- Share projects with team members
|
|
53
|
+
- Control access with role-based permissions
|
|
54
|
+
- Integrate with development workflows
|
|
55
|
+
|
|
56
|
+
### API Integration
|
|
57
|
+
- RESTful API for programmatic access
|
|
58
|
+
- Webhook notifications for automation
|
|
59
|
+
- Command-line tools for developers
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
Visit [studio.datachain.ai](https://studio.datachain.ai) to get started, or learn about [self-hosting](self-hosting/index.md) for enterprise deployments.
|
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
# CA Certificates
|
|
2
|
+
|
|
3
|
+
This guide covers how to configure custom Certificate Authority (CA) certificates for your self-hosted DataChain Studio instance. This is necessary when your organization uses internal CAs or when connecting to services with custom certificates.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
DataChain Studio may need to trust custom CA certificates in several scenarios:
|
|
8
|
+
|
|
9
|
+
- **Internal Git Servers**: Self-hosted GitLab, GitHub Enterprise with custom certificates
|
|
10
|
+
- **Storage Services**: S3-compatible storage with custom certificates
|
|
11
|
+
- **Corporate Proxies**: HTTPS proxies with internal certificates
|
|
12
|
+
- **Database Connections**: PostgreSQL/Redis with SSL using custom CAs
|
|
13
|
+
|
|
14
|
+
## Configuration Methods
|
|
15
|
+
|
|
16
|
+
### Kubernetes/Helm Deployment
|
|
17
|
+
|
|
18
|
+
#### Method 1: ConfigMap with Certificate Files
|
|
19
|
+
|
|
20
|
+
1. Create a ConfigMap with your CA certificates:
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
kubectl create configmap custom-ca-certs \
|
|
24
|
+
--namespace datachain-studio \
|
|
25
|
+
--from-file=ca1.crt=/path/to/your/ca1.crt \
|
|
26
|
+
--from-file=ca2.crt=/path/to/your/ca2.crt
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
2. Configure Helm values to mount the certificates:
|
|
30
|
+
|
|
31
|
+
```yaml
|
|
32
|
+
# values.yaml
|
|
33
|
+
global:
|
|
34
|
+
customCaCerts:
|
|
35
|
+
enabled: true
|
|
36
|
+
configMapName: custom-ca-certs
|
|
37
|
+
|
|
38
|
+
# Alternative: Inline certificates
|
|
39
|
+
global:
|
|
40
|
+
customCaCerts:
|
|
41
|
+
certificates:
|
|
42
|
+
- name: "internal-ca"
|
|
43
|
+
certificate: |
|
|
44
|
+
-----BEGIN CERTIFICATE-----
|
|
45
|
+
MIIDXTCCAkWgAwIBAgIJAKoK/heBjcOuMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
|
|
46
|
+
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
|
|
47
|
+
... (certificate content) ...
|
|
48
|
+
-----END CERTIFICATE-----
|
|
49
|
+
- name: "corporate-ca"
|
|
50
|
+
certificate: |
|
|
51
|
+
-----BEGIN CERTIFICATE-----
|
|
52
|
+
... (another certificate) ...
|
|
53
|
+
-----END CERTIFICATE-----
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
3. Apply the configuration:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
helm upgrade datachain-studio datachain/studio \
|
|
60
|
+
--namespace datachain-studio \
|
|
61
|
+
--values values.yaml
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
#### Method 2: Direct Certificate Configuration
|
|
65
|
+
|
|
66
|
+
Add certificates directly to your Helm values:
|
|
67
|
+
|
|
68
|
+
```yaml
|
|
69
|
+
# values.yaml
|
|
70
|
+
global:
|
|
71
|
+
customCaCerts:
|
|
72
|
+
- |-
|
|
73
|
+
-----BEGIN CERTIFICATE-----
|
|
74
|
+
MIIDXTCCAkWgAwIBAgIJAKoK/heBjcOuMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
|
|
75
|
+
BAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBX
|
|
76
|
+
... (rest of certificate) ...
|
|
77
|
+
-----END CERTIFICATE-----
|
|
78
|
+
- |-
|
|
79
|
+
-----BEGIN CERTIFICATE-----
|
|
80
|
+
... (another certificate) ...
|
|
81
|
+
-----END CERTIFICATE-----
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### AWS AMI Deployment
|
|
85
|
+
|
|
86
|
+
For AMI deployments, configure CA certificates directly on the instance:
|
|
87
|
+
|
|
88
|
+
#### 1. Upload CA Certificates
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Copy certificate files to the instance
|
|
92
|
+
scp -i your-key.pem ca-certificates.crt ubuntu@your-instance:/tmp/
|
|
93
|
+
|
|
94
|
+
# SSH to the instance
|
|
95
|
+
ssh -i your-key.pem ubuntu@your-instance
|
|
96
|
+
|
|
97
|
+
# Install CA certificates
|
|
98
|
+
sudo cp /tmp/ca-certificates.crt /usr/local/share/ca-certificates/
|
|
99
|
+
sudo update-ca-certificates
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
#### 2. Configure DataChain Studio
|
|
103
|
+
|
|
104
|
+
Update the configuration file:
|
|
105
|
+
|
|
106
|
+
```yaml
|
|
107
|
+
# /opt/datachain-studio/config.yml
|
|
108
|
+
global:
|
|
109
|
+
ssl:
|
|
110
|
+
caCertificates:
|
|
111
|
+
- /usr/local/share/ca-certificates/ca-certificates.crt
|
|
112
|
+
|
|
113
|
+
# Alternatively, inline certificates
|
|
114
|
+
customCaCerts:
|
|
115
|
+
- |
|
|
116
|
+
-----BEGIN CERTIFICATE-----
|
|
117
|
+
... certificate content ...
|
|
118
|
+
-----END CERTIFICATE-----
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
#### 3. Restart Services
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
sudo systemctl restart datachain-studio
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## Use Cases and Examples
|
|
128
|
+
|
|
129
|
+
### Internal GitLab Server
|
|
130
|
+
|
|
131
|
+
Configure CA certificates for connecting to an internal GitLab server:
|
|
132
|
+
|
|
133
|
+
```yaml
|
|
134
|
+
global:
|
|
135
|
+
customCaCerts:
|
|
136
|
+
- |-
|
|
137
|
+
-----BEGIN CERTIFICATE-----
|
|
138
|
+
MIIDXTCCAkWgAwIBAgIJAKoK/heBjcOuMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV
|
|
139
|
+
... (your GitLab CA certificate) ...
|
|
140
|
+
-----END CERTIFICATE-----
|
|
141
|
+
|
|
142
|
+
git:
|
|
143
|
+
gitlab:
|
|
144
|
+
enabled: true
|
|
145
|
+
url: "https://gitlab.internal.company.com"
|
|
146
|
+
clientId: "your-gitlab-client-id"
|
|
147
|
+
clientSecret: "your-gitlab-client-secret"
|
|
148
|
+
|
|
149
|
+
# SSL verification settings
|
|
150
|
+
ssl:
|
|
151
|
+
verify: true
|
|
152
|
+
caCertificate: true # Use custom CA
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### S3-Compatible Storage with Custom CA
|
|
156
|
+
|
|
157
|
+
Configure certificates for custom S3-compatible storage:
|
|
158
|
+
|
|
159
|
+
```yaml
|
|
160
|
+
global:
|
|
161
|
+
customCaCerts:
|
|
162
|
+
- |-
|
|
163
|
+
-----BEGIN CERTIFICATE-----
|
|
164
|
+
... (your storage provider's CA certificate) ...
|
|
165
|
+
-----END CERTIFICATE-----
|
|
166
|
+
|
|
167
|
+
storage:
|
|
168
|
+
type: s3
|
|
169
|
+
s3:
|
|
170
|
+
endpoint: "https://s3.internal.company.com"
|
|
171
|
+
bucket: "datachain-studio-storage"
|
|
172
|
+
region: "us-east-1"
|
|
173
|
+
|
|
174
|
+
# SSL settings
|
|
175
|
+
ssl:
|
|
176
|
+
enabled: true
|
|
177
|
+
verify: true
|
|
178
|
+
caCertificate: true
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Corporate Proxy with Custom CA
|
|
182
|
+
|
|
183
|
+
Configure certificates for accessing external services through a corporate proxy:
|
|
184
|
+
|
|
185
|
+
```yaml
|
|
186
|
+
global:
|
|
187
|
+
# Proxy configuration
|
|
188
|
+
proxy:
|
|
189
|
+
enabled: true
|
|
190
|
+
http: "http://proxy.company.com:8080"
|
|
191
|
+
https: "https://proxy.company.com:8080"
|
|
192
|
+
|
|
193
|
+
# CA certificates for proxy SSL
|
|
194
|
+
customCaCerts:
|
|
195
|
+
- |-
|
|
196
|
+
-----BEGIN CERTIFICATE-----
|
|
197
|
+
... (your proxy's CA certificate) ...
|
|
198
|
+
-----END CERTIFICATE-----
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
### Multiple CA Certificates
|
|
202
|
+
|
|
203
|
+
Configure multiple CA certificates for different services:
|
|
204
|
+
|
|
205
|
+
```yaml
|
|
206
|
+
global:
|
|
207
|
+
customCaCerts:
|
|
208
|
+
# Internal root CA
|
|
209
|
+
- |-
|
|
210
|
+
-----BEGIN CERTIFICATE-----
|
|
211
|
+
... (internal root CA) ...
|
|
212
|
+
-----END CERTIFICATE-----
|
|
213
|
+
|
|
214
|
+
# GitLab intermediate CA
|
|
215
|
+
- |-
|
|
216
|
+
-----BEGIN CERTIFICATE-----
|
|
217
|
+
... (GitLab intermediate CA) ...
|
|
218
|
+
-----END CERTIFICATE-----
|
|
219
|
+
|
|
220
|
+
# Storage service CA
|
|
221
|
+
- |-
|
|
222
|
+
-----BEGIN CERTIFICATE-----
|
|
223
|
+
... (storage service CA) ...
|
|
224
|
+
-----END CERTIFICATE-----
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
## Certificate Chain Validation
|
|
228
|
+
|
|
229
|
+
### Obtaining CA Certificates
|
|
230
|
+
|
|
231
|
+
Get CA certificates from various sources:
|
|
232
|
+
|
|
233
|
+
#### From a Website
|
|
234
|
+
```bash
|
|
235
|
+
# Extract certificate chain from a website
|
|
236
|
+
openssl s_client -showcerts -connect gitlab.company.com:443 </dev/null 2>/dev/null | openssl x509 -outform PEM > gitlab-ca.crt
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
#### From a Certificate File
|
|
240
|
+
```bash
|
|
241
|
+
# Extract CA from a certificate bundle
|
|
242
|
+
openssl x509 -in certificate-bundle.crt -out ca-certificate.crt
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
#### From System Trust Store
|
|
246
|
+
```bash
|
|
247
|
+
# Export system CA certificates
|
|
248
|
+
cat /etc/ssl/certs/ca-certificates.crt > system-cas.crt
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### Validating Certificate Chains
|
|
252
|
+
|
|
253
|
+
Test certificate validation:
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
# Verify certificate against CA
|
|
257
|
+
openssl verify -CAfile ca-certificate.crt server-certificate.crt
|
|
258
|
+
|
|
259
|
+
# Test SSL connection with custom CA
|
|
260
|
+
openssl s_client -connect gitlab.company.com:443 -CAfile ca-certificate.crt
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
## Troubleshooting
|
|
264
|
+
|
|
265
|
+
### Common Issues
|
|
266
|
+
|
|
267
|
+
**SSL verification errors:**
|
|
268
|
+
```
|
|
269
|
+
ERROR: SSL certificate verification failed
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
**Solution:**
|
|
273
|
+
1. Verify CA certificate is correct and complete
|
|
274
|
+
2. Check certificate format (PEM format required)
|
|
275
|
+
3. Ensure certificate chain is complete
|
|
276
|
+
|
|
277
|
+
**Certificate format issues:**
|
|
278
|
+
```
|
|
279
|
+
ERROR: Invalid certificate format
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
**Solution:**
|
|
283
|
+
1. Ensure certificates are in PEM format
|
|
284
|
+
2. Check for proper BEGIN/END markers
|
|
285
|
+
3. Validate certificate using OpenSSL
|
|
286
|
+
|
|
287
|
+
### Debugging CA Certificate Issues
|
|
288
|
+
|
|
289
|
+
#### 1. Check Certificate Details
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
# View certificate information
|
|
293
|
+
openssl x509 -in ca-certificate.crt -text -noout
|
|
294
|
+
|
|
295
|
+
# Check certificate validity
|
|
296
|
+
openssl x509 -in ca-certificate.crt -noout -dates
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
#### 2. Test Certificate Trust
|
|
300
|
+
|
|
301
|
+
```bash
|
|
302
|
+
# Test connection with custom CA
|
|
303
|
+
curl --cacert ca-certificate.crt https://gitlab.company.com
|
|
304
|
+
|
|
305
|
+
# Test with verbose output
|
|
306
|
+
curl -v --cacert ca-certificate.crt https://gitlab.company.com
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
#### 3. Validate Certificate Chain
|
|
310
|
+
|
|
311
|
+
```bash
|
|
312
|
+
# Check certificate chain
|
|
313
|
+
openssl verify -verbose -CAfile ca-certificate.crt intermediate.crt
|
|
314
|
+
|
|
315
|
+
# Show certificate chain
|
|
316
|
+
openssl s_client -connect gitlab.company.com:443 -showcerts
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
### Container-Level Debugging
|
|
320
|
+
|
|
321
|
+
For Kubernetes deployments, debug CA certificate issues:
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
# Check if certificates are mounted correctly
|
|
325
|
+
kubectl exec -it deployment/datachain-studio-backend -n datachain-studio -- ls -la /etc/ssl/certs/
|
|
326
|
+
|
|
327
|
+
# Test certificate from within container
|
|
328
|
+
kubectl exec -it deployment/datachain-studio-backend -n datachain-studio -- openssl s_client -connect gitlab.company.com:443 -CApath /etc/ssl/certs
|
|
329
|
+
|
|
330
|
+
# Check certificate trust store
|
|
331
|
+
kubectl exec -it deployment/datachain-studio-backend -n datachain-studio -- cat /etc/ssl/certs/ca-certificates.crt | grep -A 20 "Your CA Name"
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
## Security Best Practices
|
|
335
|
+
|
|
336
|
+
### Certificate Management
|
|
337
|
+
|
|
338
|
+
1. **Regular Updates**: Keep CA certificates updated
|
|
339
|
+
2. **Secure Storage**: Store CA certificates securely
|
|
340
|
+
3. **Access Control**: Limit access to CA certificate files
|
|
341
|
+
4. **Validation**: Regularly validate certificate chains
|
|
342
|
+
|
|
343
|
+
### Certificate Rotation
|
|
344
|
+
|
|
345
|
+
```yaml
|
|
346
|
+
# Automated certificate rotation
|
|
347
|
+
global:
|
|
348
|
+
certificates:
|
|
349
|
+
rotation:
|
|
350
|
+
enabled: true
|
|
351
|
+
schedule: "0 2 * * 0" # Weekly on Sunday at 2 AM
|
|
352
|
+
backup: true
|
|
353
|
+
|
|
354
|
+
validation:
|
|
355
|
+
enabled: true
|
|
356
|
+
checkExpiry: true
|
|
357
|
+
daysBeforeExpiry: 30
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### Monitoring and Alerting
|
|
361
|
+
|
|
362
|
+
```yaml
|
|
363
|
+
# Certificate monitoring
|
|
364
|
+
monitoring:
|
|
365
|
+
certificates:
|
|
366
|
+
enabled: true
|
|
367
|
+
alerts:
|
|
368
|
+
- name: "Certificate Expiry Warning"
|
|
369
|
+
condition: "certificate_days_until_expiry < 30"
|
|
370
|
+
severity: "warning"
|
|
371
|
+
|
|
372
|
+
- name: "Certificate Expiry Critical"
|
|
373
|
+
condition: "certificate_days_until_expiry < 7"
|
|
374
|
+
severity: "critical"
|
|
375
|
+
```
|
|
376
|
+
|
|
377
|
+
## Validation and Testing
|
|
378
|
+
|
|
379
|
+
### Post-Configuration Validation
|
|
380
|
+
|
|
381
|
+
```bash
|
|
382
|
+
# Test DataChain Studio connectivity
|
|
383
|
+
curl -I https://studio.company.com
|
|
384
|
+
|
|
385
|
+
# Verify certificate trust
|
|
386
|
+
openssl s_client -connect studio.company.com:443 -verify_return_error
|
|
387
|
+
|
|
388
|
+
# Check service logs for SSL errors
|
|
389
|
+
kubectl logs -f deployment/datachain-studio-backend -n datachain-studio | grep -i ssl
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
### Integration Testing
|
|
393
|
+
|
|
394
|
+
```bash
|
|
395
|
+
# Test Git integration
|
|
396
|
+
curl -k https://studio.company.com/api/git/test-connection
|
|
397
|
+
|
|
398
|
+
# Test storage connectivity
|
|
399
|
+
curl -k https://studio.company.com/api/storage/health
|
|
400
|
+
|
|
401
|
+
# Test webhook delivery
|
|
402
|
+
curl -k https://studio.company.com/api/webhooks/test
|
|
403
|
+
```
|
|
404
|
+
|
|
405
|
+
## Next Steps
|
|
406
|
+
|
|
407
|
+
- Configure [SSL/TLS certificates](ssl-tls.md) for secure communications
|
|
408
|
+
- Set up [Git forge integrations](git-forges/index.md) with custom certificates
|
|
409
|
+
- Review [troubleshooting guides](../troubleshooting/index.md) for SSL/TLS issues
|
|
410
|
+
- Learn about [upgrading procedures](../upgrading/index.md) with certificate considerations
|