The AppLife Update Blog

  • Reviewing Update History with AppLife Server

    There are many advantages to hosting your update packages with AppLife Server over a standard http file server. One big advantage is the ability to drill into your deployed install base and investigate what is going on out there with your applications. Once logged in and navigated to your specific application, using the search box to filter down the client list provides a lot of information. Say you want to see which deployed clients have not updated to the most recent release. Just enter the previous version number in the search box and you’ll be looking at all of the clients that are still running your previous version.




    You can search for any of the values listed for your deployed clients. To review the update history of a specific computer, search for a computer name or known Client Access Key.

    Here’s my laptop (BRIANHLT2).



    The last time I ran this particular application was on 2/1/2016. And to see all of the update history for this installation, click on the information icon.




    And if we look into the last update from version to we have:




    If this had been a failed update, information about the reason for the failure, and most importantly, the location of the update execution log on the deployed client would be displayed.




    Access to deployed installation status can be very valuable in troubleshooting issues that arise as well as ensuring updates are being deployed as you expect them to be. Hosting with AppLife Server provides all of this information to you.

    Posted at 17 February, 2017 | By :Brian Haas | Categories : AppLife Update |
  • Inserting Raw Xml During an Update

    The Change Xml Node action can be used to add content to an Xml Node, and it can also insert additional, or raw Xml into a file.  To insert raw Xml, uncheck the option to Use Xml encoding in replacement text.



    Here’s an example of when this feature comes in handy.  The objective is to insert two new entries into the web.config assemblyBinding node.  We can replace the entire content of the target node as raw Xml.  After an update, we end up with:


    Non - Encoded Insert


    Here’s what is inserted if we do not uncheck the box:


    Encoded Insert


    Clearly not the desired result.

    Posted at 12 January, 2016 | By :Brian Haas | Categories : AppLife Update |
  • Introducing AppLife Update 5.2

    AppLife Update 5.2 was released today, along with AppLife Server 1.1.  Notable features include:

    • Select Server Side Access Control Lists During Publishing

      AppLife Server Access Control Lists can be selected from Make Update during the update publishing process.

    • Install .Net 4.6 Framework Action

      Detect and install the the .Net Framework 4.6 during application updates.

    • Improved Change XML Node Action

      Replace raw inner Xml with the Change Xml Node action.

    Posted at 20 August, 2015 | By :Brian Haas | Categories : AppLife Update |
  • GO Statements in Run SQL Action

    What’s in a GO statement?  Quite a bit actually.  Contrary to popular belief, GO is not actually part of T-SQL.  It is a command recognized by the sqlcmd and osql utilities and the SQL Server Management Studio Code editor.  When we created the Run SQL Query update action, we included parsing on GO during the update build process, which allowed users to execute their migration scripts when including them as a .sql file.  This works nicely for pure SQL.  However, when SQL is inserted into the action editor, it is parsed real-time as the update is executing. In this context, the the SQL was passed directly into a SQLCommand object and executed.  GOs don't fly there.  So why wouldn't one just put their SQL into a .sql file and let the build process parse the GO statements?  Shared Property expansions.  If you want to use Shared Property information as part of your SQL input, things became difficult.  With AppLife Update 5.1, we’ve added GO parsing to the update engine and what was once difficult, is now quite easy. 


    Posted at 1 May, 2015 | By :Brian Haas | Categories : AppLife Update |
  • Introducing AppLife Update 5.1

    AppLife Update 5.1 was released today. Some new features added includes:


    • Improved Run SQL Query Action
    • The new Run SQL Query action now supports the use of the GO statement in SQL added directly to the action editor.  GO has always been supported in linked query files, but not in directly entered SQL text.  This is significant as the only place Shared Properties are supported is within SQL entered directly in the action editor.

    • Pre/Post Build Script Update Version Variable Definition
    • Pre/Post build scripting now has access to the Update Version being built within the scripts.  This is especially useful when local paths include the version being built and scripting around those file paths must take place before or after creating a new update.

    • New Shared Property Action Options
    • There are two new options when creating a Shared Property through the Set Shared Property action.  Number (double) values can now be created. Also, the Update Publish Date/Time is available to be assigned to a Shared Property.

    • New Display Property option on the Execute MSI Action
    • The text displayed to the user during the execution of an MSI using the Execute MSI action is now configurable.

    • Added API Access to Update Summary Text
    • Update Summary text from any locale’ can be accessed through the Update Controller API.

    Posted at 31 March, 2015 | By :Brian Haas | Categories : AppLife Update |