This release is a pre-release and may not be stable for production use.
sanka-migrate
The Sanka Migrate Runtime: the migration
lifecycle (create → inspect → plan → apply → verify), planner, execution
engine (batching, throttling, retries, checkpoints, resume, identity ledger),
local state store, verification framework, and the sanka-migrate CLI.
The runtime is licensed AGPL-3.0-only; the connector interface and bundled first-party connectors retain Apache-2.0 source licenses inside the same distribution. Commercial licenses are available from Sanka, Inc. for embedding the runtime without AGPL obligations.
Status: pre-release. Migration-as-code specs (sanka.runtime.spec, YAML +
programmatic, with env-reference resolution and secret-key rejection) and
canonical plan hashing (sanka.runtime.hashing) are in place, together with
the engine, state store, and CLI lifecycle commands. APIs may still change
before the first stable release.
Python quick start
The distribution name and import name are intentionally different:
pip install sanka-migrate
import asyncio
from sanka import Sanka
async def main() -> None:
with Sanka() as sanka:
source = sanka.connect("markdown", "./content")
target = sanka.connect("sqlite", "content.db")
migration = sanka.migrate(source, target)
plan = await migration.plan()
await migration.apply(plan_hash=plan.plan_hash)
report = await migration.verify()
assert report.ok
asyncio.run(main())
The same bundled-provider discovery is available from the CLI:
sanka-migrate connect hubspot
Advanced integrations can use the typed sanka.runtime modules directly.
Public research and assessment
The CLI also reads Sanka Migrate's cited, keyless research API and can submit a free migration assessment:
sanka-migrate research eol --after 2027-01 --type shutdown
sanka-migrate research tco salesforce --lang en
sanka-migrate research compare crm-migration --platforms salesforce,hubspot
sanka-migrate assess --source "SAP ECC" --destination "HubSpot"
Research output includes per-claim vendor sources and terminal attribution.
Use --json for the unwrapped API data payload. Filtered queries with no rows
exit 2; API or transport failures exit 1. The default public API base is
https://api.sanka.com/v2/migrate; set SANKA_MIGRATE_API_BASE only when
testing an explicitly trusted staging deployment.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sanka_migrate-0.1.0a2.tar.gz.
File metadata
- Download URL: sanka_migrate-0.1.0a2.tar.gz
- Upload date:
- Size: 214.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b8ebbec3ab02ead4c55a899abe61fdb21085b4c5f595cd275e559313077ac778
|
|
| MD5 |
095d794dae15a131db093ca261ae9d08
|
|
| BLAKE2b-256 |
6e017fd51ff4b22f914f8293fe2479513bc71d6fcaff46fdf6d5b8fa72f032f0
|
Provenance
The following attestation bundles were made for sanka_migrate-0.1.0a2.tar.gz:
Publisher:
publish.yml on sankaHQ/sanka
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sanka_migrate-0.1.0a2.tar.gz -
Subject digest:
b8ebbec3ab02ead4c55a899abe61fdb21085b4c5f595cd275e559313077ac778 - Sigstore transparency entry: 2539041340
- Sigstore integration time:
-
Permalink:
sankaHQ/sanka@1234239d46f20ac23770039bcec4c2702625c618 -
Branch / Tag:
refs/tags/v0.1.0a2 - Owner: https://github.com/sankaHQ
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@1234239d46f20ac23770039bcec4c2702625c618 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file sanka_migrate-0.1.0a2-py3-none-any.whl.
File metadata
- Download URL: sanka_migrate-0.1.0a2-py3-none-any.whl
- Upload date:
- Size: 184.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7e48c57b225d54d0ed5637b8749fd18a519c8acff9bd52714afa4b8e3f6efba
|
|
| MD5 |
56b56db755ced11042ac20782b51ea96
|
|
| BLAKE2b-256 |
6541449ecd5f3f368fa3285cffd4d495c1b471799867655d0c54306ac0eab614
|
Provenance
The following attestation bundles were made for sanka_migrate-0.1.0a2-py3-none-any.whl:
Publisher:
publish.yml on sankaHQ/sanka
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sanka_migrate-0.1.0a2-py3-none-any.whl -
Subject digest:
d7e48c57b225d54d0ed5637b8749fd18a519c8acff9bd52714afa4b8e3f6efba - Sigstore transparency entry: 2539041385
- Sigstore integration time:
-
Permalink:
sankaHQ/sanka@1234239d46f20ac23770039bcec4c2702625c618 -
Branch / Tag:
refs/tags/v0.1.0a2 - Owner: https://github.com/sankaHQ
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@1234239d46f20ac23770039bcec4c2702625c618 -
Trigger Event:
workflow_dispatch
-
Statement type: