We've updated the ServiceNow Community Code of Conduct, adding guidelines around AI usage, professionalism, and content violations. Read more

Jon G Lind
ServiceNow Employee

A Playbook that is not in the ReleaseOps scope will not execute

There is currently a bug in the business rule that fires playbooks for ReleaseOps in which it does not properly account for scope.  

 

Here's how to fix it

  1. Select the scope ReleaseOps with the globe in the header.
  2. Go to System Definition > Business Rules
  3. Filter where Application = "ReleaseOps" AND Name Starts With "Run"
  4. Modify the two out-of-the-box business rules, setting Active = False (this way you are not modifying the existing business rule):
  5. Duplicate Each by opening and choosing Insert and Stay. 
    1. Playbooks: "Run Release Playbook on Preparing" and "Run Assessment Playbook when Ready"
    2. Set Active = True
    3. Script: Find the "triggerPlaybook" line near the end and replace it: 
      // Find the following line near the end:
      // Run Assessment Playbook when Ready (approximately line 46)
      // Run Release Playbook on Preparing (approximately line 20)
      /* sn_playbook.PlaybookExperience.triggerPlaybook(grPlaybook.name, current); */
      // And REPLACE it with:
      
      const scopeName = grPlaybook.sys_scope.scope;
      // Don't include scope name if calling to another ReleaseOps playbook
      const playbookName = (scopeName == 'sn_releaseops' ? '' : scopeName + '.') + grPlaybook.name;
      sn_playbook.PlaybookExperience.triggerPlaybook(playbookName, current);