Skip to content

Commit 0cdd4cc

Browse files
Merge branch 'aws-samples:main' into feature/migrate-to-non-legacy-views
2 parents 4790ce0 + 891c063 commit 0cdd4cc

File tree

14 files changed

+574
-365
lines changed

14 files changed

+574
-365
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
*~
55
*#
66
*.swp
7+
*.log
78

89
# Python specific
910
build/

cid/__init__.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
from cid.common import Cid
1+
# Declare namespace
22

33
__import__('pkg_resources').declare_namespace(__name__)
4-
5-
__all__ = ["Cid"]

cid/_version.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
2+
__version__ = '0.1.7'

cid/builtin/core/__init__.py

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1 @@
1-
# This plugin implements TAO dashboard
2-
3-
def onInit(cxt):
4-
# STS context, extract user session -> detect Bubblewand
5-
cxt.defaultAthenaDataSource = 'defaultDS'
6-
cxt.defaultAthenaDatabase = 'defaultDS'
7-
cxt.defaultAthenaTable = 'defaultDS'
8-
pass
1+
# This plugin implements Core dashboards
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
CREATE OR REPLACE VIEW account_map AS
2-
SELECT account_id,
3-
concat(account_name, ': ', account_id) account_name
2+
SELECT ${account_id} as account_id,
3+
concat(${account_name}, ': ', ${account_id}) account_name
44
FROM ${metadata_table_name}

cid/builtin/core/data/queries/shared/aws_accounts.sql

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
1-
CREATE OR REPLACE VIEW aws_accounts AS WITH m AS (
2-
SELECT account_id,
3-
account_name,
1+
CREATE OR REPLACE VIEW aws_accounts AS WITH
2+
m AS (
3+
SELECT ${account_id} as account_id,
4+
${account_name} as account_name,
45
email account_email_id
56
FROM ${metadata_table_name}
67
),

cid/cli.py

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,76 @@
1-
import logging
21
import click
3-
from os import environ as env
42

5-
from cid import Cid
3+
from cid.common import Cid
64

7-
logger = logging.getLogger(__name__)
5+
from cid._version import __version__
86

9-
version = '1.0 Beta'
7+
version = f'{__version__} Beta'
108
prog_name="CLOUD INTELLIGENCE DASHBOARDS (CID) CLI"
119
print(f'{prog_name} {version}\n')
1210

13-
App = Cid()
1411

1512
@click.group()
16-
@click.option('--profile_name', help='AWS Profile name to use', default=env.get('AWS_PROFILE'))
17-
@click.option('--region_name', help="AWS Region (default:'us-east-1')", default=env.get('AWS_REGION', env.get('AWS_DEFAULT_REGION', 'us-east-1')))
18-
@click.option('--aws_access_key_id', help='', default=env.get('AWS_ACCESS_KEY_ID'))
19-
@click.option('--aws_secret_access_key', help='', default=env.get('AWS_SECRET_ACCESS_KEY'))
20-
@click.option('--aws_session_token', help='', default=env.get('AWS_SESSION_TOKEN'))
13+
@click.option('--profile_name', help='AWS Profile name to use', default=None)
14+
@click.option('--region_name', help="AWS Region (default:'us-east-1')", default=None)
15+
@click.option('--aws_access_key_id', help='', default=None)
16+
@click.option('--aws_secret_access_key', help='', default=None)
17+
@click.option('--aws_session_token', help='', default=None)
2118
@click.option('-v', '--verbose', count=True)
2219
@click.pass_context
2320
def main(ctx, **kwargs):
24-
logger.setLevel(logger.getEffectiveLevel()-10*kwargs.pop('verbose'))
21+
params = {
22+
'verbose': kwargs.pop('verbose'),
23+
}
24+
App = Cid(**params)
2525
App.run(**kwargs)
26+
ctx.obj = App
2627

2728

2829
@main.command()
29-
def map():
30+
@click.pass_obj
31+
def map(App):
3032
"""Create account mapping"""
3133
App.map()
3234

3335

3436
@main.command()
35-
def deploy():
37+
@click.pass_obj
38+
def deploy(App):
3639
"""Deploy Dashboard"""
3740

3841
App.deploy()
3942

4043

4144
@main.command()
4245
@click.option('--dashboard-id', help='QuickSight dashboard id', default=None)
43-
def status(**kwargs):
46+
@click.pass_obj
47+
def status(App, **kwargs):
4448
"""Show Dashboard status"""
4549

4650
App.status(dashboard_id=kwargs.get('dashboard_id'))
4751

4852
@main.command()
4953
@click.option('--dashboard-id', help='QuickSight dashboard id', default=None)
50-
def delete(**kwargs):
54+
@click.pass_obj
55+
def delete(App, **kwargs):
5156
"""Delete Dashboard"""
5257

5358
App.delete(dashboard_id=kwargs.get('dashboard_id'))
5459

5560
@main.command()
5661
@click.option('--dashboard-id', help='QuickSight dashboard id', default=None)
5762
@click.option('--force', help='Allow force update', is_flag=True)
58-
def update(**kwargs):
63+
@click.pass_obj
64+
def update(App, **kwargs):
5965
"""Update Dashboard"""
6066

6167
App.update(dashboard_id=kwargs.get('dashboard_id'), force=kwargs.get('force'))
6268

6369

6470
@main.command()
6571
@click.option('--dashboard-id', help='QuickSight dashboard id', default=None)
66-
def open(**kwargs):
72+
@click.pass_obj
73+
def open(App, **kwargs):
6774
"""Open Dashboard in browser"""
6875

6976
App.open(dashboard_id=kwargs.get('dashboard_id'))

0 commit comments

Comments
 (0)