Skip to main content

Get outputs from cross-regional AWS CDK stacks

Project description

awscdk-jsii-template NPM version PyPI version Release

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:

  1. stackJP - cdk stack in JP to create a SNS topic
  2. stackUS - cdk stack in US to get the Outputs from stackJP and print out the SNS TopicName from stackJP Outputs.
# 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)

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdk-remote-stack-0.1.90.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

cdk_remote_stack-0.1.90-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

Details for the file cdk-remote-stack-0.1.90.tar.gz.

File metadata

  • Download URL: cdk-remote-stack-0.1.90.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for cdk-remote-stack-0.1.90.tar.gz
Algorithm Hash digest
SHA256 f86a15cfd33c8c5e3e46a909d80e1ff2a4bc6e89ec333785ca42dff653cb843d
MD5 bd2fa0b1ce8742c5067dc651f48c65af
BLAKE2b-256 cbba04462b74f4c0f062fcea132cca77fcdaad9dea473bd6a26c74a35d0470af

See more details on using hashes here.

File details

Details for the file cdk_remote_stack-0.1.90-py3-none-any.whl.

File metadata

  • Download URL: cdk_remote_stack-0.1.90-py3-none-any.whl
  • Upload date:
  • Size: 20.2 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for cdk_remote_stack-0.1.90-py3-none-any.whl
Algorithm Hash digest
SHA256 5d9ec2520a8bcb4610715651f14f8e058a454c455daad9b6ba4574abdca97244
MD5 b827ba618967559ecf24bdd01c2c8b9d
BLAKE2b-256 78bac4e2c5b793bad6f1f589256295c2a12f867462fa9291a10d3d3a873b5a64

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page