Side By Side Review

Coordinator
Dec 19, 2008 at 8:30 PM
Edited Dec 19, 2008 at 8:37 PM

I'm beginning to think more about how to do the side by side versioning.  The main goals of side by side deployment are:

  1. Generate some sort of unique Prefix or Suffix to elements when deploying to notate Dev/Test (or remove for Production).
  2. Enable someone to publish to Dev, and then go from Dev to Test, and from Test to Prod (or Dev to Prod)
  3. Allow the option to regenerate IDs for all of the PPS Elemenets.
    This is especially helpful if some other person publishes an item and you do not have access to overwrite it.  With this, you can ignore theirs (if time is tight), publish with a different ID and have them fix the initial element when they get back (or delete it).
  4. If regenerating IDs for target elements, then only regenerate the ID if the target object for the specified env correlation (Dev/test) is not created. If it already exists, reuse that ID (so if you deploy the dashboard for dev/test, you will not need to redeploy when updating elements).
    1. Regenerating all of the IDs can be done by just deleting the elements which match the correlation for Dev/Test, and then republish again.  Since they will not be found, new IDs will be generated.
  5. Allow the ability to delete target elements.  If you have a dev, test or other - you may want to clean up or remove things. Deleting items through PPS Editor can be a bit arduous, so having an easier way to do so would be helpful.

Proposal is below, hopefully it is self-explanatory, If you have any questions, comments, or suggestions, feel free to add them.  The one thing that will make the next release break current scripts is that I will require the deployment have a correlationName.  That will be used to group all of the matching elements together.  

If you want to deploy the elements to a Test correlation (as a side-by-side, you can tell it to regenerate the IDs.  Then the Dev correlation would remain, and new elements with the TEst correlation would appear. Otherwise, the Test correlated elements will overwrite the dev ones when you deploy.

<deployment type="testSharePointDeploySideBySide">
    <
performancePointUpdates>
        <
performancePoint sourceWorkspace="C:\test.bswx"
                targetMonitoringWebservice=http://...:40000/Webservice/pmservice.asmx
                correlationName="DEV"
                
matchOnProperty="Reporting"
                
matchOnValue="1.0.0.0"
                
action="Publish">

 <!-- Creates a property: _PUBLISH_ORIG_NAME (string) which will have either the name of the source element, or the source element's _PUBLISH_ORIG_NAME value (if one exists). 

The actual orig name derived will have suffix and prefix added
A property _PUBLISH_CORRELATION_NAME (string) will contain this correlation's name as well
-->     

 

                 <publishControl sideBySide="true" newSuffix="-Test" newPrefix="BIRAP SideBySide-" />
            </
performancePoint>
        </
performancePointUpdates>
</
deployment>