Keeping your Service GUIDs in sync
As some of you may know, when moving SmartObjects that are based on custom Services Instances between environments, you will hit an issue where the SmartObject won't deploy due to the Service Instance GUID on the environment you're deploying to matching the Service Instance GUID that your SmartObject definition is looking for.
There are a few ways to overcome this problem.
1.Use the Blackmarket tool to update your SmartObject definitions. This method works well but you will have to repeat the update each time you want to deploy to a different environment.
2. Update the Service Instance GUIDs to match across all environments. This can be done in one of two ways. The latter option being the preferred method.
a. Update the database directly.
b. Use the Broker management tool to update the GUIDs
My preferred option is to use the Broker management tool when the Service Instances are first regisitered in each environment to ensure they are registered with a GUID that matches the other environments. If this is the first environment then make a note of the GUID for later use.
The Broker managment tool can be found in the default path of: C:\Program Files\K2 blackpearl\ServiceBroker\BrokerManagement.exe
After registering a new Service Type, right-click the type and select Register New Service Instance. The second screen of this wizard allows you to chose the GUID for the instance. It's this GUID that you need to keep sync'd between environments. The GUID of the Service Type does not matter.