NIFI-5526 Improve PutS3Object processor documentation

This closes #2975.

Signed-off-by: Andy LoPresto <alopresto@apache.org>
This commit is contained in:
Andrew Lim 2018-08-29 13:24:22 -04:00 committed by Andy LoPresto
parent e83ea1f9ae
commit 860663ae3e
No known key found for this signature in database
GPG Key ID: 6EC293152D90B61D
2 changed files with 43 additions and 6 deletions

View File

@ -88,13 +88,13 @@ import com.amazonaws.services.s3.model.UploadPartResult;
@SeeAlso({FetchS3Object.class, DeleteS3Object.class, ListS3.class})
@InputRequirement(Requirement.INPUT_REQUIRED)
@Tags({"Amazon", "S3", "AWS", "Archive", "Put"})
@CapabilityDescription("Puts FlowFiles to an Amazon S3 Bucket\n" +
"The upload uses either the PutS3Object method or PutS3MultipartUpload methods. The PutS3Object method " +
"send the file in a single synchronous call, but it has a 5GB size limit. Larger files are sent using the " +
"multipart upload methods that initiate, transfer the parts, and complete an upload. This multipart process " +
@CapabilityDescription("Puts FlowFiles to an Amazon S3 Bucket.\n" +
"The upload uses either the PutS3Object method or the PutS3MultipartUpload method. The PutS3Object method " +
"sends the file in a single synchronous call, but it has a 5GB size limit. Larger files are sent using the " +
"PutS3MultipartUpload method. This multipart process " +
"saves state after each step so that a large upload can be resumed with minimal loss if the processor or " +
"cluster is stopped and restarted.\n" +
"A multipart upload consists of three steps\n" +
"A multipart upload consists of three steps:\n" +
" 1) initiate upload,\n" +
" 2) upload the parts, and\n" +
" 3) complete the upload.\n" +
@ -103,7 +103,7 @@ import com.amazonaws.services.s3.model.UploadPartResult;
"The AWS libraries select an endpoint URL based on the AWS region, but this can be overridden with the " +
"'Endpoint Override URL' property for use with other S3-compatible endpoints.\n" +
"The S3 API specifies that the maximum file size for a PutS3Object upload is 5GB. It also requires that " +
"parts in a multipart upload must be at least 5MB in size, except for the last part. These limits are " +
"parts in a multipart upload must be at least 5MB in size, except for the last part. These limits " +
"establish the bounds for the Multipart Upload Threshold and Part Size properties.")
@DynamicProperty(name = "The name of a User-Defined Metadata field to add to the S3 Object",
value = "The value of a User-Defined Metadata field to add to the S3 Object",

View File

@ -0,0 +1,37 @@
<!DOCTYPE html>
<html lang="en">
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<head>
<meta charset="utf-8" />
<title>PutS3Object</title>
<link rel="stylesheet" href="../../../../../css/component-usage.css" type="text/css" />
</head>
<body>
<h2>Configuration Details</h2>
<h3>Object Key</h3>
<p>The Object Key property value should not start with "/".</p>
<h3>Credentials File</h3>
<p>The Credentials File property allows the user to specify the path to a file containing the AWS access key and secret key. The contents of the file should be in the following format:</p>
<pre>
[default]
accessKey=&lt;access key&gt;
secretKey=&lt;security key&gt;
</pre>
<p>Make sure the credentials file is readable by the NiFi service user.</p>
<p>When using the Credential File property, ensure that there are no values for the Access Key and Secret Key properties. The Value column should read "No value set" for both. <b>Note:</b> Do not check "Set empty string" for either as the empty string is considered a set value.</p>
</body>
</html>