@Generated(value="jsii-pacmak/1.74.0 (build 6d08790)", date="2023-05-19T23:09:27.672Z") @Stability(value=Stable) public class Version extends QualifiedFunctionBase implements IVersion
Avoid using this resource directly. If you need a Version object, use
function.currentVersion
instead. That will add a Version object to your
template, and make sure the Version is invalidated whenever the Function
object changes. If you use the Version
resource directly, you are
responsible for making sure it is invalidated (by changing its
logical ID) whenever necessary.
Version resources can then be used in Alias
resources to refer to a
particular deployment of a Lambda.
If you want to ensure that you're associating the right version with
the right deployment, specify the codeSha256
property while
creating the `Version.
Example:
CfnParametersCode lambdaCode = Code.fromCfnParameters(); Function func = Function.Builder.create(this, "Lambda") .code(lambdaCode) .handler("index.handler") .runtime(Runtime.NODEJS_14_X) .build(); // used to make sure each CDK synthesis produces a different Version Version version = func.getCurrentVersion(); Alias alias = Alias.Builder.create(this, "LambdaAlias") .aliasName("Prod") .version(version) .build(); LambdaDeploymentGroup.Builder.create(this, "DeploymentGroup") .alias(alias) .deploymentConfig(LambdaDeploymentConfig.LINEAR_10PERCENT_EVERY_1MINUTE) .build();
Modifier and Type | Class and Description |
---|---|
static class |
Version.Builder
A fluent builder for
Version . |
software.amazon.jsii.JsiiObject.InitializationMode
IVersion.Jsii$Default, IVersion.Jsii$Proxy
IClientVpnConnectionHandler.Jsii$Default
Modifier | Constructor and Description |
---|---|
|
Version(software.constructs.Construct scope,
String id,
VersionProps props) |
protected |
Version(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
Version(software.amazon.jsii.JsiiObjectRef objRef) |
Modifier and Type | Method and Description |
---|---|
Alias |
addAlias(String aliasName)
Deprecated.
Calling `addAlias` on a `Version` object will cause the Alias to be replaced on every function update. Call `function.addAlias()` or `new Alias()` instead.
|
Alias |
addAlias(String aliasName,
AliasOptions options)
Deprecated.
Calling `addAlias` on a `Version` object will cause the Alias to be replaced on every function update. Call `function.addAlias()` or `new Alias()` instead.
|
static IVersion |
fromVersionArn(software.constructs.Construct scope,
String id,
String versionArn)
Construct a Version object from a Version ARN.
|
static IVersion |
fromVersionAttributes(software.constructs.Construct scope,
String id,
VersionAttributes attrs) |
Architecture |
getArchitecture()
The architecture of this Lambda Function.
|
protected Boolean |
getCanCreatePermissions()
Whether the addPermission() call adds any permissions.
|
String |
getEdgeArn()
The ARN of the version for Lambda@Edge.
|
String |
getFunctionArn()
The ARN fo the function.
|
String |
getFunctionName()
The name of the function.
|
IPrincipal |
getGrantPrincipal()
The principal this Lambda Function is running as.
|
IFunction |
getLambda()
The underlying AWS Lambda function.
|
protected String |
getQualifier()
The qualifier of the version or alias of this function.
|
IRole |
getRole()
The IAM role associated with this function.
|
String |
getVersion()
The most recently deployed version of this function.
|
Metric |
metric(String metricName)
Return the given named metric for this Function.
|
Metric |
metric(String metricName,
MetricOptions props)
Return the given named metric for this Function.
|
configureAsyncInvoke, considerWarningOnInvokeFunctionPermissions, getLatestVersion, getPermissionsNode, getResourceArnsForGrantInvoke
addEventSource, addEventSourceMapping, addFunctionUrl, addFunctionUrl, addPermission, addToRolePolicy, getConnections, getIsBoundToVpc, grantInvoke, grantInvokeUrl, metricDuration, metricDuration, metricErrors, metricErrors, metricInvocations, metricInvocations, metricThrottles, metricThrottles, warnInvokeFunctionPermissions
applyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isResource
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addEventSource, addEventSourceMapping, addFunctionUrl, addFunctionUrl, addPermission, addToRolePolicy, configureAsyncInvoke, getIsBoundToVpc, getLatestVersion, getPermissionsNode, getResourceArnsForGrantInvoke, grantInvoke, grantInvokeUrl, metricDuration, metricDuration, metricErrors, metricErrors, metricInvocations, metricInvocations, metricThrottles, metricThrottles
applyRemovalPolicy, getEnv, getStack
getNode
getConnections
protected Version(software.amazon.jsii.JsiiObjectRef objRef)
protected Version(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
@Stability(value=Stable) public Version(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull VersionProps props)
scope
- This parameter is required.id
- This parameter is required.props
- This parameter is required.@Stability(value=Stable) @NotNull public static IVersion fromVersionArn(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull String versionArn)
scope
- The cdk scope creating this resource. This parameter is required.id
- The cdk id of this resource. This parameter is required.versionArn
- The version ARN to create this version from. This parameter is required.@Stability(value=Stable) @NotNull public static IVersion fromVersionAttributes(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull VersionAttributes attrs)
scope
- This parameter is required.id
- This parameter is required.attrs
- This parameter is required.@Stability(value=Deprecated) @Deprecated @NotNull public Alias addAlias(@NotNull String aliasName, @Nullable AliasOptions options)
@Stability(value=Deprecated) @Deprecated @NotNull public Alias addAlias(@NotNull String aliasName)
@Stability(value=Stable) @NotNull public Metric metric(@NotNull String metricName, @Nullable MetricOptions props)
metric
in interface IFunction
metric
in class FunctionBase
metricName
- This parameter is required.props
- @Stability(value=Stable) @NotNull public Metric metric(@NotNull String metricName)
metric
in interface IFunction
metric
in class FunctionBase
metricName
- This parameter is required.@Stability(value=Stable) @NotNull public Architecture getArchitecture()
getArchitecture
in interface IFunction
getArchitecture
in class FunctionBase
@Stability(value=Stable) @NotNull protected Boolean getCanCreatePermissions()
True for new Lambdas, false for version $LATEST and imported Lambdas from different accounts.
getCanCreatePermissions
in class FunctionBase
@Stability(value=Stable) @NotNull public String getEdgeArn()
getEdgeArn
in interface IVersion
@Stability(value=Stable) @NotNull public String getFunctionArn()
getFunctionArn
in interface IClientVpnConnectionHandler
getFunctionArn
in interface IFunction
getFunctionArn
in class FunctionBase
@Stability(value=Stable) @NotNull public String getFunctionName()
getFunctionName
in interface IClientVpnConnectionHandler
getFunctionName
in interface IFunction
getFunctionName
in class FunctionBase
@Stability(value=Stable) @NotNull public IPrincipal getGrantPrincipal()
getGrantPrincipal
in interface IGrantable
getGrantPrincipal
in class FunctionBase
@Stability(value=Stable) @NotNull public IFunction getLambda()
getLambda
in interface IVersion
getLambda
in class QualifiedFunctionBase
@Stability(value=Stable) @NotNull protected String getQualifier()
A qualifier is the identifier that's appended to a version or alias ARN.
@Stability(value=Stable) @NotNull public String getVersion()
getVersion
in interface IVersion
@Stability(value=Stable) @Nullable public IRole getRole()
Undefined if the function was imported without a role.
getRole
in interface IFunction
getRole
in class FunctionBase
Copyright © 2023. All rights reserved.