Monday, 8 January 2018

Tips for installing Rhapsody's RTCIntegration

Rhapsody 8.2 heralded the release of a new direct integration with IBM's premium wide-area network supporting SCM solution, Rational Team Concert (RTC). There have been two releases since:

Configuration management in 8.2: direct integration with RTC (Rational Team Concert)
The pop-up menu for units in the project browser now includes menu items for performing basic RTC actions from within Rhapsody, for example, show history, lock, and unlock. This feature includes the display of RTC status in the project browser. When using the RTC integration, modifications made to units in Rhapsody are automatically checked-in to RTC (controlled by the property UnitAutomaticCheckInOnSave).

Configuration management in 8.2.1: automatic delivery of changes in RTC (Rational Team Concert)
In addition to the option of having modifications made to units in Rhapsody automatically checked-in to RTC (introduced in release 8.2), you can now have modifications to units automatically checked-in and delivered.

Configuration Management integration in 8.3: renaming/deletion of Rhapsody units
Prior to release 8.3, if you renamed a Rhapsody element that was saved as a separate unit, the name of the file representing the unit would always keep its original name. Beginning in this release, if you configured Rhapsody to use the integration with Rational Team Concert (using the CMTool property), then when you rename a model element that is a unit, you will be asked whether you want to also change the name of the underlying file. This behavior can be controlled by the property RenameActivation. Similarly, if you delete a unit, you will be asked whether you want to also delete the underlying file. The deletion behavior is controlled by the property DeleteActivation.

Here is check list of 12 commandments (12 days of Christmas if you're me) for installing Rhapsody with RTC client:
  1. Install IBM Rational Rhapsody. Rhapsody is released to coincide with Jazz releases on a 6 month basis so Consider aligning to the version of Jazz that aligns (e.g. 8.2 = 6.0.3, 8.2.1 = 6.0.4, 8.3 = 6.0.5). Note: Installing per-user (i.e. the default will generally cause less issues as ProgramData is not always writable and for various reasons it needs to be, i.e. if you install for all users IT may need to do something extra to make folders writable, esp. if you want to use or trial RDM integration at same time).
  2. Install iFixes* for Rhapsody. *=This is the IBM term for a patch. iFixes are downloadable from IBM Fix Central website. This link may help. You don't need to have a customer login to download but would need to create a user id. Note: Read the readme for the iFix installer very carefully. You may need to unzip and copy files into Program Files and the OMROOT folder, after running the installer. This is critical to do if the iFix contains fixes to the RTCIntegration folder.
  3. Install the RTC Client that aligns to the Jazz /ccm server. I suggest to stick to 32 bit RTC Client with 32 bit Rhapsody, and 64 bit RTC client with 64 bit Rhapsody. Use a plain zip download for the RTC client rather than the IBM Installation Manager (I've had issues getting RTC client to connect with the latter that have not repeated with the former). You can get this from the https://jazz.net/downloads/rational-team-concert/. Go to the All Downloads tab for the release and look for the Plain .zip Files section. Unzip the client will yield the eclipse.exe.
  4. Install iFixes for the RTC Client. Have a look at your Jazz server iFix level (in the About) and decide whether it is prudent to add an iFix to the RTC client. Just like Rhapsody, iFixes can be obtained from Fix Central. They're installed in a similar way to plugins, e.g. unzip the file and use Help > Install new software to get to the folder (uncheck Group items by category). 
  5. Open RTC Client and install Rhapsody's RTCIntegration plugin (this is in the Program Files part of the Rhapsody installation and, if an iFix applies, it should've been updated). Install the folder that corresponds to the 32/64 bit choice you made earlier.
  6. Connect the RTC Client to the Jazz server (if you have a web client open you can copy the URL up to and including the /ccm bit and paste that into the dialog). Log-in using your password and username (the assumption is that your username has necessary licenses and project area is set-up).
  7. Ensure that Automatic detect changes is checked in the Jazz Source Control > Local changes preferences.
  8. Create a repository workspace for the user (if they don't already have one). A repo-workspace is a (generally) private workspace stored on the server, where all the users changes are back-up but kept separate from the stream. In RTC a check-in is the transfer of changes from the local file system into a stream. A separate Deliver operation is the transfer of changes from a user's repository workspace into a shared stream.
  9. Create a component that you want to hold the Rhapsody project, if one doesn't exist, and load it into the local sandbox. Remember not to create an eclipse project when doing this. This will result in a sandbox folder on the local file system with the name of the component.
  10. Put the model you want to configure into the sandbox area, and set it's properties so that the new RTC integration is configured. The most critical one is to set ConfigurationManagement::General::CMTool to Rational Team Concert. Depending on the release there are additional preferences that can be set. This should result in a status icon appearing in the Rhapsody browser, and the configuration management menus should appear. Validate that the Rhapsody client is talking to the RTC client. You can do this in Eclipse by adding the Error Log view. You should see a Connecting Rhapsody.xxx line if it's successful.
  11. Configure RTC Client to ignore temporary Rhapsody files, e.g., you don't want to deliver the autosave folder contents or temporary Gateway files, or log files. There are two ways of doing this. Either by configuring the project (using .jazzignore files) or by configuring every RTC client (using a preferences file).
  12. Configure RTC Client to use the Rhapsody DiffMerge.exe for Rhapsody file extensions. Very important this.
Test. Test. Test

No comments:

Post a Comment