Skip to main content

NebulaPythonSDK is a Pythonic SDK to manage Nebula container orchestrator

Project description

Nebula-Python-SDK

An SDK for managing nebula via python.

translates all of Nebula API calls to something more pythonic.

Source code is available at github

How To Use

first get NebulaPythonSDK onto your machine

# Install from PyPi
pip install NebulaPythonSDK

now use it in your code

# Load API wrapper from library
from NebulaPythonSDK import Nebula

# Create API object.
# port defaults to 80, protocol defaults to "http" & request_timeout defaults to 60 if any of them is not set.
connection = Nebula(username="your_nebula_user", password="your_nebula_pass", host="nebula.example.com", port=80, protocol="http", request_timeout=60)

# List apps
app_list = connection.list_apps()

# List app info
app_config = connection.list_app_info("app_name")

# Create app
app_conf = {
    "containers_per_cpu": 8,
    "env_vars": {
        "test": "blabla",
        "test3t2t32": "tesg4ehgee"
    },
    "docker_ulimits": [],
    "networks": ["nebula"],
    "running": True,
    "rolling_restart": False,
    "volumes": ["/tmp:/tmp/1", "/var/tmp/:/var/tmp/1:ro"],
    "containers_per": {
        "cpu": 6
    },
    "starting_ports": [
        {
            "81": 80
        }
    ],
    "docker_image": "httpd",
    "privileged": False,
    "devices": []
}
connection.create_app("app_name", app_conf)

# create device group
device_group_config = {"apps": ["app_name"]}
connection.create_device_group("device_group_name", device_group_config)

# list device group
connection.list_device_group("device_group_name")

# list device group info
connection.list_device_group_info("device_group_name")

# ping api
connection.check_api()

# delete app
connection.delete_app("app_name")

# stop app
connection.stop_app("app_name")

# start app
connection.start_app("app_name")

# restart app
connection.restart_app("app_name")

# update app
connection.update_app("app_name", app_conf)

# prune images on all device groups
connection.prune_images()

# delete device_group
connection.delete_device_group("device_group_name")

# prune images on a selected device groups
connection.prune__device_group_images("device_group_name")

# update device group
connection.update_device_group("device_group_name", device_group_config)

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

NebulaPythonSDK-2.0.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

NebulaPythonSDK-2.0.0-py2-none-any.whl (19.1 kB view details)

Uploaded Python 2

File details

Details for the file NebulaPythonSDK-2.0.0.tar.gz.

File metadata

  • Download URL: NebulaPythonSDK-2.0.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for NebulaPythonSDK-2.0.0.tar.gz
Algorithm Hash digest
SHA256 b48145a15a89cf0be4ddd3a8602c17ab8990a14174a23fb9a728b24d14c98ff5
MD5 fa5c0fafc43453fbc02dcf418c5709c8
BLAKE2b-256 2d48f5b35ac5fa6d454575c006cbeb0d025600ea1575a98c4c488359113695a0

See more details on using hashes here.

Provenance

File details

Details for the file NebulaPythonSDK-2.0.0-py2-none-any.whl.

File metadata

  • Download URL: NebulaPythonSDK-2.0.0-py2-none-any.whl
  • Upload date:
  • Size: 19.1 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.5.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.15

File hashes

Hashes for NebulaPythonSDK-2.0.0-py2-none-any.whl
Algorithm Hash digest
SHA256 1f96d7460cae18cdda4fd7d57728543a883d7e547aca84ab8460993db2d874ff
MD5 3741d57b63f69264de2141ca765e51dc
BLAKE2b-256 25c66e603fc3de68c63ffa0ce5486edf7373fb3a42932671958c2f00d9bb1ff5

See more details on using hashes here.

Provenance

Supported by

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