Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Using automation rules to dynamically set attributes for Jira Insight Objects.

Taylen Wanner January 12, 2023

In my Insight Object Schema, I have a location object type, a server rack type, and different types of assets. As defined, Components can be "installed in" a Server Rack, and a Server Rack can be "located in" a Room. 

I am trying to use Insight Automation rules to automatically assign the same Room object to the lower-level component objects as the Server Rack object (i.e., if Server1 is located in Server Rack1, and Server Rack1 is located in Room1, I want to auto populate Room1 as the Location field of Server1). 

Using placeholders, I don't seem to be able to assign the object to the attribute field value. I have tried many different syntax options for the placeholder. Here are a few that I have tried:
Location IN ${Rack}
"Location" IN ${Rack}
objects having inR(Name in ${Rack})
${Rack.Location}
${Rack}.Location

Automation rule is as follows:
WHEN object is created/updated THEN Attribute Name: "Location" Value: [above syntax attempts] 

I am using placeholders throughout the schema in object filtering for attribute values, so I feel like I have a good handle on using placeholders. Do the automation rules not support the use of dynamically setting values based off IQL queries? Or is there a syntax format that I am missing? 

Any ... insight ... would be appreciated. 

1 answer

0 votes
Gideon Nolte _Eficode_
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
January 16, 2023

Hi @Taylen Wanner

for a start, I would suggest you to not duplicate that information down to the components, since you would need to update the values every time there is a change in reference, which might lead to inconsistent data. If you would like to get all components installed in racks inside a give Room later on, you could go with something like:

objectType = Component AND "Rack"."Location".Name = "Room Name"

Given that your structure looks like this:

  • Component
    • "Rack" -> Server Rack
    • "Location" -> Room
  • Server Rack
    • "Location" -> Room

You should be able to solved with this with automation, by using the "Object created" and "Object updated" trigger, to then edit the Object attribute "located in" on the Component to

 {{object.Rack.Location.Key}}

For more info on that syntax, see: Jira smart values - Assets | Cloud automation Cloud | Atlassian Support


Hope this helps. Feel free to ask more questions or point me to potential misunderstandings. 

Greetings 
Gideon

Taylen Wanner January 16, 2023

@Gideon Nolte _Eficode_ , 

Thank you for the reply! 

I agree with the inconsistent data, however the intent with the automation is to help resolve some of that inconsistent data. The query to get all components installed in a rack in a given room is helpful. I may decide to change the schema to better utilize that query. 

Yes, that is the correct definition of my structure. But to be more clear:

  • Server Racks
    • "Location" -> Room
  • Components
    • "Rack" -> Server Rack
    • "Rack Location" -> Room (which should be Server Rack.Location)
    • "Object Location" -> Room (used for when the component is in storage rather than installed in a rack)

The smart value does not resolve to the Server Rack object's location. Here is a screenshot of my automation rule:

image.png

 

And here is a screenshot of my object after updating one of the fields. The "Test" attribute is a text field to help me debug and keep track of which syntax updates I was attempting. "Rack Location" and "Object Location" did not receive a value after the automation rule ran. 

image.png

 

I appreciate all the help you have given thus far. 

Thanks,
Taylen

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events