Skip to main content

View instance information on all supported cloud providers

Project description

# cloudview
View instance information on all supported cloud providers: Amazon Web Services, Azure, Google Compute Platform & OpenStack.

[![Build Status](https://travis-ci.org/ricardobranco777/cloudview.svg?branch=master)](https://travis-ci.org/ricardobranco777/cloudview)

## Usage

```
Usage: cloudview [OPTIONS]
Options:
-h, --help show this help message and exit
-l, --log debug|info|warning|error|critical
-o, --output text|html|json|JSON output type
-p, --port PORT run a web server on port PORT
-r, --reverse reverse sort
-s, --sort name|time|status sort type
-S, --status stopped|running|all filter by instance status
-T, --time TIME_FORMAT time format as used by strftime(3)
-v, --verbose be verbose
-V, --version show version and exit
Filter options:
--filter-aws NAME VALUE may be specified multiple times
--filter-azure FILTER Filter for Azure
--filter-gcp FILTER Filter for GCP
```

**NOTES**:
- Use `--output JSON` to dump _all_ available information received from each provider.
- Remember to set these environment variables:
- `GOOGLE_APPLICATION_CREDENTIALS`
- `AZURE_TENANT_ID`
- `AZURE_SUBSCRIPTION_ID`
- `AZURE_CLIENT_SECRET`
- `AZURE_CLIENT_ID`

This script is best run with Docker to have all dependencies in just one package, but it may be run stand-alone on systems with Python 3.5+

## To run stand-alone:

```
pip3 install --user cloudview
```

## To run with Docker:

Build image with:
```
docker build -t cloud --pull .
```

Export the variables listed in the [.dockerenv](.dockerenv) file and run with:

```
docker run --rm -v ~/.aws:/root/.aws:ro -v "$GOOGLE_APPLICATION_CREDENTIALS:$GOOGLE_APPLICATION_CREDENTIALS:ro" --env-file .dockerenv cloudview --status all
```

## Run the web server with [Docker Compose](https://docs.docker.com/compose/install/):

If you have a TLS key pair, rename the certificate to `cert.pem`, the private key to `key.pem` and the file containing the password to the private key to `key.txt`. Then edit the [docker-compose.yml](docker-compose.yml) file to mount them to `/etc/nginx/ssl` in read-only mode like this: `- "/path/to/tls:/etc/nginx/ssl:ro"`.

If you don't have a TLS key pair, a self-signed certificate will be generated. Be aware of the typical problems with time resolution related to TLS certificates.


```
docker-compose up -d
```

Now browse to [https://localhost:8443](https://localhost:8443)

To stop the web server:
```
docker-compose down
```

To rebuild with latest version:
```
docker-compose build --pull
```

## TODO
- Search by tag
- Sort by instance type
- Use apache-libcloud?


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

cloudview-0.2.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

cloudview-0.2.0-py3-none-any.whl (18.8 kB view details)

Uploaded Python 3

File details

Details for the file cloudview-0.2.0.tar.gz.

File metadata

  • Download URL: cloudview-0.2.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for cloudview-0.2.0.tar.gz
Algorithm Hash digest
SHA256 f33dcc65500402d1ee893afcda6d38f24aece9d877b4df5a6b99342e880142dd
MD5 f91ae278b205f9139adae494892133ff
BLAKE2b-256 41d7ed3b85d07c41f00fa904ccca5844921e3bf2036bd7396749c9156f5e45e1

See more details on using hashes here.

File details

Details for the file cloudview-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: cloudview-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 18.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7

File hashes

Hashes for cloudview-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b29436b4eb8f8be5b10b578ae744f49ba55b13936ea142c50d278af4a50c4a95
MD5 dadc9d3dd59553ac0fb753318cf98f99
BLAKE2b-256 e472aa59dba2b6296441b609c5f5ef66eeceaed0733186d5314eb2c650b91448

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