Link Search Menu Expand Document
Table of contents
  1. Flow - drbeta
    1. Description
    2. Variables
      1. Used
      2. Created
    3. Termination
    4. Flow
    5. Notes

Flow - drbeta

Description

Trigger a check on updating the application to the latest beta version. The flow begins by checking the current application version against the currently available drafts beta version (online). If the version numbers are equal, then no update is carried out, but the completion notification is set up accordingly. If the versions are not equal, this triggers a process to update Drafts.

The first step is to determine if the user has administrator rights (determined by checking the groups that the user is a member of). The process will then continue as a single script block for administrative users, or as as two blocks to allow the provision of administrative credentials if the user does not have administrative access.

In each case, the script blocks will close Drafts (if it is open), retrieve the latest version of the ZIP file containing the beta, unzip the app, copy it into the applications folder, tidy-up the downloads folder, then relaunch Drafts and trigger the flow completion.

Variables

Used

No variables are passed into this flow.

Created

The following variables are set-up by the flow.

Variable Description
NotificationTitle The title to be shown in any completion notification.
NotificationMessage The message to be shown in any completion notification.

Termination

Flow

drbeta

Notes

  • Local Drafts version is read from the application info.
  • Currently available beta version is read from the JSON file available online that Drafts uses to check for updates.
  • The download, unzip and copy to install script includes mandatory visual notifications. These are included because the process can be slow on some devices, and there is no progress bar to display.
  • The Drafts beta is always published to the same ZIP file on AWS.
  • Translocation of the app file should not be necessary as we are using a Terminal-level copy command.