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
- https://awscli.amazonaws.com/v2/documentation/api/latest/reference/quicksight/index.html
- API https://docs.aws.amazon.com/quicksight/latest/APIReference/API_Operations.html
- SDK https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/QuickSight.html#createDataSource-property
Troubleshooting
- ...
Thanks To
- The CDK Community cdk-dev.slack.com
- Projen project and the community around it
Metadata
Release files for cdk-quicksight-constructs 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cdk-quicksight-constructs-0.1.5.tar.gz | 284.6 kB | Without provenance | Details for cdk-quicksight-constructs-0.1.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cdk_quicksight_constructs-0.1.5-py3-none-any.whl | Python 3 | none | any | Details for cdk_quicksight_constructs-0.1.5-py3-none-any.whl |
Total release size: 567.8 kB
Release files / cdk-quicksight-constructs-0.1.5.tar.gz
| Download URL | cdk-quicksight-constructs-0.1.5.tar.gz |
|---|---|
| Size | 284.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c23aaa0fa78fb44c8c7090bb16d3acfb15dcea932664a0186a213c88ba62477
|
|
BLAKE2b-256 checksum How to use checksums |
9656fbc474f80a89a4d2b804157559c5c63b5a6c9febb8e74dfadc2231c8044e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / cdk_quicksight_constructs-0.1.5-py3-none-any.whl
| Download URL | cdk_quicksight_constructs-0.1.5-py3-none-any.whl |
|---|---|
| Size | 283.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ebbc861a4236f69d7aad41768802de4a81211f1f4494924f4f32f93f37a6a1ce
|
|
BLAKE2b-256 checksum How to use checksums |
28238355cfcaccd5af77d57fd36087c54d602faa6972a8b7d065ffd74398dc8e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Security for cdk-quicksight-constructs 0.1.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.