Skip to main content
Skip table of contents

Automation

You can automate flows and dashboard deployment, update, and activation by adding special tags to it. An automated app is automatically started when the app is installed or when Flow Director server is started. Further, flows and dashboards changed after a Git pull (automatic or manual) are deactivated without data loss, updated, and reactivated automatically.

Start/Stop Button

Each app has a start/stop button that takes effect if flows and dashboards have automation tags set. If the button is green, the app is started:

Click to stop it:

You can see the corresponding entries in the app log:

Without automation tags set, the button does not affect.

Automation Tags

You can set the following automation tags:

  • automate-<router> (automate for <router> only)

  • automate-all (automate for all routers)

  • automate (synonym of automate-<connectedrouter>; per default the connected router has name flowdirector but that can be changed)

Release Tags (Since 4.1.1)

Add a release tag to a flow or dashboard to ensure it will be only deployed to routers that match this tag. This will allow different flows and dashboards deployed, dependent on the release of the router.

A release tag is structured as follows:

release:<op>:<major>.<minor>.<patch>

<op> is the comparison operator: lt (less-than), le (less-or-equal), gt (greater-than), ge (greater-or-equal).

<major>, <minor>, <patch> are the SwiftMQ release identifier, i.e. 12.5.4.

To deploy a flow to routers with release 12.5.4 or below you add tag release:le:12.5.4. To deploy a dashboard to routers with release 13.0.0 or higher you add tag release:ge:13.0.0.

Automatic Flow Restart

To ensure that a flow handles temporary failures such as connection loss to a database or messaging system, add tag restart to the flow. When a failure happens, the flow is stopped and repeatedly restarted after one minute until the failure condition disappears.

Git Pull

When a Git pull is performed (automatically or manually), all flows and dashboards are selected that have automate set. Flows that have not yet been activated are deployed and activated.

A git pull produces a list of diffs. It is determined which flows and dashboards are affected, and those with automate are updated.

Router Available

When a router becomes available, all flows and dashboards are selected with either automate-<thatrouter> or automate-all and are deployed/activated resp. updated if they are already activated and are affected by the diffs from the last Git pull.

Example: Web API Demo App

Default Dashboard

A dashboard can be tagged with default and it is automatically displayed when the user logs into the app.

For example, the Web API Demo app displays a Shell Terminal as default:

When the user logs into Web API Demo, it is displayed:

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.