This sample demonstrates how to automatically convert images that are uploaded to Firebase Storage to JPEG using ImageMagick.
See file functions/index.js for the image conversion code.
The image conversion is performed using ImagMagick which is installed by default on all Cloud Functions instances. This is a CLI so we execute the command from node using the child-process-promise package. The image is first downloaded locally from the Firebase Storage bucket to the tmp folder using the google-cloud SDK.
The dependencies are listed in functions/package.json.
The function triggers on upload of any file to your Firebase project's default Cloud Storage bucket.
To deploy and test the sample:
- Create a Firebase project on the Firebase Console and visit the Storage tab.
- Deploy your project using
firebase deploy - Go to the Firebase Console Storage tab and upload an image that is not a JPEG, for instance a PNG. After a short time an image with the same base name but the
.jpgextension will be created in the same folder (make sure you refresh the UI to see the new file).