cloudkit 0.1.1__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cloudkit-0.1.2/.devcontainer/devcontainer.json +54 -0
- cloudkit-0.1.2/.dockerignore +94 -0
- cloudkit-0.1.2/.github/dependabot.yml +12 -0
- cloudkit-0.1.2/.pre-commit-config.yaml +29 -0
- cloudkit-0.1.2/.pypirc +6 -0
- cloudkit-0.1.2/.python-version +1 -0
- cloudkit-0.1.2/.vscode/launch.json +45 -0
- cloudkit-0.1.2/.vscode/settings.json +38 -0
- cloudkit-0.1.2/.whitesource +3 -0
- cloudkit-0.1.2/CHANGELOG.md +52 -0
- cloudkit-0.1.2/Dockerfile +80 -0
- cloudkit-0.1.2/Makefile +75 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2}/PKG-INFO +1 -1
- cloudkit-0.1.2/config +4 -0
- cloudkit-0.1.2/env.template +43 -0
- cloudkit-0.1.2/examples/example_usage.py +291 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2}/pyproject.toml +2 -2
- cloudkit-0.1.2/setup.py +9 -0
- cloudkit-0.1.2/tests/__init__.py +0 -0
- cloudkit-0.1.2/tests/test_cloudkit_usage.py +100 -0
- cloudkit-0.1.2/tests/test_import.py +75 -0
- cloudkit-0.1.2/tests/test_provider.py +189 -0
- cloudkit-0.1.2/uv.lock +1763 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2}/.gitignore +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2}/LICENSE +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2}/README.md +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/__init__.py +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/aws.py +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/azure.py +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/config.py +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/interfaces.py +0 -0
- {cloudkit-0.1.1 → cloudkit-0.1.2/src}/cloudkit/provider.py +0 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
|
2
|
+
// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
|
|
3
|
+
{
|
|
4
|
+
"name": "Catalyst Backend Boilerplate",
|
|
5
|
+
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
|
6
|
+
"image": "mcr.microsoft.com/devcontainers/base:ubuntu-22.04",
|
|
7
|
+
|
|
8
|
+
// Features to add to the dev container. More info: https://containers.dev/features.
|
|
9
|
+
"features": {
|
|
10
|
+
"ghcr.io/devcontainers/features/azure-cli:1": {},
|
|
11
|
+
"ghcr.io/azure/azure-dev/azd:0": {},
|
|
12
|
+
"ghcr.io/va-h/devcontainers-features/uv:1": {},
|
|
13
|
+
"ghcr.io/devcontainers-contrib/features/ruff:1": {}
|
|
14
|
+
// "ghcr.io/devcontainers/features/docker-outside-of-docker:1": {},
|
|
15
|
+
// "ghcr.io/devcontainers/features/nvidia-cuda:1": {}
|
|
16
|
+
},
|
|
17
|
+
|
|
18
|
+
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
19
|
+
// "forwardPorts": [],
|
|
20
|
+
|
|
21
|
+
// Use 'postCreateCommand' to run commands after the container is created.
|
|
22
|
+
// "postCreateCommand": "uname -a",
|
|
23
|
+
|
|
24
|
+
// Configure tool-specific properties.
|
|
25
|
+
"customizations": {
|
|
26
|
+
"vscode": {
|
|
27
|
+
"extensions": [
|
|
28
|
+
"ms-azuretools.azure-dev",
|
|
29
|
+
"ms-azuretools.vscode-bicep",
|
|
30
|
+
"ms-python.python"
|
|
31
|
+
]
|
|
32
|
+
},
|
|
33
|
+
"codespaces": {
|
|
34
|
+
"openFiles": [
|
|
35
|
+
"README.md"
|
|
36
|
+
]
|
|
37
|
+
}
|
|
38
|
+
},
|
|
39
|
+
|
|
40
|
+
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
|
41
|
+
// "remoteUser": "root"
|
|
42
|
+
|
|
43
|
+
"runArgs": ["--userns=keep-id:uid=1000,gid=1000"],
|
|
44
|
+
"containerUser": "vscode",
|
|
45
|
+
"updateRemoteUserUID": true,
|
|
46
|
+
"containerEnv": {
|
|
47
|
+
"HOME": "/home/vscode"
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
"hostRequirements": {
|
|
51
|
+
"memory": "8gb"
|
|
52
|
+
// "gpu": "optional"
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
|
|
6
|
+
# C extensions
|
|
7
|
+
*.so
|
|
8
|
+
|
|
9
|
+
# Distribution / packaging
|
|
10
|
+
.Python
|
|
11
|
+
env/
|
|
12
|
+
venv/
|
|
13
|
+
ENV/
|
|
14
|
+
env.bak/
|
|
15
|
+
venv.bak/
|
|
16
|
+
*.egg
|
|
17
|
+
*.egg-info/
|
|
18
|
+
dist/
|
|
19
|
+
build/
|
|
20
|
+
*.whl
|
|
21
|
+
|
|
22
|
+
# PyInstaller
|
|
23
|
+
# Usually these files are written by a python script from a template
|
|
24
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
25
|
+
*.manifest
|
|
26
|
+
*.spec
|
|
27
|
+
|
|
28
|
+
# Installer logs
|
|
29
|
+
pip-log.txt
|
|
30
|
+
pip-delete-this-directory.txt
|
|
31
|
+
|
|
32
|
+
# Unit test / coverage reports
|
|
33
|
+
htmlcov/
|
|
34
|
+
.tox/
|
|
35
|
+
.nox/
|
|
36
|
+
.coverage
|
|
37
|
+
.coverage.*
|
|
38
|
+
.cache
|
|
39
|
+
nosetests.xml
|
|
40
|
+
coverage.xml
|
|
41
|
+
*.cover
|
|
42
|
+
*.py,cover
|
|
43
|
+
.hypothesis/
|
|
44
|
+
.pytest_cache/
|
|
45
|
+
|
|
46
|
+
# Translations
|
|
47
|
+
*.mo
|
|
48
|
+
*.pot
|
|
49
|
+
|
|
50
|
+
# Django stuff:
|
|
51
|
+
*.log
|
|
52
|
+
local_settings.py
|
|
53
|
+
db.sqlite3
|
|
54
|
+
|
|
55
|
+
# Flask stuff:
|
|
56
|
+
instance/
|
|
57
|
+
.webassets-cache
|
|
58
|
+
|
|
59
|
+
# Scrapy stuff:
|
|
60
|
+
.scrapy
|
|
61
|
+
|
|
62
|
+
# Sphinx documentation
|
|
63
|
+
docs/_build/
|
|
64
|
+
|
|
65
|
+
# PyBuilder
|
|
66
|
+
target/
|
|
67
|
+
|
|
68
|
+
# Jupyter Notebook
|
|
69
|
+
.ipynb_checkpoints
|
|
70
|
+
|
|
71
|
+
# IPython
|
|
72
|
+
profile_default/
|
|
73
|
+
ipython_config.py
|
|
74
|
+
|
|
75
|
+
# pyenv
|
|
76
|
+
.python-version
|
|
77
|
+
|
|
78
|
+
# celery beat schedule file
|
|
79
|
+
celerybeat-schedule
|
|
80
|
+
|
|
81
|
+
# SageMath parsed files
|
|
82
|
+
*.sage.py
|
|
83
|
+
|
|
84
|
+
# Environments
|
|
85
|
+
.env
|
|
86
|
+
.env.*
|
|
87
|
+
|
|
88
|
+
# mypy
|
|
89
|
+
.mypy_cache/
|
|
90
|
+
.dmypy.json
|
|
91
|
+
dmypy.json
|
|
92
|
+
|
|
93
|
+
# Pyre type checker
|
|
94
|
+
.pyre/
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# To get started with Dependabot version updates, you'll need to specify which
|
|
2
|
+
# package ecosystems to update and where the package manifests are located.
|
|
3
|
+
# Please see the documentation for more information:
|
|
4
|
+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
|
|
5
|
+
# https://containers.dev/guide/dependabot
|
|
6
|
+
|
|
7
|
+
version: 2
|
|
8
|
+
updates:
|
|
9
|
+
- package-ecosystem: "devcontainers"
|
|
10
|
+
directory: "/"
|
|
11
|
+
schedule:
|
|
12
|
+
interval: weekly
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# See https://pre-commit.com for more information
|
|
2
|
+
# See https://pre-commit.com/hooks.html for more hooks
|
|
3
|
+
default_language_version:
|
|
4
|
+
python: python3.11
|
|
5
|
+
repos:
|
|
6
|
+
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
7
|
+
rev: v4.4.0
|
|
8
|
+
hooks:
|
|
9
|
+
- id: check-added-large-files
|
|
10
|
+
- id: check-toml
|
|
11
|
+
- id: check-yaml
|
|
12
|
+
args:
|
|
13
|
+
- --unsafe
|
|
14
|
+
- id: end-of-file-fixer
|
|
15
|
+
- id: trailing-whitespace
|
|
16
|
+
- repo: https://github.com/charliermarsh/ruff-pre-commit
|
|
17
|
+
rev: v0.2.0
|
|
18
|
+
hooks:
|
|
19
|
+
- id: ruff
|
|
20
|
+
args:
|
|
21
|
+
- --fix
|
|
22
|
+
- id: ruff-format
|
|
23
|
+
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
24
|
+
rev: 0.6.2
|
|
25
|
+
hooks:
|
|
26
|
+
- id: uv-lock
|
|
27
|
+
ci:
|
|
28
|
+
autofix_commit_msg: 🎨 [pre-commit.ci] Auto format from pre-commit.com hooks
|
|
29
|
+
autoupdate_commit_msg: ⬆ [pre-commit.ci] pre-commit autoupdate
|
cloudkit-0.1.2/.pypirc
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.11
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
// Use IntelliSense to learn about possible attributes.
|
|
3
|
+
// Hover to view descriptions of existing attributes.
|
|
4
|
+
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
|
5
|
+
"version": "0.2.0",
|
|
6
|
+
"configurations": [
|
|
7
|
+
{
|
|
8
|
+
"name": "Python: Debug Current File",
|
|
9
|
+
"type": "debugpy",
|
|
10
|
+
"request": "launch",
|
|
11
|
+
"program": "${file}",
|
|
12
|
+
"console": "integratedTerminal",
|
|
13
|
+
"justMyCode": true,
|
|
14
|
+
"env": {
|
|
15
|
+
"PYTHONPATH": "${workspaceFolder}/src"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "Python: Run Examples",
|
|
20
|
+
"type": "debugpy",
|
|
21
|
+
"request": "launch",
|
|
22
|
+
"program": "${workspaceFolder}/examples/example_usage.py",
|
|
23
|
+
"console": "integratedTerminal",
|
|
24
|
+
"justMyCode": true,
|
|
25
|
+
"env": {
|
|
26
|
+
"PYTHONPATH": "${workspaceFolder}/src"
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"name": "Python: Run Tests",
|
|
31
|
+
"type": "debugpy",
|
|
32
|
+
"request": "launch",
|
|
33
|
+
"module": "pytest",
|
|
34
|
+
"args": [
|
|
35
|
+
"tests/",
|
|
36
|
+
"-v"
|
|
37
|
+
],
|
|
38
|
+
"console": "integratedTerminal",
|
|
39
|
+
"justMyCode": true,
|
|
40
|
+
"env": {
|
|
41
|
+
"PYTHONPATH": "${workspaceFolder}/src"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"[python]": {
|
|
3
|
+
"editor.defaultFormatter": "charliermarsh.ruff"
|
|
4
|
+
},
|
|
5
|
+
"[markdown]": {
|
|
6
|
+
"editor.wordWrap": "on",
|
|
7
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
8
|
+
},
|
|
9
|
+
"[yaml]": {
|
|
10
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
11
|
+
},
|
|
12
|
+
"[html]": {
|
|
13
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
14
|
+
},
|
|
15
|
+
"[json]": {
|
|
16
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
17
|
+
},
|
|
18
|
+
"[jsonc]": {
|
|
19
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
20
|
+
},
|
|
21
|
+
"[javascript]": {
|
|
22
|
+
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
|
23
|
+
},
|
|
24
|
+
"[dockerfile]": {
|
|
25
|
+
"editor.defaultFormatter": "ms-azuretools.vscode-docker"
|
|
26
|
+
},
|
|
27
|
+
"editor.tabSize": 4,
|
|
28
|
+
"editor.insertSpaces": true,
|
|
29
|
+
"editor.renderWhitespace": "all",
|
|
30
|
+
"editor.formatOnSave": true,
|
|
31
|
+
"editor.rulers": [88, 120],
|
|
32
|
+
"files.insertFinalNewline": true,
|
|
33
|
+
"files.trimFinalNewlines": true,
|
|
34
|
+
"files.trimTrailingWhitespace": true,
|
|
35
|
+
"python.testing.pytestArgs": ["tests"],
|
|
36
|
+
"python.testing.unittestEnabled": false,
|
|
37
|
+
"python.testing.pytestEnabled": true
|
|
38
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [0.1.1] - 2026-02-04
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
- Updated README with correct package name and PyPI installation instructions
|
|
12
|
+
- Updated documentation with proper import statements
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
- Fixed connection string formatting in .env template
|
|
16
|
+
|
|
17
|
+
## [0.1.0] - 2026-02-04
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
- Initial release of CloudKit
|
|
21
|
+
- Cloud abstraction layer supporting Azure and AWS
|
|
22
|
+
- Database services:
|
|
23
|
+
- Azure Cosmos DB (NoSQL and Table API)
|
|
24
|
+
- Azure Blob Storage
|
|
25
|
+
- AWS DynamoDB
|
|
26
|
+
- AWS S3
|
|
27
|
+
- AI services:
|
|
28
|
+
- Text analysis (sentiment, entity recognition, key phrase extraction)
|
|
29
|
+
- Chat completion via Azure OpenAI and AWS Bedrock
|
|
30
|
+
- Text embeddings generation
|
|
31
|
+
- Vector similarity search
|
|
32
|
+
- Search services:
|
|
33
|
+
- Azure Cognitive Search integration
|
|
34
|
+
- AWS OpenSearch integration
|
|
35
|
+
- Messaging services:
|
|
36
|
+
- Azure Service Bus support
|
|
37
|
+
- AWS SQS support
|
|
38
|
+
- Unified `CloudProvider` interface for all services
|
|
39
|
+
- Configuration via environment variables or dictionaries
|
|
40
|
+
- Async/await support for all operations
|
|
41
|
+
- Comprehensive examples and documentation
|
|
42
|
+
- Type hints throughout the codebase
|
|
43
|
+
- Testing framework with pytest
|
|
44
|
+
- Development tooling (ruff, mypy, pre-commit)
|
|
45
|
+
|
|
46
|
+
### Infrastructure
|
|
47
|
+
- Modern Python packaging with pyproject.toml
|
|
48
|
+
- Published to PyPI as `cloudkit`
|
|
49
|
+
- MIT License
|
|
50
|
+
- Python 3.11+ support
|
|
51
|
+
|
|
52
|
+
[0.1.0]: https://github.com/sleepeatai/cloudkit/releases/tag/v0.1.0
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Agentic Composer SDK - Development and Testing Container
|
|
2
|
+
FROM python:3.11-slim AS base
|
|
3
|
+
|
|
4
|
+
WORKDIR /app
|
|
5
|
+
|
|
6
|
+
# Install system dependencies required for various Python packages and development
|
|
7
|
+
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
8
|
+
build-essential \
|
|
9
|
+
curl \
|
|
10
|
+
git \
|
|
11
|
+
&& rm -rf /var/lib/apt/lists/*
|
|
12
|
+
|
|
13
|
+
# Install UV for dependency management
|
|
14
|
+
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
15
|
+
|
|
16
|
+
# Add UV to PATH
|
|
17
|
+
ENV PATH="/root/.local/bin:$PATH" \
|
|
18
|
+
PYTHONUNBUFFERED=1 \
|
|
19
|
+
PYTHONPATH=/app
|
|
20
|
+
|
|
21
|
+
# Development stage
|
|
22
|
+
FROM base AS development
|
|
23
|
+
|
|
24
|
+
# Create virtual environment
|
|
25
|
+
RUN uv venv .venv
|
|
26
|
+
ENV PATH="/app/.venv/bin:$PATH" \
|
|
27
|
+
VIRTUAL_ENV="/app/.venv"
|
|
28
|
+
|
|
29
|
+
# Copy project configuration files
|
|
30
|
+
COPY pyproject.toml .
|
|
31
|
+
COPY uv.lock .
|
|
32
|
+
|
|
33
|
+
# Install dependencies from lockfile
|
|
34
|
+
RUN uv sync --group dev --locked
|
|
35
|
+
|
|
36
|
+
# Copy source code and other files
|
|
37
|
+
COPY src/ src/
|
|
38
|
+
COPY tests/ tests/
|
|
39
|
+
COPY examples/ examples/
|
|
40
|
+
COPY README.md .
|
|
41
|
+
COPY Makefile .
|
|
42
|
+
COPY env.template .
|
|
43
|
+
|
|
44
|
+
# Default command for development
|
|
45
|
+
CMD ["bash"]
|
|
46
|
+
|
|
47
|
+
# Testing stage
|
|
48
|
+
FROM development AS testing
|
|
49
|
+
|
|
50
|
+
# Run tests by default
|
|
51
|
+
CMD ["make", "test"]
|
|
52
|
+
|
|
53
|
+
# Examples stage - for running examples
|
|
54
|
+
FROM development AS examples
|
|
55
|
+
|
|
56
|
+
# Set working directory to examples
|
|
57
|
+
WORKDIR /app/examples
|
|
58
|
+
|
|
59
|
+
# Run examples by default
|
|
60
|
+
CMD ["python", "example_usage.py"]
|
|
61
|
+
|
|
62
|
+
# Production stage - minimal SDK installation
|
|
63
|
+
FROM base AS production
|
|
64
|
+
|
|
65
|
+
# Create virtual environment
|
|
66
|
+
RUN uv venv .venv
|
|
67
|
+
ENV PATH="/app/.venv/bin:$PATH" \
|
|
68
|
+
VIRTUAL_ENV="/app/.venv"
|
|
69
|
+
|
|
70
|
+
# Copy only what's needed for production use
|
|
71
|
+
COPY pyproject.toml .
|
|
72
|
+
COPY uv.lock .
|
|
73
|
+
COPY src/ src/
|
|
74
|
+
COPY README.md .
|
|
75
|
+
|
|
76
|
+
# Install only production dependencies from lockfile
|
|
77
|
+
RUN uv sync --locked
|
|
78
|
+
|
|
79
|
+
# Default to Python shell for SDK usage
|
|
80
|
+
CMD ["python"]
|
cloudkit-0.1.2/Makefile
ADDED
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# Agentic Composer SDK - Development Makefile
|
|
2
|
+
|
|
3
|
+
.PHONY: help install install-dev test lint format clean docs publish
|
|
4
|
+
|
|
5
|
+
help: ## Show this help message
|
|
6
|
+
@echo "Agentic Composer SDK - Available commands:"
|
|
7
|
+
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
|
|
8
|
+
|
|
9
|
+
lock: ## Generate or update uv.lock file
|
|
10
|
+
uv lock
|
|
11
|
+
|
|
12
|
+
install: ## Install the SDK in development mode
|
|
13
|
+
uv venv .venv
|
|
14
|
+
source .venv/bin/activate && uv sync --locked
|
|
15
|
+
|
|
16
|
+
install-dev: ## Install SDK with development dependencies
|
|
17
|
+
uv sync --group dev --locked
|
|
18
|
+
|
|
19
|
+
test: ## Run tests with coverage
|
|
20
|
+
uv run pytest tests/ -v --cov=src --cov-report=html --cov-report=term
|
|
21
|
+
|
|
22
|
+
test-fast: ## Run tests without coverage (faster)
|
|
23
|
+
uv run pytest tests/ -v
|
|
24
|
+
|
|
25
|
+
lint: ## Run linting with ruff
|
|
26
|
+
uv run ruff check src/ tests/ examples/
|
|
27
|
+
|
|
28
|
+
lint-fix: ## Run linting with auto-fix
|
|
29
|
+
uv run ruff check --fix src/ tests/ examples/
|
|
30
|
+
|
|
31
|
+
format: ## Format code with ruff
|
|
32
|
+
uv run ruff format src/ tests/ examples/
|
|
33
|
+
|
|
34
|
+
format-check: ## Check if code is properly formatted
|
|
35
|
+
uv run ruff format --check src/ tests/ examples/
|
|
36
|
+
|
|
37
|
+
type-check: ## Run type checking with mypy
|
|
38
|
+
uv run mypy src/
|
|
39
|
+
|
|
40
|
+
clean: ## Clean up cache and build artifacts
|
|
41
|
+
find . -type d -name "__pycache__" -exec rm -rf {} +
|
|
42
|
+
find . -type d -name "*.egg-info" -exec rm -rf {} +
|
|
43
|
+
find . -type d -name ".pytest_cache" -exec rm -rf {} +
|
|
44
|
+
find . -type d -name ".mypy_cache" -exec rm -rf {} +
|
|
45
|
+
find . -type d -name ".ruff_cache" -exec rm -rf {} +
|
|
46
|
+
rm -rf build/ dist/ htmlcov/
|
|
47
|
+
|
|
48
|
+
examples: ## Run the example usage script
|
|
49
|
+
cd examples && uv run python example_usage.py
|
|
50
|
+
|
|
51
|
+
docs: ## Generate documentation (placeholder)
|
|
52
|
+
@echo "Documentation generation not yet implemented"
|
|
53
|
+
|
|
54
|
+
pre-commit: ## Run pre-commit checks (lint, format, type-check, test)
|
|
55
|
+
make format-check
|
|
56
|
+
make lint
|
|
57
|
+
make type-check
|
|
58
|
+
make test-fast
|
|
59
|
+
|
|
60
|
+
build: ## Build the package
|
|
61
|
+
uv build
|
|
62
|
+
|
|
63
|
+
publish-test: ## Publish to test PyPI
|
|
64
|
+
uv publish --repository-url https://test.pypi.org/legacy/
|
|
65
|
+
|
|
66
|
+
publish: ## Publish to PyPI
|
|
67
|
+
uv publish
|
|
68
|
+
|
|
69
|
+
# Development workflow
|
|
70
|
+
dev-setup: install-dev ## Complete development setup
|
|
71
|
+
@echo "Development environment ready!"
|
|
72
|
+
@echo "Run 'make help' to see available commands"
|
|
73
|
+
|
|
74
|
+
check-all: pre-commit ## Run all quality checks
|
|
75
|
+
@echo "All quality checks passed!"
|
cloudkit-0.1.2/config
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Agentic Composer SDK Configuration Template
|
|
2
|
+
# Copy this file to .env and fill in your actual values
|
|
3
|
+
|
|
4
|
+
# Cloud Provider Selection (azure or aws)
|
|
5
|
+
CLOUD_SDK_CLOUD_PROVIDER=azure
|
|
6
|
+
|
|
7
|
+
# Azure Configuration
|
|
8
|
+
# Storage
|
|
9
|
+
AZURE_STORAGE_CONNECTION_STRING=your_azure_storage_connection_string
|
|
10
|
+
AZURE_STORAGE_CONTAINER_NAME=your_container_name
|
|
11
|
+
|
|
12
|
+
# Cosmos DB
|
|
13
|
+
AZURE_COSMOS_NOSQL_CONNECTION_STRING=your_cosmos_nosql_connection_string
|
|
14
|
+
AZURE_COSMOS_NOSQL_DB_NAME=your_cosmos_db_name
|
|
15
|
+
AZURE_COSMOS_TABLE_CONNECTION_STRING=your_cosmos_table_connection_string
|
|
16
|
+
|
|
17
|
+
# Service Bus
|
|
18
|
+
AZURE_SERVICEBUS_CONNECTION_STRING=your_servicebus_connection_string
|
|
19
|
+
|
|
20
|
+
# Cognitive Services
|
|
21
|
+
AZURE_COGNITIVE_SERVICES_ENDPOINT=your_cognitive_services_endpoint
|
|
22
|
+
AZURE_COGNITIVE_SERVICES_KEY=your_cognitive_services_key
|
|
23
|
+
|
|
24
|
+
# Azure OpenAI
|
|
25
|
+
AZURE_OPENAI_API_KEY=your_azure_openai_api_key
|
|
26
|
+
AZURE_OPENAI_ENDPOINT=your_azure_openai_endpoint
|
|
27
|
+
AZURE_OPENAI_API_VERSION=2023-12-01-preview
|
|
28
|
+
|
|
29
|
+
# Azure Search
|
|
30
|
+
AZURE_SEARCH_SERVICE_NAME=your_search_service_name
|
|
31
|
+
AZURE_SEARCH_ADMIN_KEY=your_search_admin_key
|
|
32
|
+
|
|
33
|
+
# AWS Configuration
|
|
34
|
+
# General
|
|
35
|
+
AWS_ACCESS_KEY_ID=your_aws_access_key_id
|
|
36
|
+
AWS_SECRET_ACCESS_KEY=your_aws_secret_access_key
|
|
37
|
+
AWS_REGION=us-east-1
|
|
38
|
+
|
|
39
|
+
# S3
|
|
40
|
+
AWS_S3_BUCKET_NAME=your_s3_bucket_name
|
|
41
|
+
|
|
42
|
+
# OpenSearch
|
|
43
|
+
AWS_OPENSEARCH_ENDPOINT=your_opensearch_endpoint
|