[ Question ] Deploy Azure App Service step

Hello Octopus Team,

I’d like to have some explanations about the new “Deploy Azure App Service” step.

Infrastructure :

  • Azure Container Registry
  • WebApp (using container)

Before you released that new step I created some scripts using az cli to change the image TAG and let the WebApp’s mechanims do the update pulling directly from the ACR.

I’m willing to use your new step to avoid extra scripts maintenance but it seems that your step is trying to acquire the Docker image as if it was an Artefact, and lead to an error.

                    |   == Failed: Acquire packages ==
18:09:40   Info     |     Acquiring packages
18:09:40   Info     |     Making a list of packages to acquire
18:09:40   Verbose  |     Leased worker  XXXX-XXXX  from pool Default Worker Pool (lease WorkerTaskLeases-1135548).
18:09:40   Verbose  |     Package  XXXX-XXXX xxxxxxxxxx is required by action 'Deploy Azure App Service'
18:09:40   Verbose  |     No packages are required on the Octopus Server
18:09:40   Verbose  |     Delta compression is enabled for package transfers from the Octopus Server to deployment targets
18:09:40   Verbose  |     Machine  XXXX-XXXX  still needs packages  XXXX-XXXX  xxxxxxxxxx for action ('Deploy Azure App Service')
18:12:09   Fatal    |     The step failed: Activity failed with error The Docker Registry v2 'xxxxxxxxxx' at https://xxxxxxxxxx.azurecr.io/v2/ does not support downloading packages on the Octopus Server.'.
18:12:09   Verbose  |     Acquire Packages completed
                    |   
                    |     Failed: XXXX-XXXX
18:09:40   Error    |       The Docker Registry v2 'xxxxxxxxxx' at https://xxxxxxxxxx.azurecr.io/v2/ does not support downloading packages on the Octopus Server.
18:12:09   Info     |       Guidance received: Fail
18:12:09   Verbose  |       at Octopus.Server.Orchestration.ServerTasks.Deploy.Guidance.HandleInterruption(Exception ex, String actionName, Boolean actionIsRequiredToRun, Maybe 1 callbackOnExclude, Boolean wasLastAttempt) in C:\BuildAgent\work\c42ca9d2b8233f1c\source\Octopus.Server\Orchestration\ServerTasks\Deploy\Guidance.cs:line 164
                    |       at Octopus.Server.Orchestration.ServerTasks.Deploy.Guidance.ExecuteWithGuidance(Action callback, String actionName, Boolean actionIsRequiredToRun, Maybe 1\ callbackOnExclude) in C:\BuildAgent\work\c42ca9d2b8233f1c\source\Octopus.Server\Orchestration\ServerTasks\Deploy\Guidance.cs:line 110
                    |       at Octopus.Server.Orchestration.ServerTasks.Deploy.ExecutionTaskController 1.<>c__DisplayClass38_1.<AcquirePackages>b__1() in C:\BuildAgent\work\c42ca9d2b8233f1c\source\Octopus.Server\Orchestration\ServerTasks\Deploy\ExecutionTaskController.cs:line 347
                    |       at Octopus.Server.Orchestration.ServerTasks.Deploy.ExecutionTaskController 1.ExecuteWithTransientErrorDetection(Action action, DeploymentTarget deploymentTarget) in C:\BuildAgent\work\c42ca9d2b8233f1c\source\Octopus.Server\Orchestration\ServerTasks\Deploy\ExecutionTaskController.cs:line 672
                    |       at Octopus.Server.Orchestration.ServerTasks.OctoThreadClosure 1.Execute() in C:\BuildAgent\work\c42ca9d2b8233f1c\source\Octopus.Server\Orchestration\ServerTasks\OctoThreadClosure.cs:line 71
                    |     
                    |       Failed: Upload package XXXX-XXXX xxxxxxxxxx 
                    |       

I don’t understand the interest on such behavior for WebApps. :thinking:
Did I missed a point? Or is that how i’ts suppose to run?

Thanks for your anwers,

Best regards,

Grégory.

Hi @gregory.blanc,

Sorry to see you’re running into issue getting this step to work properly.

For clarity on the issue, I am wondering if it would be possible for you to upload your Process JSON for this particular project? It can be located here:


You can direct message it to me if you would rather it not be public.

Looking forward to hearing back.

Regards,
Garrett

Hi @gregory.blanc,

We have diagnosed the cause of the issue, and have a fix that is currently going through our automated testing processes. It should be available within a week or two - keep an eye on this Github issue (Deploy Azure App Service step does not send container download to app · Issue #7088 · OctopusDeploy/Issues · GitHub) for which it release it will be available in.

In the meantime, you can correct this behaviour by going into your step, and flipping the radio button selection from “Deploy from a container image” to “Deploy from a zip…” and then back to “Deploy from a container image”. This will ensure the correct configuration is persisted, and the step should function as expected from there.

Cheers,

Andrew.

2 Likes

Hi @andrew.best,

Thanks for taking time commenting my issue with a workaround.
I will wait for a fix to be ship in a next release.

Regards,

Gregory.