Upload video to an external storage provider ie. Amazon S3.
Upload video to an external storage provider ie. Amazon S3.
```
npm i @nexrender/action-upload -g
When creating your render job provide this module as one of the postrender actions:
`json`
// job.json
{
"actions": {
"postrender": [
{
"module": "@nexrender/action-upload",
"input": "output.mp4",
"provider": "s3",
"params": {
"region": "us-east-1",
"bucket": "name-of-your-bucket",
"key": "folder/output.mp4",
"acl": "public-read"
}
}
]
}
}
* input optional argument, path of the file you want to upload, can be either relative or absulte path. If skipped, defaults to current job output video file.provider
* required argument, object containing the name of the providerparams
* required argument, object containing parameters for the upload (provider-specific)
`js`
{
'region': 'us-east-1',
'bucket': 'name-of-your-bucket',
'key': 'folder/output.mp4',
'acl': 'public-read'
}region
* required argument, the S3 bucket regionbucket
* required argument, the S3 bucketkey
* required argument, the object keyacl
* required argument, the ACL
Refer to mscdex/node-ftp for information regarding params and usage.
Basic params info:
* host - string - The hostname or IP address of the FTP server. Default: 'localhost'port
* - integer - The port of the FTP server. Default: 21user
* - string - Username for authentication. Default: 'anonymous'password
* - string - Password for authentication. Default: 'anonymous@'
Example:
`js`
{
'host': 'ftp.example.com',
'port': 21,
'user': 'myuser',
'password': 'mypassword123',
'output': '/var/temp/myfile.mp4'
}
You most likely need to authenticate to interact with a GCS bucket. This is done using _Application Default Credentials_. Refer to the Google Cloud Documentation for more information on authentication.
The upload params are given as part of the action:
* bucket (required)item
* (required)contentType
* (optional)cacheControl
* (optional)
Example:
``json
// job.json
{
"actions": {
"postrender": [
{
"module": "@nexrender/action-upload",
"input": "output.mp4",
"provider": "gs",
"params": {
"bucket": "name-of-your-bucket",
"item": "folder/uploaded.mp4",
"contentType": "video/mp4",
"cacheControl": "public, max-age=3600"
}
}
]
}
}