Deploy static website into Azure storage account


#1

Hello,

I’m stuck while trying to deploy files from a NuGet package into an Azure storage container. I’ve tried implementing a custom Azure PowerShell script step, but then I don’t know how to get the contents from the NuGet package. And if I try to use a normal deployment step, in which I can use Octopus variables to get the extracted content, a deployment target is expected to be set. Has anyone had any success deploying a static web site into an Azure storage container?

Thanks!
Eric


(Mark Siedle) #3

Hi Eric,

Thanks for getting in touch.

While we don’t have an official step for deploying to Azure Storage containers (yet), we do have community steps that may do what you need.

If you search for “Azure storage” on the steps page, you will see the “Azure Blob Storage Upload” community step that you can install and add. This has been contributed by the community, with the details available here.

If you run into any problems with this step template, we have a Community Slack that may be able to offer some help, but also please keep in mind that these community steps may not be up to date with Azure and may not have official documentation on how to use each field within the step.

We do plan to create an official step and you can track this GitHub issue to be notified when it is available.

If instead you continue with the Azure PowerShell script step approach, in terms of getting the contents of a referenced NuGet package in your step, our documentation on referencing files within a package shows you some examples of how to access these paths in PowerShell. This will give you a path to the extracted package contents.

Hope this helps.

Cheers
Mark


#4

Hi Mark,

Thanks for your support.

I have found some additional information on the Slack channel which you have provided. What I ended up with is a two-step process:

  1. Deploy a package - I’ve installed a tentacle on the server and deploy into a staging folder so that I can access the NuGet package contents from Step 2

  2. Run an Azure Powershell script - Where I use AzCopy to copy the package contents into blob storage based on some input variables

For anyone interested, I retreived the package install folder from the previous step through $OctopusParameters[“Octopus.Action[<Deploy_package_step_name>].Output.Package.InstallationDirectoryPath”].

I also found through the Slack channel that there is a way around the server Tentacle, and wrap the deployment contents in a wrapper ZIP containing the PowerShell script, though I haven’t tried it yet.

Thanks again

Eric


(Mark Siedle) #5

Thanks for letting us know Eric. Glad you got it working with AzCopy :slight_smile:

Cheers
Mark