Skip to main content

Annet Netbox client

Project description

Annetbox - Netbox client used by annet and related projects

This project implements subset of Netbox API methods

Usage

  1. Install sync or async version
pip install 'annetbox[sync]'
  1. Create client instance according to your netbox version (only some are supported)
from annetbox.v37.client_sync import NetboxV37

netbox = NetboxV37(url="https://demo.netbox.dev", token="YOUR NETBOX TOKEN")
  1. Call methods
res = netbox.dcim_devices(limit=1)

Configuration

Verbose logging

For sync client

import http.client
import logging

logging.basicConfig()
http.client.HTTPConnection.debuglevel = 1
requests_log = logging.getLogger("requests.packages.urllib3")
requests_log.setLevel(logging.DEBUG)
requests_log.propagate = True

Custom SSL context

  1. Create context
import ssl

context = ssl.create_default_context(cafile="path/to/cacert.pem")
  1. Pass it to client
netbox = NetboxV37(url=url, token=token, ssl_context=context)

Development

Adding new methods

  1. Read openapi spec
  2. Edit models.py
  3. Edit client_async.py, do not forget adding limit/offset
  4. Convert async code to sync
python transform_to_sync.py src/annetbox/v37/client_async.py > src/annetbox/v37/client_sync.py

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

annetbox-0.1.10.tar.gz (9.1 kB view details)

Uploaded Source

Built Distribution

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

annetbox-0.1.10-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file annetbox-0.1.10.tar.gz.

File metadata

  • Download URL: annetbox-0.1.10.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for annetbox-0.1.10.tar.gz
Algorithm Hash digest
SHA256 f55fe9d1246d49d1affa8c202cc07e8e7eb9fc941799ba78dbc166bbf6a621d2
MD5 bb3dd45529bfc8929b100184d2a1e6b9
BLAKE2b-256 5a3ec5baa58037234b6cefaa03826287b5cc2c9ac2473d8923f4d4e7d06a8fe2

See more details on using hashes here.

Provenance

The following attestation bundles were made for annetbox-0.1.10.tar.gz:

Publisher: publish-to-pypi.yml on annetutil/annetbox

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

File details

Details for the file annetbox-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: annetbox-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for annetbox-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3c3f6e8dc0a7ac887a7da11dc7d1a7c37a3a30dd7c3760da826a94048818898c
MD5 a111f142f1e26d4a448a8ca3c0853e9c
BLAKE2b-256 c72e1cfe50a82477e5dce4fde62e66de1d8da8faba5a711b9c5d9bde86f94e49

See more details on using hashes here.

Provenance

The following attestation bundles were made for annetbox-0.1.10-py3-none-any.whl:

Publisher: publish-to-pypi.yml on annetutil/annetbox

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