Skip to main content

Module that determines a host's cloud provider

Project description

cloud-detect

PyPI - Python Version PyPI PyPI - License Build Status

About

cloud-detect is a Python module that determines a host's cloud provider. Highly inspired by the Go based Satellite, cloud-detect uses the same techniques (file systems and provider metadata) to properly identify cloud providers.

Features

  • Supports identification of Alibaba, AWS, Azure, Digital Ocean, GCP, Oracle Cloud and Vultr hosts.
  • Fast and supports asyncio
  • Logging integration.
  • Small and extensible.

Usage

>>> from cloud_detect import provider
>>> provider()
'aws'

>>> provider() # when tested in local/non-supported cloud env
'unknown'

Right now the only possible responses are: 'alibaba', 'aws', 'azure', 'do', 'gcp', 'oci', 'vultr' or 'unknown'

You can get the list of supported providers using

>>> from cloud_detect import SUPPORTED_PROVIDERS

Installation

Via pip:

pip install cloud-detect

Examples

Termination-handler uses cloud-detect to keep the handling of termination notices on spot/preemptible instances cloud-agnostic, making easier to operate the same tooling in various distinct environments.

How to contribute

  1. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.
  2. Fork the repository on GitHub to start making your changes to the master branch (or branch off of it).
  3. Write a test which shows that the bug was fixed or that the feature works as expected.
  4. Send a pull request and bug me until it gets merged and published.

Some things that would be great to have:

  • Add more cloud providers
  • Add codecov

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

cloud-detect-0.0.13.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

cloud_detect-0.0.13-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file cloud-detect-0.0.13.tar.gz.

File metadata

  • Download URL: cloud-detect-0.0.13.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for cloud-detect-0.0.13.tar.gz
Algorithm Hash digest
SHA256 05b5bf007ed8332a26158717fe61b38bf3581e4a6eff8d35f1d03f50a6ee9822
MD5 40752758a4d9da77336d4155427eeaba
BLAKE2b-256 bf6224bed800541c4312b5bc73d528408c3ce7577b5f295e55630c5b7ba99841

See more details on using hashes here.

File details

Details for the file cloud_detect-0.0.13-py3-none-any.whl.

File metadata

File hashes

Hashes for cloud_detect-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 6c85f6d808f8ec6c6770fb3ef7d8b3250643e64e39e8b23b06f03dc8773eb51a
MD5 6d5e4cc8d8579372fcb7cc5a8a73ba1d
BLAKE2b-256 515605c2aea92e2d9f6f174848230a847027adb18cdf140a9f699fe0d1e2bfa1

See more details on using hashes here.

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