Skip to main content

cdk-quicksight-constructs

Project description

NPM version PyPI version Release

cdk-quicksight-constructs

This an AWS CDK Custom Constructs repository for AWS QuickSight resources which are currently not supported by Cloudformation. That are currently:

  • DataSource
  • DataSet

The Repository is build and managed by Projen. Projen is used to manage the Github TypeScript AWS CDK setup. It is developed and maintained from the AWS CDK Community and the favorite framework to manage those AWS CDK project setups.

Example

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
users = ["martin"]

datasource = DataSource(stack, "DataSource",
    name="cdkdatasource",
    type="ATHENA",
    data_source_parameters={
        "athena_parameters": {
            "work_group": "ddbworkgroup"
        }
    },
    users=users
)

DataSet(stack, "DataSet",
    name="cdkdataset",
    users=users,
    physical_table_map={
        "users": {
            "custom_sql": {
                "data_source_arn": datasource.data_source_arn,
                "name": "users",
                "sql_query": "SELECT primarypractice, dateofbirth FROM \"ddbconnector\".\"martin1\".\"martin1\" WHERE groupid = 'users' AND firstname is not null",
                "columns": [{"name": "primarypractice", "type": "STRING"}, {"name": "dateofbirth", "type": "STRING"}
                ]
            }
        },
        "practices": {
            "custom_sql": {
                "data_source_arn": datasource.data_source_arn,
                "name": "practices",
                "sql_query": "SELECT id, name FROM \"ddbconnector\".\"martin1\".\"martin1\" WHERE groupid = 'medical-practices' AND name is not null",
                "columns": [{"name": "id", "type": "STRING"}, {"name": "name", "type": "STRING"}
                ]
            }
        }
    },
    logical_table_map={
        "users": {
            "alias": "users",
            "source": {
                "physical_table_id": "users"
            }
        },
        "practices": {
            "alias": "practices",
            "source": {
                "physical_table_id": "practices"
            }
        },
        "users-practices": {
            "alias": "users-practices",
            "source": {
                "join_instruction": {
                    "left_operand": "users",
                    "right_operand": "practices",
                    "type": "INNER",
                    "on_clause": "primarypractice = id"
                }
            },
            "data_transforms": [{
                "create_columns_operation": {
                    "columns": [{
                        "column_name": "age",
                        "column_id": "age",
                        "expression": "dateDiff(parseDate(dateofbirth, \"YYYY-MM-dd'T'HH:mm:ssZ\"),now(), \"YYYY\")"
                    }
                    ]
                }
            }
            ]
        }
    }
)

Main benefits of that are:

  • managing the cdk dependencies and cdk commands like yarn deploy
  • managing the node and github config files
  • a standardized way of how to setup AWS CDK repos

Types

The types for the DataSource and DataSet constructs are generated from the AWS SDK lib and stored in src/sdk/quicksight.ts . Steps to produce the quicksight.ts file:

  • extracting the quicksight.d.ts from node_modules/aws-sdk
  • renaming it to quicksight.ts and use VS to auto-fix alle issues in it
  • removing the first and last parts which are not needed for the types
  • replacing the properties with readonly notation
  • replacing the first letter with a small letter to be camel case aligned

Planed Features / Ideas

  • ...

Helpful Resources

Troubleshooting

  • ...

Thanks To

  • The CDK Community cdk-dev.slack.com
  • Projen project and the community around it

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

cdk-quicksight-constructs-0.1.5.tar.gz (284.6 kB view details)

Uploaded Source

Built Distribution

cdk_quicksight_constructs-0.1.5-py3-none-any.whl (283.2 kB view details)

Uploaded Python 3

File details

Details for the file cdk-quicksight-constructs-0.1.5.tar.gz.

File metadata

  • Download URL: cdk-quicksight-constructs-0.1.5.tar.gz
  • Upload date:
  • Size: 284.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.9

File hashes

Hashes for cdk-quicksight-constructs-0.1.5.tar.gz
Algorithm Hash digest
SHA256 0c23aaa0fa78fb44c8c7090bb16d3acfb15dcea932664a0186a213c88ba62477
MD5 8858b7542fba6d43c0cb96c4341f6dce
BLAKE2b-256 9656fbc474f80a89a4d2b804157559c5c63b5a6c9febb8e74dfadc2231c8044e

See more details on using hashes here.

File details

Details for the file cdk_quicksight_constructs-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: cdk_quicksight_constructs-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 283.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.9

File hashes

Hashes for cdk_quicksight_constructs-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ebbc861a4236f69d7aad41768802de4a81211f1f4494924f4f32f93f37a6a1ce
MD5 0f35732a02eddc5eb6996b10a4795147
BLAKE2b-256 28238355cfcaccd5af77d57fd36087c54d602faa6972a8b7d065ffd74398dc8e

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