public CreateApplicationVersionAsync ( |
||
request | Container for the necessary parameters to execute the CreateApplicationVersion operation. | |
cancellationToken | System | /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// |
return | Task |
public Task<CreateApplicationVersionResponse> CreateApplicationVersionAsync(CreateApplicationVersionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken))
{
var marshaller = new CreateApplicationVersionRequestMarshaller();
var unmarshaller = CreateApplicationVersionResponseUnmarshaller.Instance;
return InvokeAsync<CreateApplicationVersionRequest,CreateApplicationVersionResponse>(request, marshaller,
unmarshaller, cancellationToken);
}
/// <summary> /// /// </summary> /// <param name="createApplicationVersionRequest"></param> /// <returns></returns> public async Task CreateOrUpdateApplicationAsync(CreateApplicationVersionRequest createApplicationVersionRequest) { using (var ebClient = new AmazonElasticBeanstalkClient(creds, configurationProvider.RegionEndpoint)) { if (await IsNewApplicationAsync(ebClient)) { loggerProvider.GetLogger().Debug("New application - creating..."); var createApplicationRequest = new CreateApplicationRequest { ApplicationName = configurationProvider.LongApplicationName }; var createApplicationResponse = await ebClient.CreateApplicationAsync(createApplicationRequest); loggerProvider.GetLogger().Debug($"Created application: {createApplicationResponse}"); } var describeApplicationsRequest = new DescribeApplicationVersionsRequest { ApplicationName = configurationProvider.LongApplicationName, VersionLabels = new List<string> { configurationProvider.Version } }; var apps = await ebClient.DescribeApplicationVersionsAsync(describeApplicationsRequest); if (apps.ApplicationVersions.Any()) { loggerProvider.GetLogger().Debug("Application Version already exists"); return; } loggerProvider.GetLogger().Debug("Creating application version..."); var createApplicationVersionResponse = await ebClient.CreateApplicationVersionAsync(createApplicationVersionRequest); loggerProvider.GetLogger().Debug($"Created application version: {createApplicationVersionResponse}"); } }