Skip to main content

Shared library for the N8 Group migration product family

Project description

migration-core

Shared Python library for the N8 Group migration product family.

migration-core packages the GitHub-side adapters, shared target models, exception hierarchy, and identity helpers used by migration tools such as bb2gh and ado2gh.

What This Package Includes

  • GitHub target adapter abstractions and implementations under migration_core.adapters
  • Shared GitHub-facing data models under migration_core.models
  • Shared exception types under migration_core.exceptions
  • Enterprise identity helpers and clients under migration_core.identity
  • Supporting architecture and specification docs in docs/ and .specify/

This repository is a library package. It does not currently ship a standalone CLI.

Installation

Install the base package from a package index:

python -m pip install migration-core

Install with GitHub App authentication support:

python -m pip install "migration-core[github-app]"

Install from source for local development and release verification:

python -m pip install -e ".[dev,github-app]"

Optional Extras

  • github-app - adds pyjwt[crypto] for GitHub App JWT generation used by the multi-app adapter flow
  • dev - adds local quality and packaging tools, including pytest, ruff, mypy, and build

Local Verification

After installing the development extras, run:

python -m build
python -m pytest -v
ruff check src tests
mypy src

Current Module Surface

Top-level package exports:

from migration_core import __version__
from migration_core.adapters import SourceAdapter, TargetAdapter
from migration_core.adapters.github import (
    GitHubAppConfig,
    GitHubBaseAdapter,
    GitHubCloudAdapter,
    GitHubCloudDRAdapter,
    GitHubServerAdapter,
    MultiAppGitHubAdapter,
)
from migration_core.exceptions import APIError, MigrationError
from migration_core.models import GitHubRulesetConfig, Repository, User

Additional identity clients are available as submodules:

from migration_core.identity.github_saml import GitHubSAMLClient
from migration_core.identity.github_scim import GitHubSCIMClient

Repository Layout

  • src/migration_core/ - package source
  • tests/ - unit and integration tests
  • docs/architecture/ - architecture reference docs
  • .specify/ - shared specification kit assets used by product repos

License

Licensed under the Business Source License 1.1. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

migration_core-0.1.0rc1.tar.gz (54.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

migration_core-0.1.0rc1-py3-none-any.whl (34.2 kB view details)

Uploaded Python 3

File details

Details for the file migration_core-0.1.0rc1.tar.gz.

File metadata

  • Download URL: migration_core-0.1.0rc1.tar.gz
  • Upload date:
  • Size: 54.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for migration_core-0.1.0rc1.tar.gz
Algorithm Hash digest
SHA256 1351b80566904f1cb542512dd32405842783dbdeb9cb9ce6da5db65dd0b23c44
MD5 b15f2538482c5bdd7b3cfc043a4f6e43
BLAKE2b-256 31fa8526b31772e8b39dcda1564669143e5795dcbf9bb5953a0a586e7f096eb4

See more details on using hashes here.

Provenance

The following attestation bundles were made for migration_core-0.1.0rc1.tar.gz:

Publisher: publish.yml on n8group-oss/migration-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file migration_core-0.1.0rc1-py3-none-any.whl.

File metadata

File hashes

Hashes for migration_core-0.1.0rc1-py3-none-any.whl
Algorithm Hash digest
SHA256 87d4b9dfcfec2cc1c1f0a03fbb326d7bb0d884bdcefb4a2209f77f10e57dc8dc
MD5 42636b36ca05adc9d1cfaa674fe2492a
BLAKE2b-256 a41a9d3220fb55ac2bc27e8faed9858e9b711130c11b2edc13c1af05f1a0c801

See more details on using hashes here.

Provenance

The following attestation bundles were made for migration_core-0.1.0rc1-py3-none-any.whl:

Publisher: publish.yml on n8group-oss/migration-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page