List of usage examples for com.amazonaws.services.lambda.model AliasRoutingConfiguration AliasRoutingConfiguration
AliasRoutingConfiguration
From source file:com.netflix.spinnaker.clouddriver.lambda.deploy.ops.UpsertLambdaAliasAtomicOperation.java
License:Apache License
private UpdateAliasResult updateAliasResult(LambdaFunction cache) { updateTaskStatus("Initializing Updating of AWS Lambda Function Alias Operation..."); Map<String, Double> routingConfig = new LinkedHashMap<>(); String minorFunctionVersion = description.getMinorFunctionVersion(); Double weightToMinorFunctionVersion = description.getWeightToMinorFunctionVersion(); if (StringUtils.isNotEmpty(minorFunctionVersion) && weightToMinorFunctionVersion != null) { routingConfig.put(description.getMinorFunctionVersion(), description.getWeightToMinorFunctionVersion()); }//from www .jav a 2s . co m AWSLambda client = getLambdaClient(); UpdateAliasRequest request = new UpdateAliasRequest().withFunctionName(cache.getFunctionArn()) .withDescription(description.getAliasDescription()) .withFunctionVersion(description.getMajorFunctionVersion()).withName(description.getAliasName()) .withRoutingConfig(new AliasRoutingConfiguration().withAdditionalVersionWeights(routingConfig)); UpdateAliasResult result = client.updateAlias(request); updateTaskStatus("Finished Updating of AWS Lambda Function Alias Operation..."); return result; }
From source file:com.netflix.spinnaker.clouddriver.lambda.deploy.ops.UpsertLambdaAliasAtomicOperation.java
License:Apache License
private CreateAliasResult createAliasResult(LambdaFunction cache) { updateTaskStatus("Initializing Creation of AWS Lambda Function Alias Operation..."); Map<String, Double> routingConfig = new LinkedHashMap<>(); String minorFunctionVersion = description.getMinorFunctionVersion(); Double weightToMinorFunctionVersion = description.getWeightToMinorFunctionVersion(); if (StringUtils.isNotEmpty(minorFunctionVersion) && weightToMinorFunctionVersion != null) { routingConfig.put(description.getMinorFunctionVersion(), description.getWeightToMinorFunctionVersion()); }// www. ja va 2s. c om AWSLambda client = getLambdaClient(); CreateAliasRequest request = new CreateAliasRequest().withFunctionName(cache.getFunctionArn()) .withDescription(description.getAliasDescription()) .withFunctionVersion(description.getMajorFunctionVersion()).withName(description.getAliasName()) .withRoutingConfig(new AliasRoutingConfiguration().withAdditionalVersionWeights(routingConfig)); CreateAliasResult result = client.createAlias(request); updateTaskStatus("Finished Creation of AWS Lambda Function Alias Operation..."); return result; }
From source file:jp.classmethod.aws.gradle.lambda.RoutingConfig.java
License:Apache License
public AliasRoutingConfiguration getAliasRoutingConfiguration(final String functionName, final String functionVersion) { validateRequiredProperties();/*ww w. ja va2 s .c o m*/ final Double additionalVersionWeight = getAdditionalVersionWeight(); final AliasRoutingConfiguration aliasRoutingConfiguration = new AliasRoutingConfiguration(); if (getAdditionalVersion() != null) { validateFunctionVersion(getAdditionalVersion()); aliasRoutingConfiguration.withAdditionalVersionWeights( Collections.singletonMap(getAdditionalVersion(), additionalVersionWeight)); } else if (getUsePreviousVersion() != null && getUsePreviousVersion()) { validateFunctionVersion(functionVersion); final Long functionVersionAsLong = Long.valueOf(functionVersion); final Long prevVersion = getPreviousVersion(functionName, functionVersionAsLong); aliasRoutingConfiguration.withAdditionalVersionWeights( Collections.singletonMap(prevVersion.toString(), additionalVersionWeight)); } else if (getUseNextVersion() != null && getUseNextVersion()) { validateFunctionVersion(functionVersion); final Long functionVersionAsLong = Long.valueOf(functionVersion); final Long nextVersion = getNextVersion(functionVersionAsLong); aliasRoutingConfiguration.withAdditionalVersionWeights( Collections.singletonMap(nextVersion.toString(), additionalVersionWeight)); } return aliasRoutingConfiguration; }