Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 47 additions & 9 deletions docs/source/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -80,19 +80,57 @@ Serverless Application Repository (SAR)

AWS Data Wrangler layers are also available in the `AWS Serverless Application Repository <https://serverlessrepo.aws.amazon.com/applications>`_ (SAR).

Here is an example of how to create the Lambda layer in your CDK app:
The app deploys the Lambda layer version in your own AWS account and region via a CloudFormation stack.
This option provides the ability to use semantic versions (i.e. library version) instead of Lambda layer versions.

.. list-table:: AWS Data Wrangler Layer Apps
:widths: 25 25 50
:header-rows: 1

* - App
- ARN
- Description
* - aws-data-wrangler-layer-py3-7
- arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-data-wrangler-layer-py3-7
- Layer for ``Python 3.7.x`` runtimes
* - aws-data-wrangler-layer-py3-8
- arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-data-wrangler-layer-py3-8
- Layer for ``Python 3.8.x`` runtimes
* - aws-data-wrangler-layer-py3-9
- arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-data-wrangler-layer-py3-9
- Layer for ``Python 3.9.x`` runtimes

Here is an example of how to create and use the AWS Data Wrangler Lambda layer in your CDK app:

.. code-block:: python

from aws_cdk import core, aws_sam as sam, aws_lambda

CfnApplication(
self,
"wrangler-layer",
location=CfnApplication.ApplicationLocationProperty(
application_id="arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-data-wrangler-layer-py3-8",
semantic_version="2.12.0",
),
)
class DataWranglerApp(core.Construct):
def __init__(self, scope: core.Construct, id_: str):
super.__init__(scope,id)

wrangler_layer = sam.CfnApplication(
self,
"wrangler-layer",
location=CfnApplication.ApplicationLocationProperty(
application_id="arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-data-wrangler-layer-py3-8",
semantic_version="2.13.0", # Get the latest version from https://github.com/awslabs/aws-data-wrangler/releases
),
)

wrangler_layer_arn = wrangler_layer.get_att("Outputs.WranglerLayer38Arn").to_string()
wrangler_layer_version = aws_lambda.LayerVersion.from_layer_version_arn(self, "wrangler-layer-version", wrangler_layer_arn)

aws_lambda.Function(
self,
"wrangler-function",
runtime=aws_lambda.Runtime.PYTHON_3_8,
function_name="sample-wrangler-lambda-function",
code=aws_lambda.Code.asset("./src/wrangler-lambda"),
handler='lambda_function.lambda_handler',
layers=[wrangler_layer_version]
)

AWS Glue Python Shell Jobs
--------------------------
Expand Down