Project Reference Management
  • 11 Feb 2025
  • Dark
    Light
  • PDF

Project Reference Management

  • Dark
    Light
  • PDF

Article summary

Feature Introduction

Reference management enhances the experience of importing and working with assets within Projects. With reference management, users can now rename and import assets, and have the links to those assets dynamically remapped within their respective project workflows. This feature helps Itential Platform users efficiently create and manage their projects.

The guide will explain how Reference Management works within Projects for the Platform 6 release, including related API endpoints, and how to troubleshoot any issues that may occur while using the feature.

API Endpoints

A user should be familiar with Projects in general, as well as each component type (i.e., workflows, forms, templates, transformations, etc). Users should know how to open a project in the editor view and import/transfer components into the project. Additionally, there are various APIs that are related:

API Endpoint Description
POST /automation-studio/discoverReferences Discover referenced resources (which validation uses in the background).
POST /automation-studio/projects/import Imports a project document from a JSON document.
POST /automation-studio/projects/{projectId}/components/add Add one or more components to project. Essentially, this endpoint will add the components that are passing into the body of the defined project. It will not copy/move any sub-components that are not included in the body.

Reference Management in Projects

Reference Management in Projects is designed to ensure integrity so that when one asset changes, any other assets relying on it are updated, thereby preventing errors and properly managing asset references.

When importing an asset with references (such as a workflow or JST) into a project, the references can be selected for import into the project along with the parent asset. When this is done, the referenced assets are re-mapped to be local to the project. For example, a workflow is selected for import into a project, a referenced JST is discovered and offered to the user for import along with the workflow. If this option is selected, the workflow and JST are both copied into the project, and the workflow is modified so that it references the JST that was just copied into the project.

When renaming referenced assets within a project, assets also will have their references updated to the new name. For example, if a project has a workflow that references a JST by “JST A”, and that name is updated to “JST B”, then the reference within the workflow will be updated to point to “JST B”.

Use Cases

The following use cases are good examples of how Reference Management supports the user experience and efficiently manages projects.

Use Case 1: A user has a project with a workflow and a form. The workflow references the form. The form is renamed, and the reference to the form within the workflow is automatically updated to the new name.

Use Case 2: A user has an empty project. A workflow from the global space is selected for import into the project. Upon import, the user is offered to copy the references from that workflow into the project. If the user selects to copy these references into the project, the parent workflow is now updated to point to the references that are now local to the project.

How to Use Reference Management

To use this feature, you must have a running instance of Platform 6. The Reference Management logic is built directly into the Itential Platform, specifically the Project space in Studio (formerly Automation Studio).

Access Projects

To use the Reference Management feature, you need to first access the Projects page.
There are a couple of ways to do this. You can click View All Projects on the upper-right of the screen of the Itential Platform homepage (Figure 1). Alternately, you can select Automation Studio from the left side navbar menu to open the Studio application (Figure 2) and then click the Projects icon in the top toolbar, or click the Try Projects button in the Projects card (Figure 3).

Figure 1
Figure 01
 

Figure 2
Figure 02
 

Figure 3
Figure 03

Build a New Project

Once on the Projects screen, you can then build a new project by clicking New Project, giving it a name, and then selecting Build from the template type dropdown. This will allow you to copy over components from the global space into the project.

Figure 4
Figure 04
 

Figure 5
Figure 05

Select Components

If you select a component, such as a workflow, that references other components, you have the option to copy those other components into the project as well. When this occurs, the Project Reference Management tool will automatically update your parent workflows to point to the new components.

From the examples below, selecting the parent workflow will automatically select any referenced components as well. When the boxes are checked, the components will be copied into the new project. When unchecked, the component will not be copied, but the parent workflow will still reference that component from the global space, instead of the local project space.

Figure 6
Figure 06
 

Figure 7
Figure 07
 

Alternatively, if you choose not to copy over the components into the project and instead choose to reference the components from the global space, the parent workflow is then updated to reference (point) outside of the project. In other words, whatever the user decides to do, any references to components are automatically updated to point to the specified location. In the example image (Figure 7), "Child Workflow 3" will not be copied to the project.

Internal Project Reference Management

To utilize Reference Management inside of a project, you will need to build a project by clicking New Project, giving it a name, and the selecting Example Project from the template type dropdown. Once inside the project, you will notice the left navigation bar now contains a Project References pop-out button. When you click the button, the Project References Management view will pop-up onto the canvas. From this view, you can get information about the references, if any, used in the project. You can also see the total number of externally referenced projects, whether from the global space or other projects, as well as the option to refresh the status of the references and collapse the view. Clicking any component within this view will open that component up in a new tab.

Figure 8
Figure 08
 

Figure 9
Figure 09
 

Known Limitations, Troubleshooting & Support

Currently, there are no known limitations, constraints or issues associated with this feature.

Should you encounter any issues or need support, please reach out to the Itential Service Desk using the Customer Portal link.

Logs & Monitoring

Any API call used while utilizing the Projects app is logged with other API calls, based on user configuration. More information on logging and monitoring in the Itential Platform is available in the Event Logs & Logging guide.

Testing & Validation (Developer)

All testing and validation is fulfilled automatically by Itential.

Tests for the UI components are defined in the following files for the two (2) UI elements:

  • services/app-automation_studio/src/components/ProjectsEditor/ReferencesPanel/ReferencesPanel.test.jsx
     
  • services/app-automation_studio/src/components/ProjectsHome/CreateProject/CreateProject.test.jsx

API endpoints are defined in the services/app-automation_studio/test/api/tests/ folder, specifically the ./projects/POST.projects.id.components.add.js file for adding components.


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.