Itential Automation Platform
  • 17 Jun 2024
  • Dark
    Light
  • PDF

Itential Automation Platform

  • Dark
    Light
  • PDF

Article summary

BREAKING CHANGES FOR 2022.1.0

The following are breaking changes in Itential Automation Platform (IAP) for the 2022.1 release.

Null vs. Undefined in Workflows (2022.1.0)

In earlier maintenance releases (2021.1.10 and 2021.2.4), Itential made a breaking change where undefined would no longer be inserted into the database as null but instead as ~4undefined. The original intent was to improve how null and undefined were treated, which would then allow IAP to decode it to undefined at runtime. Since then, Itential has discovered (and documented) several use cases where IAP returns null or undefined differently with various tasks.

What should I do?

Since the use of null or undefined is not recommended, this breaking change notice will not apply to everyone.

For those who do utilize null or undefined in their workflows, refer to the illustrative example and matrix presented here: Null vs. Undefined in Workflows.

Removal of Activate Property within Service Config Layer

Workfow Engine will no longer support the activate property within its service_config. Currently, this property allows a specific configuration of the Workflow Engine application to allow or disallow working tasks upon startup. The replacement for this call is the processTasksOnStart property that exists in the properties.json. The replacement property can be set to true to allow working tasks on a specific server on startup, or it can be set to false to disallow working tasks on startup. See sample configuration below.

One special case is if a job is started via child job and passes in a value of undefined for a variable. This will be processed as type null instead of being processed with an undefined type.

Item Description Deprecation Release Removal Release Replacement
activate (service_config property) Establishes if the Workflow Engine task worker is active on startup; this will no longer be determined at the service_config layer. 2021.1 2022.1 processTasksOnStart (properties.json property)

Sample configuration in properties.json

{
  "processTasksOnStart" : false ,
  "pathProps": {
    "description": "File Path Variables",
    "sdk_dir": "/opt/pronghorn-applications",
    "encrypted": true
  },
  "id": "profile1",
  "mongoProps": {
    "credentials": {
      "passwd": "itentialPassword",
      "user": "itentialUser"
    },
    "db": "pronghorn",
    "url": "mongodb://localhost:27017"
  }
}

What Should I Do?

While not the only use case, a common usage of this property is when IAP is setup in a "Disaster Recovery" setup. In addition, in previous versions of IAP, disaster recovery could be setup in one of the following ways:

Version Config Setting
2019.2
2019.3
activate service config property in TaskWorker
2020.1 activate service config property in WorkflowEngine
2020.2+ processTasksOnStart property within the properties.json file

Any existing setups that previously used these settings should be updated to use the processTasksOnStart.

Removal of NPM Indexing

Creating indexes in IAP via npm run index is no longer supported in the 2022.1 release. Indexing is now standardized via new APIs, as well as a new page inside Admin Essentials. This will affect multiple applications, including:

  • app-workflow_engine
  • app-mop
  • app-service_catalog

What Should I Do?

The API replacement for the npm indexing scripts is POST /indexes/:collectionName where :collectionName aligns with the collection that needs to be indexed. For example, to index the jobs collection, the API would look like POST /indexes/jobs. This API does not need a request body. To check if a collection has been properly indexed, the API GET /indexes/:collectionName/status can be used, so for the jobs collection this could be called with GET /indexes/jobs/status. This can also be achieved by opening the Indexing tab on the active profile in Admin Essentials, and creating the necessary indexes.

The codePointAt Task Now Returns an Error Instead of an Empty String

The codePointAt task now returns an error when the position value is out of range. Previously the task returned an empty string and a 204 status code. This change was made because returning an empty string yet indicating a successful request was seen as misleading.

What Should I Do?

Find any workflows that are expecting an empty string and change the logic to look for errors. Add any error handling around the codePointAt task you think you may need.

Removal of Files in ui/lib/rodeo-ui/src

In an effort to reduce file size, certain files have been removed from the rodeo-ui/src directory folder in the ui/lib directory of pronghorn_core. These files were all Javascript files; the CSS files in the directory have been left intact.

What Should I Do?

Check any custom apps that reference these files, or imports of Javascript files from the rodeo-ui/src directory folder, and remove these references. Any CSS file imports from that folder should still function properly.


Was this article helpful?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.