Пример #1
0
        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);
        }
Пример #2
0
        /// <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);
        }