/dhall-aws-cloudformation/gh-pages/examples/lambda.dhall.html

Copy path to clipboard

Source

<!DOCTYPE HTML><html><head><title>/examples/lambda.dhall</title><link rel="stylesheet" type="text/css" href="../index.css"><link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css2?family=Fira+Code:wght@400;500;600;700&amp;family=Lato:ital,wght@0,400;0,700;1,400&amp;display=swap"><script type="text/javascript" src="../index.js"></script><meta charset="UTF-8"></head><body><div class="nav-bar"><img class="dhall-icon" src="../dhall-icon.svg"><p class="package-title">dhall-aws-cloudformation</p><div class="nav-bar-content-divider"></div><a id="switch-light-dark-mode" class="nav-option">Switch Light/Dark Mode</a></div><div class="main-container"><h2 class="doc-title"><span class="crumb-divider">/</span><a href="../index.html">dhall-aws-cloudformation</a><span class="crumb-divider">/</span><a class="title-crumb" href="index.html">examples</a><span class="crumb-divider">/</span><span class="title-crumb" href="index.html">lambda.dhall</span></h2><a class="copy-to-clipboard" data-path="https://raw.githubusercontent.com/jcouyang/dhall-aws-cloudformation/0.9.81/examples/lambda.dhall"><i><small>Copy path to clipboard</small></i></a><br><div class="doc-contents"></div><h3>Source</h3><div class="source-code"><pre>let <span id="var1-5" class="name-decl" data-name="var1-5">Function</span> = <a href="../cloudformation/AWS::Lambda::Function.dhall.html">../cloudformation/AWS::Lambda::Function.dhall</a><br><br>let <span id="var3-5" class="name-decl" data-name="var3-5">Permission</span> = <a href="../cloudformation/AWS::Lambda::Permission.dhall.html">../cloudformation/AWS::Lambda::Permission.dhall</a><br><br>let <span id="var5-5" class="name-decl" data-name="var5-5">Role</span> = <a href="../cloudformation/AWS::IAM::Role.dhall.html">../cloudformation/AWS::IAM::Role.dhall</a><br><br>let <span id="var7-5" class="name-decl" data-name="var7-5">JSON</span> = (<a href="../Prelude.dhall.html">../Prelude.dhall</a>).JSON<br><br>let <span id="var9-5" class="name-decl" data-name="var9-5">Fn</span> = <a href="../Fn.dhall.html">../Fn.dhall</a><br><br>let <span id="var11-5" class="name-decl" data-name="var11-5">s</span> = <a href="#var9-5" class="name-use" data-name="var9-5">Fn</a>.renderText<br><br>let <span id="var13-5" class="name-decl" data-name="var13-5">fn</span> = <a href="#var9-5" class="name-use" data-name="var9-5">Fn</a>.render<br><br>let <span id="var15-5" class="name-decl" data-name="var15-5">example0</span> =<br> { AWSTemplateFormatVersion = &quot;2010-09-09&quot;<br> , Resources =<br> { HelloWorldFunction = <a href="#var1-5" class="name-use" data-name="var1-5">Function</a>.Resources::{<br> , Properties = <a href="#var1-5" class="name-use" data-name="var1-5">Function</a>.Properties::{<br> , Handler = Some (<a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;index.handler&quot;)<br> , Code = <a href="#var1-5" class="name-use" data-name="var1-5">Function</a>.Code::{<br> , S3Bucket = Some (<a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;lambda-functions&quot;)<br> , S3Key = Some (<a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;amilookup.zip&quot;)<br> }<br> , Runtime = Some (<a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;nodejs12.x&quot;)<br> , Role = <a href="#var13-5" class="name-use" data-name="var13-5">fn</a> (<a href="#var5-5" class="name-use" data-name="var5-5">Role</a>.GetAttr.Arn &quot;HelloWorldFunctionRole&quot;)<br> , Timeout = Some +25<br> , TracingConfig = Some { Mode = Some (<a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;Active&quot;) }<br> }<br> }<br> , HelloWorldFunctionRole = <a href="#var5-5" class="name-use" data-name="var5-5">Role</a>.Resources::{<br> , Properties = <a href="#var5-5" class="name-use" data-name="var5-5">Role</a>.Properties::{<br> , AssumeRolePolicyDocument =<br> <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.object<br> ( toMap<br> { Version = <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.string &quot;2012-10-17&quot;<br> , Statement =<br> <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.array<br> [ <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.object<br> ( toMap<br> { Action =<br> <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.array<br> [ <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.string &quot;sts:AssumeRole&quot; ]<br> , Effect = <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.string &quot;Allow&quot;<br> , Principal =<br> <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.object<br> ( toMap<br> { Service =<br> <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.array<br> [ <a href="#var7-5" class="name-use" data-name="var7-5">JSON</a>.string<br> &quot;lambda.amazoneaws.com&quot;<br> ]<br> }<br> )<br> }<br> )<br> ]<br> }<br> )<br> , ManagedPolicyArns = Some<br> [ <a href="#var11-5" class="name-use" data-name="var11-5">s</a><br> &quot;arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole&quot;<br> ]<br> , Tags = Some [ { Key = &quot;Name&quot;, Value = &quot;Hello World Function&quot; } ]<br> }<br> }<br> , Permission = <a href="#var3-5" class="name-use" data-name="var3-5">Permission</a>.Resources::{<br> , Properties = <a href="#var3-5" class="name-use" data-name="var3-5">Permission</a>.Properties::{<br> , Action = <a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;lambda:InvokeFunction&quot;<br> , FunctionName = <a href="#var13-5" class="name-use" data-name="var13-5">fn</a> (<a href="#var9-5" class="name-use" data-name="var9-5">Fn</a>.Ref &quot;HelloWorldFunction&quot;)<br> , Principal = <a href="#var11-5" class="name-use" data-name="var11-5">s</a> &quot;apigateway.amazonaws.com&quot;<br> }<br> }<br> }<br> }<br><br>in <a href="#var15-5" class="name-use" data-name="var15-5">example0</a><br></pre></div></div></body></html>