@Generated(value="jsii-pacmak/1.74.0 (build 6d08790)", date="2023-05-10T17:05:56.626Z") @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.InitializationModeIVersion.Jsii$Default, IVersion.Jsii$ProxyIClientVpnConnectionHandler.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, getResourceArnsForGrantInvokeaddEventSource, addEventSourceMapping, addFunctionUrl, addFunctionUrl, addPermission, addToRolePolicy, getConnections, getIsBoundToVpc, grantInvoke, grantInvokeUrl, metricDuration, metricDuration, metricErrors, metricErrors, metricInvocations, metricInvocations, metricThrottles, metricThrottles, warnInvokeFunctionPermissionsapplyRemovalPolicy, generatePhysicalName, getEnv, getPhysicalName, getResourceArnAttribute, getResourceNameAttribute, getStack, isResourcegetNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validatejsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddEventSource, addEventSourceMapping, addFunctionUrl, addFunctionUrl, addPermission, addToRolePolicy, configureAsyncInvoke, getIsBoundToVpc, getLatestVersion, getPermissionsNode, getResourceArnsForGrantInvoke, grantInvoke, grantInvokeUrl, metricDuration, metricDuration, metricErrors, metricErrors, metricInvocations, metricInvocations, metricThrottles, metricThrottlesapplyRemovalPolicy, getEnv, getStackgetNodegetConnectionsprotected 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 IFunctionmetric in class FunctionBasemetricName - This parameter is required.props - @Stability(value=Stable) @NotNull public Metric metric(@NotNull String metricName)
metric in interface IFunctionmetric in class FunctionBasemetricName - This parameter is required.@Stability(value=Stable) @NotNull public Architecture getArchitecture()
getArchitecture in interface IFunctiongetArchitecture 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 IClientVpnConnectionHandlergetFunctionArn in interface IFunctiongetFunctionArn in class FunctionBase@Stability(value=Stable) @NotNull public String getFunctionName()
getFunctionName in interface IClientVpnConnectionHandlergetFunctionName in interface IFunctiongetFunctionName in class FunctionBase@Stability(value=Stable) @NotNull public IPrincipal getGrantPrincipal()
getGrantPrincipal in interface IGrantablegetGrantPrincipal in class FunctionBase@Stability(value=Stable) @NotNull public IFunction getLambda()
getLambda in interface IVersiongetLambda 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 IFunctiongetRole in class FunctionBaseCopyright © 2023. All rights reserved.