No project description provided
Project description
[WIP] Smuggler
⚠️ This is a Work In Progress ⚠️
Smuggler is a CLI that aids with the migration of Kubernetes resources between clusters.
Quickstart
Requires Python 3.10 or superior:
# (Optional) create and activate a virtualenv to avoid cluttering the system environment
python3 -m venv venv
source venv/bin/activate
# Install Smuggler
pip install k8s-smuggler
# Do a migration, make sure the namespace $NS exists in both clusters
smuggler migrate namespace --from "$CTX1" --to "$CTX2" --namespace "$NS"
Development
Dev requirements
- Python 3.10 or superior
- Poetry for dependency management tool
Setup the dev environment with poetry install
, this will create a virtualenv with all necessary dependencies installed. Make sure to point your IDE to this virtualenv to take advantage of autocompletion.
See pyenv if you need a Python version management tool.
Project structure
The project has a very simple structure:
k8s_smuggler/
: Application source code.k8s_smuggler/main.py
: Application entrypoint.k8s_smuggler/configuration.py
: Application configuration file, all defaults go here and there should't be any configuration hardcoded anywhere else.k8s_smuggler/commands
: Handlers for CLI arguments, all subcommands are registered inentrypoint.py
.k8s_smuggler/actions
: Application specific logic.k8s_smuggler/kubernetes
: Kubernetes specific logic.k8s_smuggler/cli
: CLI specific logic, helpers that improve UX.k8s_smuggler/lib
: Generic and redistributable libraries.
dummy_service/
: Kustomize manifests for a simple service for different Kubernetes versions, you can use these to test drive the tool.test/
: Tests (or lack thereof, WIP), currently only has a script that runs the linter.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
k8s_smuggler-0.0.1.tar.gz
(13.9 kB
view details)
Built Distribution
File details
Details for the file k8s_smuggler-0.0.1.tar.gz
.
File metadata
- Download URL: k8s_smuggler-0.0.1.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.1 CPython/3.10.4 Linux/5.4.0-135-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a998739c43e36f5f76f11a159416e044291b8baa322a26f24b291aabca30be9e |
|
MD5 | a6e7a519b02fff3e9035cddda2f893ea |
|
BLAKE2b-256 | bbf1df4375d256eef077ad545e6c8f9e11ed274d9672268e98f649b227733d53 |
File details
Details for the file k8s_smuggler-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: k8s_smuggler-0.0.1-py3-none-any.whl
- Upload date:
- Size: 19.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.1 CPython/3.10.4 Linux/5.4.0-135-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c647c31066165243fa4827b03128304e96dd2021e93f54125cbd02d3dca2334a |
|
MD5 | b2f6cfddbb47196089734e5beb37b488 |
|
BLAKE2b-256 | d3426e5fd6156d3f794fab601e950ac72dc388046b0f45ceeeca6c1129dbb0d0 |