internal AfdSecretData(ResourceIdentifier id, string name, ResourceType resourceType, SystemData systemData, AfdProvisioningState?provisioningState, AfdDeploymentStatus?deploymentStatus, string profileName, SecretParameters parameters) : base(id, name, resourceType, systemData) { ProvisioningState = provisioningState; DeploymentStatus = deploymentStatus; ProfileName = profileName; Parameters = parameters; }
public async Task <IActionResult> CreateSecretAsync(SecretParameters secretDto) { try { var validator = new SecretValidator(); validator.Validate(secretDto); var secretSpec = new Docker.DotNet.Models.SecretSpec(); var bytes = Encoding.UTF8.GetBytes(secretDto.Content).ToList(); secretSpec.Data = bytes; secretSpec.Name = secretDto.Name; secretSpec.Labels = secretDto.Labels; var secretCreateResponse = await _swarmClient.CreateSecret(secretSpec); return(Created($"/api/secret/{secretDto.Name}", secretCreateResponse)); } catch (ArgumentException ex) { var errorMessage = "Cannot create secret."; _logger.LogError(ex, errorMessage); return(BadRequest(ex.Message)); } catch (Exception ex) { return(CreateErrorResponse(ex, "Cannot create secret.")); } }
/// <summary> /// Updates an existing Secret within a profile. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// Name of the Resource group within the Azure subscription. /// </param> /// <param name='profileName'> /// Name of the CDN profile which is unique within the resource group. /// </param> /// <param name='secretName'> /// Name of the Secret under the profile. /// </param> /// <param name='parameters'> /// object which contains secret parameters /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <Secret> BeginUpdateAsync(this ISecretsOperations operations, string resourceGroupName, string profileName, string secretName, SecretParameters parameters = default(SecretParameters), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.BeginUpdateWithHttpMessagesAsync(resourceGroupName, profileName, secretName, parameters, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <summary> /// Updates an existing Secret within a profile. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// Name of the Resource group within the Azure subscription. /// </param> /// <param name='profileName'> /// Name of the CDN profile which is unique within the resource group. /// </param> /// <param name='secretName'> /// Name of the Secret under the profile. /// </param> /// <param name='parameters'> /// object which contains secret parameters /// </param> public static Secret BeginUpdate(this ISecretsOperations operations, string resourceGroupName, string profileName, string secretName, SecretParameters parameters = default(SecretParameters)) { return(operations.BeginUpdateAsync(resourceGroupName, profileName, secretName, parameters).GetAwaiter().GetResult()); }
internal static AfdSecretData DeserializeAfdSecretData(JsonElement element) { ResourceIdentifier id = default; string name = default; ResourceType type = default; SystemData systemData = default; Optional <AfdProvisioningState> provisioningState = default; Optional <AfdDeploymentStatus> deploymentStatus = default; Optional <string> profileName = default; Optional <SecretParameters> parameters = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("id")) { id = new ResourceIdentifier(property.Value.GetString()); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("systemData")) { systemData = JsonSerializer.Deserialize <SystemData>(property.Value.ToString()); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new AfdProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("deploymentStatus")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } deploymentStatus = new AfdDeploymentStatus(property0.Value.GetString()); continue; } if (property0.NameEquals("profileName")) { profileName = property0.Value.GetString(); continue; } if (property0.NameEquals("parameters")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } parameters = SecretParameters.DeserializeSecretParameters(property0.Value); continue; } } continue; } } return(new AfdSecretData(id, name, type, systemData, Optional.ToNullable(provisioningState), Optional.ToNullable(deploymentStatus), profileName.Value, parameters.Value)); }
public async Task <IActionResult> CreateSecret([FromBody] SecretParameters secretDto) { return(await _secretService.CreateSecretAsync(secretDto)); }