This is the final blog post on series.

The beginning is here: 

...One more thing

Today is 12 of September and Tim Cook will present his "One more thing". I want to finalize my blog series with one more scenario.

Upgrade, with unpublishing

We will increase the version, unpublish current version and install a new version.

app.json > “version”: “3.0.0.0”

Container Sandbox

Uninstall and unpublish currently installed version of our app using Powershell (and navcontainerhelper module)

UnPublish-NavContainerApp -containerName $containername `
    -appName $appname `
    -unInstall `
    -version $version `
    -tenant $tenant 


VSCode > AL:Publish without debugging (Ctrl+F5)

And we get an error

Start-NavContainerAppDataUpgrade -containerName $containername `
    -appName $appname 

And will have a look at the installation log

Online Sandbox

>Web client > Extensions Page > Uninstall
>Web client > Extensions Page > Unpublish
VSCode > AL:Publish without debugging (Ctrl+F5)

We get an error

>Web client > Extensions Page > Install

Online Business Central Production Tenant

>Web client > Extensions Page > Uninstall
>Web client > Extensions Page > Unpublish
>Web client > Extensions Page >Upload .app file

The result of this step can be displayed in the next picture

  

Summary

I've put summary from previous blogs, and current blog in one table

Process Previous App version is installed New App version changed Upgrade Codeunit triggers Install Codeunit triggers Supported in Local Sandbox Supported in Online Sandbox

Supported in Online Production

Publish & Install - Yes - Yes Yes Yes Yes
Upgrade App Yes Yes Yes - Yes Yes Yes
Re-Install Yes - - Yes Yes Yes -
Uninstall & Install Yes - - Yes Yes Yes Yes
Unpublish & Re-install Yes - - Yes Yes Yes -
Unpublish & Upgrade Yes Yes Yes - Yes Yes Yes

Hope, this series demystified what's going on during the installation process for Business Central Apps.

The code could be found here https://github.com/dkatson/Installation-process-for-BC-Apps 

Save to your shortcuts… like I did =)

Enjoy!