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.28.tar.gz (19.8 kB view details)

Uploaded Source

Built Distribution

cdk_remote_stack-0.1.28-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cdk-remote-stack-0.1.28.tar.gz
  • Upload date:
  • Size: 19.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.9

File hashes

Hashes for cdk-remote-stack-0.1.28.tar.gz
Algorithm Hash digest
SHA256 886a4f977a36a5e4186fbd7ecde94fc4822142407c59ed65cf781c34ea2ec92f
MD5 f34b69eda4b58fb725f30de69953dca1
BLAKE2b-256 f4adf7807853f2ce9e3cb5a8058425b8c5572ca0a0871815bffc4e6f1963c870

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cdk_remote_stack-0.1.28-py3-none-any.whl
  • Upload date:
  • Size: 19.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.9

File hashes

Hashes for cdk_remote_stack-0.1.28-py3-none-any.whl
Algorithm Hash digest
SHA256 62f26f607d874bd69d1896227fbf78ad2fd7275129bdb2d16ad84b5b97a2d1ce
MD5 3fc2c06d6d84f3202c4cfc07c52ec679
BLAKE2b-256 d50ce6afac3122a7e4afe5872bf4d966bcb084c2e08258f5b4aae16188da3fde

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page