A simple Azure Function to Unzip files from a blob storage container to another one
The following features are supported in this current version:
Supported Archive Types: .zip, .rar
Archive support is currently implemented using the sharpcompress library
Password protetected zip files
The current solution provisions an Azure KeyVault instance for storing the zip archive(s) password used during the unzipping process. If password protected zip files are uploaded to the blob storage container, this would be the password used when attempting to un-zip the files into the destination storage container.*
How to deploy
To deploy all the resources in your Azure subscription, just click on the Deploy to Azure button
Fill-up the form and voila! It will be automatically deployed in your Azure subscription. If you don't own an Azure subscription already, you can create your free account today. It comes with 200$ credit, so you can experience almost everything without spending a dime. Create your free Azure account today
How to use it.
You can upload files to an Azure Blob storage using many different tools and code, but for this quick introduction let's use the Azure Portal.
navigate to the resource Group you just deployed (ex: demoAzUnzipEverything).
Select the Storage Account whose name starts with "dropzone".
Click on Blobs, in the middle of the screen.
Click on the input-files container.
Click on the Upload button, and you can now upload a zip file.
After a few second the files you uploaded will be Unzipped into the blob storage container output-files.
Continuous Integration (CI)
Have a look, the Azure DevOps project is public!
Create a Continuous Integration, Continuous Deployment (CI-CD) for your Azure Function
In this video, I show you how to write an Azure Resource Manager (#ARM) template to deploy automatically your serverless Azure Function to Azure. It can be then used with a "Deploy to Azure" button from GitHub or any website, or in an Azure Pipeline to complete a Continuous Integration, Continuous Deployment (CI-CD) solution.
There is also a written version if you prefer reading: http://www.frankysnotes.com/2019/07/four-ways-to-deploy-your-azure-function.html
A GitKraken Glo board is also available.
- Add Support for .rar (Thank you @mreyeros)
- Add ARM template
- Add a Deploy to Azure button
I have a blog post about this Azure Function.
I also have a video where I build and test the function.
I also have an extended version where I introduce more the Visual Studio Extension to work with Azure Function. And explain more details about the Azure Function V2.
Thanks goes to these wonderful people (emoji key):