protected override async Task <bool> PerformActionAsync() { var layerVersionArn = this.GetStringValueOrDefault(this.LayerVersionArn, LambdaDefinedCommandOptions.ARGUMENT_LAYER_VERSION_ARN, true); var results = LambdaUtilities.ParseLayerVersionArn(layerVersionArn); var deleteRequest = new DeleteLayerVersionRequest { LayerName = results.Name, VersionNumber = results.VersionNumber }; try { await this.LambdaClient.DeleteLayerVersionAsync(deleteRequest); } catch (Exception e) { throw new LambdaToolsException("Error deleting Lambda layer version: " + e.Message, LambdaToolsException.LambdaErrorCode.LambdaDeleteLayerVersion, e); } this.Logger?.WriteLine($"Deleted version {results.VersionNumber} for layer {results.Name}"); return(true); }
/// <summary> /// 删除指定层的指定版本,被删除的版本无法再关联到函数上,但不会影响正在引用这个层的函数。 /// </summary> /// <param name="req"><see cref="DeleteLayerVersionRequest"/></param> /// <returns><see cref="DeleteLayerVersionResponse"/></returns> public DeleteLayerVersionResponse DeleteLayerVersionSync(DeleteLayerVersionRequest req) { JsonResponseModel <DeleteLayerVersionResponse> rsp = null; try { var strResp = this.InternalRequestSync(req, "DeleteLayerVersion"); rsp = JsonConvert.DeserializeObject <JsonResponseModel <DeleteLayerVersionResponse> >(strResp); } catch (JsonSerializationException e) { throw new TencentCloudSDKException(e.Message); } return(rsp.Response); }