A Python SDK for Spotinst
Project description
[](https://travis-ci.org/spotinst/spotinst-sdk-python)
[](https://coveralls.io/github/spotinst/spotinst-sdk-python?branch=master)
[](https://www.python.org/downloads/release/python-270/)
[](https://www.python.org/downloads/release/python-360/)
# spotinst-sdk-python
Spotinst SDK for the Python programming language
## Table of contents
<!--ts-->
* [Installation](#installation)
* [Configuring Credentials](#configuring-credentials)
* [SDK Docs](./docs/pydocmd/)
* [Endpoints](./docs/pydocmd/endpoints/)
* [Elastigroup](./docs/pydocmd/endpoints/elastigroup/)
* [Functions](./docs/pydocmd/endpoints/functions/)
* [Administration](./docs/pydocmd/endpoints/administration/)
* [Multai Load Balancer](./docs/pydocmd/endpoints/mlb)
* [Ocean](./docs/pydocmd/endpoints/ocean)
* [Examples](./docs/pydocmd/examples/)
* [Classes](./docs/pydocmd/classes/)
* [ASG](./docs/pydocmd/classes/asg.md)
* [Deployment](./docs/pydocmd/classes/deployment.md)
* [Deployment Action](./docs/pydocmd/classes/deployment_action.md)
* [Elastigroup](./docs/pydocmd/classes/elastigroup.md)
* [EMR](./docs/pydocmd/classes/emr.md)
* [Functions](./docs/pydocmd/classes/functions.md)
* [MLB](./docs/pydocmd/classes/mlb.md)
* [Stateful](./docs/pydocmd/classes/stateful.md)
* [User Mapping](./docs/pydocmd/classes/user_mapping.md)
* [Ocean](./docs/pydocmd/classes/ocean.md)
<!--te-->
## Installation
```bash
pip install --upgrade spotinst-sdk
```
## Configuring Credentials
The mechanism in which the sdk looks for credentials is to search through a list of possible locations and stop as soon as it finds credentials.
The order in which the sdk searches for credentials is:
1. Passing credentials as parameters to the `SpotinstClient()` constructor
- example
```python
client = SpotinstClient(auth_token='token', account_id='act-123')
```
2. Fetching the account and token from environment variables under `SPOTINST_ACCOUNT` & `SPOTINST_TOKEN`
If you choose to not pass your credentials directly you configure a credentials file, this file should be a valid `.yml` file.
The default shared credential file location is `~/.spotinst/credentials` and the default profile is `default`
- example
```yaml
default: #profile
token: $defaul_spotinst_token
account: $default_spotinst-account-id
my_profle:
token: $my_spotinst_token
account: $my_spotinst-account-id
```
3. You can overwrite the credentials file location and the profile used as parameters in the `SpotinstClient()` constructor
- example
```python
client = SpotinstClient(credentials_file='/path/to/file', profile='my_profile')
```
4. You can overwrite the credentials file location and the profile used as environment variables `SPOTINST_PROFILE` and/or `SPOTINST_SHARED_CREDENTIALS_FILE`
5. Fetching from the default location with the default profile
[](https://coveralls.io/github/spotinst/spotinst-sdk-python?branch=master)
[](https://www.python.org/downloads/release/python-270/)
[](https://www.python.org/downloads/release/python-360/)
# spotinst-sdk-python
Spotinst SDK for the Python programming language
## Table of contents
<!--ts-->
* [Installation](#installation)
* [Configuring Credentials](#configuring-credentials)
* [SDK Docs](./docs/pydocmd/)
* [Endpoints](./docs/pydocmd/endpoints/)
* [Elastigroup](./docs/pydocmd/endpoints/elastigroup/)
* [Functions](./docs/pydocmd/endpoints/functions/)
* [Administration](./docs/pydocmd/endpoints/administration/)
* [Multai Load Balancer](./docs/pydocmd/endpoints/mlb)
* [Ocean](./docs/pydocmd/endpoints/ocean)
* [Examples](./docs/pydocmd/examples/)
* [Classes](./docs/pydocmd/classes/)
* [ASG](./docs/pydocmd/classes/asg.md)
* [Deployment](./docs/pydocmd/classes/deployment.md)
* [Deployment Action](./docs/pydocmd/classes/deployment_action.md)
* [Elastigroup](./docs/pydocmd/classes/elastigroup.md)
* [EMR](./docs/pydocmd/classes/emr.md)
* [Functions](./docs/pydocmd/classes/functions.md)
* [MLB](./docs/pydocmd/classes/mlb.md)
* [Stateful](./docs/pydocmd/classes/stateful.md)
* [User Mapping](./docs/pydocmd/classes/user_mapping.md)
* [Ocean](./docs/pydocmd/classes/ocean.md)
<!--te-->
## Installation
```bash
pip install --upgrade spotinst-sdk
```
## Configuring Credentials
The mechanism in which the sdk looks for credentials is to search through a list of possible locations and stop as soon as it finds credentials.
The order in which the sdk searches for credentials is:
1. Passing credentials as parameters to the `SpotinstClient()` constructor
- example
```python
client = SpotinstClient(auth_token='token', account_id='act-123')
```
2. Fetching the account and token from environment variables under `SPOTINST_ACCOUNT` & `SPOTINST_TOKEN`
If you choose to not pass your credentials directly you configure a credentials file, this file should be a valid `.yml` file.
The default shared credential file location is `~/.spotinst/credentials` and the default profile is `default`
- example
```yaml
default: #profile
token: $defaul_spotinst_token
account: $default_spotinst-account-id
my_profle:
token: $my_spotinst_token
account: $my_spotinst-account-id
```
3. You can overwrite the credentials file location and the profile used as parameters in the `SpotinstClient()` constructor
- example
```python
client = SpotinstClient(credentials_file='/path/to/file', profile='my_profile')
```
4. You can overwrite the credentials file location and the profile used as environment variables `SPOTINST_PROFILE` and/or `SPOTINST_SHARED_CREDENTIALS_FILE`
5. Fetching from the default location with the default profile
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
spotinst-sdk-beta-1.0.44.tar.gz
(25.1 kB
view details)
File details
Details for the file spotinst-sdk-beta-1.0.44.tar.gz.
File metadata
- Download URL: spotinst-sdk-beta-1.0.44.tar.gz
- Upload date:
- Size: 25.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.6.0 setuptools/0.9.8 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e2f4eecbd128f2ab910e973a00d37aacd0bbba15f87383887d40d4c150bd8ee
|
|
| MD5 |
df2ddaa42b8a76d2c7826772d1cb0e58
|
|
| BLAKE2b-256 |
60f53a98547586e8db64bb2331eb90e2305d4d32810c2ce8f79b5f98f225db2a
|