Easy Kubernetes Port-Forward For Python
Project description
Easy Kubernetes Port-Forward For Python
Free software: MIT license
Documentation: https://portforward.readthedocs.io.
Installation
Wheels are available for:
Windows
MacOS X
Linux
with Python versions:
3.7
3.8
3.9
3.10
3.11
and architectures:
x84_64
arm64 (known as M1/Apple Chip - MacOS only)
Requirements for installation from source
The following things are required when there is no wheel available for the target system.
Rust installed and available in the path (https://www.rust-lang.org/tools/install)
Python (at least v3.7 - below was never tested but might work)
Pip knows how to install portforward.
pip install portforward
Quickstart
import requests
import portforward
def main():
namespace = "test"
pod_name = "web" # You can also use a service name instead
local_port = 9000 # from port
pod_port = 80 # to port
# No path to kube config provided - will use default from $HOME/.kube/config
with portforward.forward(namespace, pod_name, local_port, pod_port):
response = requests.get("http://localhost:9000")
print(f"Done: \n'{response.status_code}'\n'{response.text[:20]}...'")
if __name__ == "__main__":
main()
Features
Native Kubernetes port-forwarding with the .kube/config from the home dir or any other path to config.
Portforward for pods and services - the lib will first look for a pod with matching name then for a service
Waiting for a pod to become ready
Multiple forwards per pod or service
As context manager, sync or async client
Development
In case you want to develop on this library itself please take a look at the CONTRIBUTING page.
Credits
This project is enabled by PyO3.
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
Built Distributions
Hashes for portforward-0.6.1-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4821e70077b989d7a8476dacdb3433c67dae1a5ff7f402fe3d88603b9b5ffb9c |
|
MD5 | becec1023d7d265bae05544500328458 |
|
BLAKE2b-256 | 152dd9d2506b38538f36472d8f6e6675987878b51806fa216da87776466a6b6b |
Hashes for portforward-0.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fd966d5868ca14f37624a13eec12b370145c51690130405ce1b23c5e3f89f2db |
|
MD5 | 744b0a2d3931210cce8f12db252548a1 |
|
BLAKE2b-256 | b4be2499d8519496c3b03635458579c563d0d73232243264bed2d88de4e60671 |
Hashes for portforward-0.6.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06e81e16917c8d22d86d222ebf80354f7a12bafc17abaf4f871fc6b37bc39e1f |
|
MD5 | bcdf35a45499d3e8c03d8f0e6a46b9e2 |
|
BLAKE2b-256 | 3ea1f637abed8e7b745bcff7bdeeae1715442e1f19a54f59fb1dc66edc9db70f |
Hashes for portforward-0.6.1-cp311-cp311-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d19f686584d19c612b4d165f1b462bb5545bb4179f90b0ed7cb5cd709bd3abe |
|
MD5 | fc420d10960e104ad1d1a381850852f6 |
|
BLAKE2b-256 | 062593d2c91f7e363af0e343ec7afd1bffd96a805b0802aa6bd971fba7a969fa |
Hashes for portforward-0.6.1-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8bb4a32ec1f0fcaf35e06b28ad06d676d00706c355c7c491031adc537c12d3c |
|
MD5 | 8866bc4af13fc2d5b237515d0be46267 |
|
BLAKE2b-256 | 16c790328da64b0793521403ae7d7d39e63028c8e92a1e7b17691e8f8cefca69 |
Hashes for portforward-0.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf7179cd2d00ece29f1718751a9aec5e003f0a5001a755532be45a2e67b786a6 |
|
MD5 | aa40c9477ee9554489151e545d5e477a |
|
BLAKE2b-256 | 069378ce3d37273dda9eb65ba489df9b4845eca60bd4cd593e5881a07b702288 |
Hashes for portforward-0.6.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e86a9c53daf7814b1df5ab5708b9b54dbffb2ed606647366025d803d4b7ec517 |
|
MD5 | 9b54aa88b66a9b0aac8407c76eeb8560 |
|
BLAKE2b-256 | 99fcfdf61d8dbafea0fd80d86a68d721e429e1c27c6328a6e2ede36576c25b9d |
Hashes for portforward-0.6.1-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab8d6118cce191c65ae38872fe8eec877d5e57a11806528ab0c2445a952bf687 |
|
MD5 | 615e70dd9816253feb461136d444a491 |
|
BLAKE2b-256 | 3af08562433e9daa94765f2f40f8f1488c622a1dd3ae5ba941a27634779e6542 |
Hashes for portforward-0.6.1-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 907a37a0a9b0c532914610e6f60485031fec6cec364f4330e1051bc9c92d9369 |
|
MD5 | 4fc04ffd787f16e7d630f0df6c4afef6 |
|
BLAKE2b-256 | 6cd71096253146aea340a73baae49d53e8c07c957f0a9086e8e64bffb6f49cd1 |
Hashes for portforward-0.6.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c951818c0da31f0725c7a16fdba37dbd20070fa4213da697c64379c1b1cbdfea |
|
MD5 | e1fc962fe6a88503eb21565fd620360e |
|
BLAKE2b-256 | 82477d41f338b502d1bfff14ffff3e4d2a0e2faf794e6914724cb233c9eada64 |
Hashes for portforward-0.6.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d49826820bf382d9af4fb026fc270632c0bbf6f8a04f7a047947244692c91984 |
|
MD5 | c632ed8cba6e4374bbeb85c8101053ad |
|
BLAKE2b-256 | 8a585104acdc631d6deb4ff5973269d4c64a539e548afb37a6805df45f2f2f75 |
Hashes for portforward-0.6.1-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bf610bc3388d8f35abfe7690fd235fa96d9cdffcb48d2685710b638c85042808 |
|
MD5 | 1f6beef8d55f90b487e7cfebdc1a73d4 |
|
BLAKE2b-256 | 4096e6a4c8f1fd8e43cfff40516f973de97035ac8dd76a99dc85933f4ee50c4e |
Hashes for portforward-0.6.1-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a13e4ff56502f9114f3a4a1b35f304a59480e4d8db0b5bacb728dd1936e4f3b |
|
MD5 | b87ff07666b4032b19dafde713a168be |
|
BLAKE2b-256 | 44bd09f4acb62f90e8dd9e0535bc35647334659b6ee5a65eb4289938dbe9a28d |
Hashes for portforward-0.6.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65de7d770874851a1b5797cf44caeb6e2e60ae8c62e0b59974dd0e2d1566364b |
|
MD5 | 0d5df4c0e9ac890adbd819bb9df6414f |
|
BLAKE2b-256 | f8341b65ad30ef9b60dc0e943f31d24eee50d9c4b403d9e53856fbb72e8861f0 |
Hashes for portforward-0.6.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 49a44fe67fb957af4e9c38dfa9c1b20b020f08088699bd0ce37eef9f3bd50c66 |
|
MD5 | a79d78eb342a23f42e378da5b7505db8 |
|
BLAKE2b-256 | ccd8af57e18b2283fe7a02baad7bcfd54292d89cc4605d16ec4def6f32b09bdb |
Hashes for portforward-0.6.1-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f7a2b22a1d8088c82140e8bbdaa44651aef11e7cd613e416c7443d6ed6c1533 |
|
MD5 | 2ab1bf3cc60c492e8abf5bc7aee4473f |
|
BLAKE2b-256 | 83cd4eed80c7cccbbea29356a9e5eed99542852da9f769758d0c0bec1c77bbef |
Hashes for portforward-0.6.1-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9cdd1f47b9db9a3d88580b54e19f1da739f960188609a40a988b4b68101551d7 |
|
MD5 | bec9e1dc0410d5d38b35bea3334f8980 |
|
BLAKE2b-256 | 760409847a93f6c904ccb8cf0018d247c560e4a9b7951976a08b015131495025 |
Hashes for portforward-0.6.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 104e6a16020785af7ac49ce22fa5aa188fbb1c851b5c4ca7fd6ed8af077aff50 |
|
MD5 | 032abf582b28cd2e825cf9ff92adb53e |
|
BLAKE2b-256 | 5eebcf53087849fbc6cf47137bcd036d5f71a0c93d83204f5131cf990f4c0f7b |
Hashes for portforward-0.6.1-cp37-cp37m-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fbf8c41d8a9b76bef2298b7b84a67d6ddea284e8aac416d675dea2aa32227008 |
|
MD5 | ea5327e224b34c6c17cb6936390a16ce |
|
BLAKE2b-256 | 1f4040367090a8dab9c95c71316454c9daa5b854f7c97cb6dbc35d46c03b7b7c |
Hashes for portforward-0.6.1-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54109eb5d879ae93e1c517e265f7d44e1edd1c4de4e0dc78ed4cf89abc5d2def |
|
MD5 | 9a84be6a032834c5c8927307c65e95a1 |
|
BLAKE2b-256 | f604260bba36dfe784b653f32ad7b9d9ded4a9de1b1f2570dfbb20bd9062d7af |