cdk-remote-stack
Get outputs from cross-regional AWS CDK stacks
Why
AWS CDK cross-regional cross-stack reference is not easy with the native AWS CDK construct library.
cdk-remote-stack aims to simplify the cross-regional cross-stack reference to help you easily build cross-regional multi-stack AWS CDK apps.
Sample
Let's say we have two cross-region CDK stacks in the same cdk app:
- stackJP - cdk stack in
JPto create a SNS topic - stackUS - cdk stack in
USto get the Outputs fromstackJPand print out the SNSTopicNamefromstackJPOutputs.
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdk_remote_stack import StackOutputs
import aws_cdk.core as cdk
import aws_cdk.aws_sns as sns
app = cdk.App()
env_jP = {
"region": "ap-northeast-1",
"account": process.env.CDK_DEFAULT_ACCOUNT
}
env_uS = {
"region": "us-west-2",
"account": process.env.CDK_DEFAULT_ACCOUNT
}
# first stack in JP
stack_jP = cdk.Stack(app, "demo-stack-jp", env=env_jP)
topic = sns.Topic(stack_jP, "Topic")
cdk.CfnOutput(stack_jP, "TopicName", value=topic.topic_name)
# second stack in US
stack_uS = cdk.Stack(app, "demo-stack-us", env=env_uS)
# ensure the dependency
stack_uS.add_dependency(stack_jP)
# get the stackJP stack outputs from stackUS
outputs = StackOutputs(stack_uS, "Outputs", stack=stack_jP)
remote_output_value = outputs.get_att_string("TopicName")
# the value should be exactly the same with the output value of `TopicName`
cdk.CfnOutput(stack_uS, "RemoteTopicName", value=remote_output_value)
Release files for cdk-remote-stack 0.1.90
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cdk-remote-stack-0.1.90.tar.gz | 20.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cdk_remote_stack-0.1.90-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 40.3 kB
Release files / cdk-remote-stack-0.1.90.tar.gz
| Download URL | cdk-remote-stack-0.1.90.tar.gz |
|---|---|
| Size | 20.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f86a15cfd33c8c5e3e46a909d80e1ff2a4bc6e89ec333785ca42dff653cb843d
|
|
BLAKE2b-256 checksum How to use checksums |
cbba04462b74f4c0f062fcea132cca77fcdaad9dea473bd6a26c74a35d0470af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9
|
Release files / cdk_remote_stack-0.1.90-py3-none-any.whl
| Download URL | cdk_remote_stack-0.1.90-py3-none-any.whl |
|---|---|
| Size | 20.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5d9ec2520a8bcb4610715651f14f8e058a454c455daad9b6ba4574abdca97244
|
|
BLAKE2b-256 checksum How to use checksums |
78bac4e2c5b793bad6f1f589256295c2a12f867462fa9291a10d3d3a873b5a64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.7.9
|