PutGCSObject
Description
Writes the contents of a FlowFile as an object in a Google Cloud Storage.
Tags
archive, gcs, google, google cloud, put
Properties
In the list below required Properties are shown with an asterisk (*). Other properties are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.
Display Name | API Name | Default Value | Allowable Values | Description |
---|---|---|---|---|
GCP Credentials Provider Service * | GCP Credentials Provider Service | Controller Service: GCPCredentialsService Implementations: GCPCredentialsControllerService | The Controller Service used to obtain Google Cloud Platform credentials. | |
Project ID | gcp-project-id | Google Cloud Project ID Supports Expression Language, using Environment variables. | ||
Bucket * | gcs-bucket | ${gcs.bucket} | Bucket of the object. Supports Expression Language, using FlowFile attributes and Environment variables. | |
Key * | gcs-key | ${filename} | Name of the object. Supports Expression Language, using FlowFile attributes and Environment variables. | |
Resource Transfer Source * | Resource Transfer Source | FlowFile Content |
| The source of the content to be transferred |
File Resource Service * | File Resource Service | Controller Service: FileResourceService Implementations: AzureBlobStorageFileResourceService AzureDataLakeStorageFileResourceService GCSFileResourceService S3FileResourceService StandardFileResourceService | File Resource Service providing access to the local resource to be transferred This property is only considered if:
| |
Content Type | gcs-content-type | ${mime.type} | Content Type for the file, i.e. text/plain Supports Expression Language, using FlowFile attributes and Environment variables. | |
CRC32C Checksum | gcs-object-crc32c | CRC32C Checksum (encoded in Base64, big-Endian order) of the file for server-side validation. Supports Expression Language, using FlowFile attributes and Environment variables. | ||
Object ACL | gcs-object-acl |
| Access Control to be attached to the object uploaded. Not providing this will revert to bucket defaults. | |
Server Side Encryption Key | gcs-server-side-encryption-key | An AES256 Encryption Key (encoded in base64) for server-side encryption of the object. Supports Expression Language, using FlowFile attributes and Environment variables. | ||
Overwrite Object * | gcs-overwrite-object | true |
| If false, the upload to GCS will succeed only if the object does not exist. |
Content Disposition Type | gcs-content-disposition-type |
| Type of RFC-6266 Content Disposition to be attached to the object | |
GZIP Compression Enabled | gzip.content.enabled | true |
| Signals to the GCS Blob Writer whether GZIP compression during transfer is desired. False means do not gzip and can boost performance in many cases. |
Storage API URL | storage-api-url | Overrides the default storage URL. Configuring an alternative Storage API URL also overrides the HTTP Host header on requests as described in the Google documentation for Private Service Connections. Supports Expression Language, using Environment variables. | ||
Number of retries * | gcp-retry-count | 6 | How many retry attempts should be made before routing to the failure relationship. | |
Proxy Configuration Service | proxy-configuration-service | Controller Service: ProxyConfigurationService Implementations: StandardProxyConfigurationService | Specifies the Proxy Configuration Controller Service to proxy network requests. Supported proxies: HTTP + AuthN |
Dynamic Properties
Name | Value | Description |
---|---|---|
The name of a User-Defined Metadata field to add to the GCS Object | The value of a User-Defined Metadata field to add to the GCS Object | Allows user-defined metadata to be added to the GCS object as key/value pairs Supports Expression Language: Yes, evaluated using FlowFile Attributes and Environment variables. |
Relationships
Name | Description |
---|---|
failure | FlowFiles are routed to this relationship if the Google Cloud Storage operation fails. |
success | FlowFiles are routed to this relationship after a successful Google Cloud Storage operation. |
Reads Attributes
Name | Description |
---|---|
filename | Uses the FlowFile's filename as the filename for the GCS object |
mime.type | Uses the FlowFile's MIME type as the content-type for the GCS object |
Writes Attributes
Name | Description |
---|---|
gcs.bucket | Bucket of the object. |
gcs.cache.control | Data cache control of the object. |
gcs.component.count | The number of components which make up the object. |
gcs.content.disposition | The data content disposition of the object. |
gcs.content.encoding | The content encoding of the object. |
gcs.content.language | The content language of the object. |
gcs.crc32c | The CRC32C checksum of object's data, encoded in base64 in big-endian order. |
gcs.create.time | The creation time of the object (milliseconds) |
gcs.encryption.algorithm | The algorithm used to encrypt the object. |
gcs.encryption.sha256 | The SHA256 hash of the key used to encrypt the object |
gcs.etag | The HTTP 1.1 Entity tag for the object. |
gcs.generated.id | The service-generated for the object |
gcs.generation | The data generation of the object. |
gcs.key | Name of the object. |
gcs.md5 | The MD5 hash of the object's data encoded in base64. |
gcs.media.link | The media download link to the object. |
gcs.metageneration | The metageneration of the object. |
gcs.owner | The owner (uploader) of the object. |
gcs.owner.type | The ACL entity type of the uploader of the object. |
gcs.size | Size of the object. |
gcs.update.time | The last modification time of the object (milliseconds) |
gcs.uri | The URI of the object as a string. |
mime.type | The MIME/Content-Type of the object |
State Management
This component does not store state.
Restricted
This component is not restricted.
Input Requirement
This component requires an incoming relationship.
System Resource Considerations
This component does not specify system resource considerations.