World is now on Opti ID! Learn more

fredriktjarnberg
Jun 15, 2009
  5767
(1 votes)

Module Installation – Dealing with Regrets

If you’re an above average, EPiServer module installer developer you might have experienced writing a custom wizard for retrieving data. When doing so you take on a responsibility to handle cancellation, not only for your own script but for any script that is calling you (“install site with sql database” being one). This is easy to forget… I know from personal experience. The good news is that it is very easy to handle the event of user regrets (canceling your wizard) and here’s how":

In your PS script when calling the Show method on the wizard you need to get capture the return value.

$proceedWithInstall = $wizard.Show()

In order to terminate any active installer transactions you then need to look at the return value and if it’s false, you simply throw an exception to cause active transactions to rollback
 
if ($proceedWithInstall -eq $false)
{
throw(New-Object ApplicationException("User cancelled the installation"))
}

Not doing the above will make the surrounding script (Install site…) complete as if nothing happened.
Jun 15, 2009

Comments

Please login to comment.
Latest blogs
Optimizely Frontend Hosting: Deploy Without PowerShell Using the @kunalshetye/opticloud Package

In my last two blog posts, I walked through how to get started with deploying a headless app to Optimizely Frontend Hosting using PowerShell and th...

Szymon Uryga | Jul 15, 2025

New Administrator Certifications Are Here — 7 Ways to Get Certified with Optimizely

Not a developer but want to prove your product expertise? We’ve got great news. We’re thrilled to announce the expansion of Optimizely’s...

Satata Satez | Jul 15, 2025

Optimizely London Dev Meetup 10th July 2025

Overview & Agenda As 2025 rolled around this year it was time for another one of our much beloved developer meetups in London. This year, I took us...

Scott Reed | Jul 15, 2025

Optimizely Developer Meet-up (for Non-Techies)

I’ve been part of the Optimizely community for over seven years. Back when Episerver was still just “Epi”, Optimizely was the best A/B testing...

Mark Welland | Jul 14, 2025