# AWS GCP Check

This script is a wrapper for AWS CLI and gcloud SDK for listing the following things:

* Weekly Costs of PingCAP's AWS accounts
    * `pingcap` (Main testing account for DBaaS Testing)
    * `pingcap-dbaas` (Main account for DBaaS)
    * `pingcap-testing` (Account for Misc tests)
* All running instances of the above accounts
* All running instances of PingCAP's GCP accounts (TODO)

## Install AWS CLI and Google Cloud SDK

```
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip

sudo ./aws/install
```

```
https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-315.0.0-linux-x86_64.tar.gz
tar -xvf google-cloud-sdk-315.0.0-linux-x86_64.tar.gz
./google-cloud-sdk/install.sh
```

Init gcloud:

```
gcloud init --console-only
```

## Configure AWS CLI

Create files at `~/.aws/credentials` with the following content:

```
[pingcap-test]
aws_access_key_id = ATTACKMEOKAY 
aws_secret_access_key = YOOOOTHISISFAKEKEYEAAAHH
region = us-west-2

[pingcap]
aws_access_key_id = ATTACKMEOKAY
aws_secret_access_key = YOOOOTHISISFAKEKEYEAAAHH
region = us-west-2

[pingcap-dbaas]
aws_access_key_id = ATTACKMEOKAY
aws_secret_access_key = YOOOOTHISISFAKEKEYEAAAHH
region = us-west-2
```

## Use script

```
python3 check.py
```

## Example Output

```
During 2020-10-24~2020-10-30

[AWS Account] pingcap 9999.3858375568 USD
[AWS Account] pingcap-dbaas 9999.1686490046 USD
[AWS Account] pingcap-test 9999.8039742712 USD
==================================================================
AWS Instances
[AWS Account pingcap]
=================================================
AWS Region: us-east-1
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
|                                                                          DescribeInstances                                                                         |
+------------------------------------------------------+-------------+------------+----------+------------------------------------------+----------------------------+
|  fake-huichang                                       |  us-east-1a |  t2.micro  |  running |  fake-huichang                           |  2029-08-26T13:17:02+00:00 |
+------------------------------------------------------+-------------+------------+----------+------------------------------------------+----------------------------+

AWS Region: us-west-1
-------------------------------------------------------------------------------------------------------------
|                                             DescribeInstances                                             |
+-----------------------------+-------------+------------+----------+---------+-----------------------------+
|  ee-service-02              |  us-west-1b |  t2.small  |  running |  wangdi |  2010-06-09T07:48:13+00:00  |
+-----------------------------+-------------+------------+----------+---------+-----------------------------+

```