1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package servicecatalog 4 5import ( 6 "context" 7 awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" 8 "github.com/aws/aws-sdk-go-v2/aws/signer/v4" 9 "github.com/aws/aws-sdk-go-v2/service/servicecatalog/types" 10 "github.com/aws/smithy-go/middleware" 11 smithyhttp "github.com/aws/smithy-go/transport/http" 12) 13 14// Gets information about the configuration required to provision the specified 15// product using the specified provisioning artifact. If the output contains a 16// TagOption key with an empty list of values, there is a TagOption conflict for 17// that key. The end user cannot take action to fix the conflict, and launch is not 18// blocked. In subsequent calls to ProvisionProduct, do not include conflicted 19// TagOption keys as tags, or this causes the error "Parameter validation failed: 20// Missing required parameter in Tags[N]:Value". Tag the provisioned product with 21// the value sc-tagoption-conflict-portfolioId-productId. 22func (c *Client) DescribeProvisioningParameters(ctx context.Context, params *DescribeProvisioningParametersInput, optFns ...func(*Options)) (*DescribeProvisioningParametersOutput, error) { 23 if params == nil { 24 params = &DescribeProvisioningParametersInput{} 25 } 26 27 result, metadata, err := c.invokeOperation(ctx, "DescribeProvisioningParameters", params, optFns, addOperationDescribeProvisioningParametersMiddlewares) 28 if err != nil { 29 return nil, err 30 } 31 32 out := result.(*DescribeProvisioningParametersOutput) 33 out.ResultMetadata = metadata 34 return out, nil 35} 36 37type DescribeProvisioningParametersInput struct { 38 39 // The language code. 40 // 41 // * en - English (default) 42 // 43 // * jp - Japanese 44 // 45 // * zh - Chinese 46 AcceptLanguage *string 47 48 // The path identifier of the product. This value is optional if the product has a 49 // default path, and required if the product has more than one path. To list the 50 // paths for a product, use ListLaunchPaths. You must provide the name or ID, but 51 // not both. 52 PathId *string 53 54 // The name of the path. You must provide the name or ID, but not both. 55 PathName *string 56 57 // The product identifier. You must provide the product name or ID, but not both. 58 ProductId *string 59 60 // The name of the product. You must provide the name or ID, but not both. 61 ProductName *string 62 63 // The identifier of the provisioning artifact. You must provide the name or ID, 64 // but not both. 65 ProvisioningArtifactId *string 66 67 // The name of the provisioning artifact. You must provide the name or ID, but not 68 // both. 69 ProvisioningArtifactName *string 70} 71 72type DescribeProvisioningParametersOutput struct { 73 74 // Information about the constraints used to provision the product. 75 ConstraintSummaries []types.ConstraintSummary 76 77 // The output of the provisioning artifact. 78 ProvisioningArtifactOutputs []types.ProvisioningArtifactOutput 79 80 // Information about the parameters used to provision the product. 81 ProvisioningArtifactParameters []types.ProvisioningArtifactParameter 82 83 // An object that contains information about preferences, such as regions and 84 // accounts, for the provisioning artifact. 85 ProvisioningArtifactPreferences *types.ProvisioningArtifactPreferences 86 87 // Information about the TagOptions associated with the resource. 88 TagOptions []types.TagOptionSummary 89 90 // Any additional metadata specifically related to the provisioning of the product. 91 // For example, see the Version field of the CloudFormation template. 92 UsageInstructions []types.UsageInstruction 93 94 // Metadata pertaining to the operation's result. 95 ResultMetadata middleware.Metadata 96} 97 98func addOperationDescribeProvisioningParametersMiddlewares(stack *middleware.Stack, options Options) (err error) { 99 err = stack.Serialize.Add(&awsAwsjson11_serializeOpDescribeProvisioningParameters{}, middleware.After) 100 if err != nil { 101 return err 102 } 103 err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpDescribeProvisioningParameters{}, middleware.After) 104 if err != nil { 105 return err 106 } 107 if err = addSetLoggerMiddleware(stack, options); err != nil { 108 return err 109 } 110 if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { 111 return err 112 } 113 if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { 114 return err 115 } 116 if err = addResolveEndpointMiddleware(stack, options); err != nil { 117 return err 118 } 119 if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil { 120 return err 121 } 122 if err = addRetryMiddlewares(stack, options); err != nil { 123 return err 124 } 125 if err = addHTTPSignerV4Middleware(stack, options); err != nil { 126 return err 127 } 128 if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { 129 return err 130 } 131 if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { 132 return err 133 } 134 if err = addClientUserAgent(stack); err != nil { 135 return err 136 } 137 if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { 138 return err 139 } 140 if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { 141 return err 142 } 143 if err = stack.Initialize.Add(newServiceMetadataMiddleware_opDescribeProvisioningParameters(options.Region), middleware.Before); err != nil { 144 return err 145 } 146 if err = addRequestIDRetrieverMiddleware(stack); err != nil { 147 return err 148 } 149 if err = addResponseErrorMiddleware(stack); err != nil { 150 return err 151 } 152 if err = addRequestResponseLogging(stack, options); err != nil { 153 return err 154 } 155 return nil 156} 157 158func newServiceMetadataMiddleware_opDescribeProvisioningParameters(region string) *awsmiddleware.RegisterServiceMetadata { 159 return &awsmiddleware.RegisterServiceMetadata{ 160 Region: region, 161 ServiceID: ServiceID, 162 SigningName: "servicecatalog", 163 OperationName: "DescribeProvisioningParameters", 164 } 165} 166