Cross Project Shared Assets

Modified on Fri, 28 Oct 2022 at 11:15 AM

Cross-Project Shared Assets allows a Project to share its assets e.g. list of Users between multiple other projects without incurring additional license costs. These shared assets can be tracked using per-project workflows and Deployment Units. 


TABLE OF CONTENTS



What is / is-not shared


The base asset and its core properties are shared between projects. For example, if sharing Applications the AppId , Vendor , Name , Version will be common to both projects, and any changes in one project will be changed in the other project. 


Process / Sub Process are not shared, an asset gets added to the Project Workflow it's been shared too.


Dropdowns are not shared, in the project the assets have been shared to dropdowns become read-only text boxes. 


Detail tabs such as Discovery, Links, Contacts, Tests, Tasks, Defects, Depenacecies, and Attachments are not shared. 


History is shared and the project that changed a value can be seen by turning on the 'Project' column on the History toolbar


Deployment Units are not shared but sharing an asset allows it to exist in more than one DU as it can now have a DU per project.  



Cross Project Settings


Nav To: Administration\Cross Project Settings

To see the 'Cross Project Settings' button you must be in the 'Cross Project Configuration' role.



Adding a row to the shared assets rules using the 'Add Shared Asset'


  • Share From
    • The Project that holds the primary assets, e.g. a list of Users

  • Share To
    • The Project to share the assets too

  • Module to Share
    • The type of asset to share, e.g. Apps, Users, Devices, etc
    • Note multiple asset types can be shared from a Project

  • What to Share
    • All To
      • Will share all assets from Proj-A to Proj-B
      • Will not share new assets created in Proj-B back to Proj-A
    • All To & Back
      • Will share all assets from Proj-A to Proj-B
      • Will share new assets created in Proj-B back to Proj-A
    • Specific To
      • Allows assets to be shared (UI/API) from Proj-A to Proj-B
      • Prevents assets to be shared (UI/API) from Proj-A to Proj-B
    • Specific To & Back
      • Allows assets to be shared (UI/API) from Proj-A to Proj-B
      • Allows assets to be shared (UI/API) from Proj-A to Proj-B
    • Ignore
      • Disable this sharing rule without deleting it

  • Remove
    • Delete this sharing rule
    • Note on Undoing Sharing
      • Deleting a rule does not undo the sharing actions before this point.
      • Set the rule to 'Specific To' then using the UI remove any/all shared assets
      • Finally, delete the rule. 



Supported Modules

The below modules can have their assets shared between Projects. A common example of when this is useful is when a large number of Users are shared to many different projects without duplicating those users and licenses in each Project


Supported

  • Applications
  • User Migrations
  • Devices
  • Mailboxes
  • Bespoke


Not Supported

  • Deployment Units
  • Defects
  • Tasks



Permissions


Setup

Two setup sharing assets across two or more Projects the User must be in the Cross Project Configuration Role of each Project


Share To

To access the Share option of the grid context menu the User must be in the "Cross Project Share Asset" role of both Projects.


Remove From

To access the Remove Shared Asset option of the grid context menu the User must be in the "Cross Project Remove Asset" role of both Projects




Notes and Recommendations


Applications

When sharing Applications it is possible to get into complicated situations with rationalisation whereby an App is rationalised to another App that is not in the current Project. To avoid this It is best to share all applications from both the parent-to-child project and the child-to-parent project. 


Sharing All Assets

When sharing 'All' assets the share happens when an Asset is created. A housekeeping task that runs evening resyncs any shared assets that were missed. The configuration panel in the Admin section includes a button to sync shared assets immediately and should be used when new configuration options are added. 


History

The history of a shared asset can by nature be updated by multiple Projects, the History tab shows the collective history of an asset across call Projects. A hidden Project column can be added to the History grid using the Column Chooser in the toolbar to see which change came from which Project. 


License

Shared assets do not consume additional licenses in the Projects they are shared between.


Delete vs Remove

If an asset is deleted from a Project it is deleted from ManagementStudio and ALL shared Projects.  A shared asset can be removed from a Project using the grid context menu (see permissions section) safely without affecting other shared Projects. An asset must always exist in at least one Project and the system will not allow an asset to be removed from a Project if this is the only Project it is in.