1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195
|
// Code generated by smithy-go-codegen DO NOT EDIT.
package databrew
import (
"context"
"fmt"
awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
"github.com/aws/aws-sdk-go-v2/aws/signer/v4"
"github.com/aws/aws-sdk-go-v2/service/databrew/types"
"github.com/aws/smithy-go/middleware"
smithyhttp "github.com/aws/smithy-go/transport/http"
)
// Creates a new job to transform input data, using steps defined in an existing
// Glue DataBrew recipe
func (c *Client) CreateRecipeJob(ctx context.Context, params *CreateRecipeJobInput, optFns ...func(*Options)) (*CreateRecipeJobOutput, error) {
if params == nil {
params = &CreateRecipeJobInput{}
}
result, metadata, err := c.invokeOperation(ctx, "CreateRecipeJob", params, optFns, c.addOperationCreateRecipeJobMiddlewares)
if err != nil {
return nil, err
}
out := result.(*CreateRecipeJobOutput)
out.ResultMetadata = metadata
return out, nil
}
type CreateRecipeJobInput struct {
// A unique name for the job. Valid characters are alphanumeric (A-Z, a-z, 0-9),
// hyphen (-), period (.), and space.
//
// This member is required.
Name *string
// The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role
// to be assumed when DataBrew runs the job.
//
// This member is required.
RoleArn *string
// One or more artifacts that represent the Glue Data Catalog output from running
// the job.
DataCatalogOutputs []types.DataCatalogOutput
// Represents a list of JDBC database output objects which defines the output
// destination for a DataBrew recipe job to write to.
DatabaseOutputs []types.DatabaseOutput
// The name of the dataset that this job processes.
DatasetName *string
// The Amazon Resource Name (ARN) of an encryption key that is used to protect the
// job.
EncryptionKeyArn *string
// The encryption mode for the job, which can be one of the following:
// - SSE-KMS - Server-side encryption with keys managed by KMS.
// - SSE-S3 - Server-side encryption with keys managed by Amazon S3.
EncryptionMode types.EncryptionMode
// Enables or disables Amazon CloudWatch logging for the job. If logging is
// enabled, CloudWatch writes one log stream for each job run.
LogSubscription types.LogSubscription
// The maximum number of nodes that DataBrew can consume when the job processes
// data.
MaxCapacity int32
// The maximum number of times to retry the job after a job run fails.
MaxRetries int32
// One or more artifacts that represent the output from running the job.
Outputs []types.Output
// Either the name of an existing project, or a combination of a recipe and a
// dataset to associate with the recipe.
ProjectName *string
// Represents the name and version of a DataBrew recipe.
RecipeReference *types.RecipeReference
// Metadata tags to apply to this job.
Tags map[string]string
// The job's timeout in minutes. A job that attempts to run longer than this
// timeout period ends with a status of TIMEOUT .
Timeout int32
noSmithyDocumentSerde
}
type CreateRecipeJobOutput struct {
// The name of the job that you created.
//
// This member is required.
Name *string
// Metadata pertaining to the operation's result.
ResultMetadata middleware.Metadata
noSmithyDocumentSerde
}
func (c *Client) addOperationCreateRecipeJobMiddlewares(stack *middleware.Stack, options Options) (err error) {
if err := stack.Serialize.Add(&setOperationInputMiddleware{}, middleware.After); err != nil {
return err
}
err = stack.Serialize.Add(&awsRestjson1_serializeOpCreateRecipeJob{}, middleware.After)
if err != nil {
return err
}
err = stack.Deserialize.Add(&awsRestjson1_deserializeOpCreateRecipeJob{}, middleware.After)
if err != nil {
return err
}
if err := addProtocolFinalizerMiddlewares(stack, options, "CreateRecipeJob"); err != nil {
return fmt.Errorf("add protocol finalizers: %v", err)
}
if err = addlegacyEndpointContextSetter(stack, options); err != nil {
return err
}
if err = addSetLoggerMiddleware(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
return err
}
if err = addResolveEndpointMiddleware(stack, options); err != nil {
return err
}
if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
return err
}
if err = addRetryMiddlewares(stack, options); err != nil {
return err
}
if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
return err
}
if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
return err
}
if err = addClientUserAgent(stack, options); err != nil {
return err
}
if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
return err
}
if err = addSetLegacyContextSigningOptionsMiddleware(stack); err != nil {
return err
}
if err = addOpCreateRecipeJobValidationMiddleware(stack); err != nil {
return err
}
if err = stack.Initialize.Add(newServiceMetadataMiddleware_opCreateRecipeJob(options.Region), middleware.Before); err != nil {
return err
}
if err = awsmiddleware.AddRecursionDetection(stack); err != nil {
return err
}
if err = addRequestIDRetrieverMiddleware(stack); err != nil {
return err
}
if err = addResponseErrorMiddleware(stack); err != nil {
return err
}
if err = addRequestResponseLogging(stack, options); err != nil {
return err
}
if err = addDisableHTTPSMiddleware(stack, options); err != nil {
return err
}
return nil
}
func newServiceMetadataMiddleware_opCreateRecipeJob(region string) *awsmiddleware.RegisterServiceMetadata {
return &awsmiddleware.RegisterServiceMetadata{
Region: region,
ServiceID: ServiceID,
OperationName: "CreateRecipeJob",
}
}
|