Example usage for com.amazonaws.services.lambda.model UpdateAliasRequest withRoutingConfig

List of usage examples for com.amazonaws.services.lambda.model UpdateAliasRequest withRoutingConfig

Introduction

In this page you can find the example usage for com.amazonaws.services.lambda.model UpdateAliasRequest withRoutingConfig.

Prototype


public UpdateAliasRequest withRoutingConfig(AliasRoutingConfiguration routingConfig) 

Source Link

Document

<p> The <a href="https://docs.aws.amazon.com/lambda/latest/dg/lambda-traffic-shifting-using-aliases.html">routing configuration</a> of the alias.

Usage

From source file:jp.classmethod.aws.gradle.lambda.AWSLambdaUpdateAliasTask.java

License:Apache License

@TaskAction
public void updateFunctionAlias() {

    final String functionName = getFunctionName();
    final String aliasName = getAliasName();

    if (functionName == null) {
        throw new GradleException("functionName is required");
    }/*from  www .  java 2s. co  m*/
    if (aliasName == null) {
        throw new GradleException("name for alias is required");
    }

    final AWSLambda lambda = getAwsLambdaClient();

    final UpdateAliasRequest updateAliasRequest = new UpdateAliasRequest().withFunctionName(functionName)
            .withName(aliasName);

    if (getFunctionVersion() != null) {
        updateAliasRequest.withFunctionVersion(getFunctionVersion());
    }
    if (getDescription() != null) {
        updateAliasRequest.withDescription(getDescription());
    }
    if (getRoutingConfig() != null) {
        final RoutingConfig routingConfig = getRoutingConfig();

        final AliasRoutingConfiguration aliasRoutingConfiguration = routingConfig
                .getAliasRoutingConfiguration(functionName, getFunctionVersion());

        updateAliasRequest.withRoutingConfig(aliasRoutingConfiguration);
    }

    updateAliasResult = lambda.updateAlias(updateAliasRequest);
    getLogger().info("Update Lambda alias requested: {}, name: {}", functionName, aliasName);
}