Version Control System is essential for any form of distributed/collaborative development to enable software versioning and revision control. The Event Processes developed in Fiorano Environment can be shared with the Version Control System using eStudio application. Version Control System acts as a repository where every change made to the source can be tracked along with details such as the person who made the change, date when it was changed and why it was done.
Fiorano supports SVN, CVS and VSS Version Control Systems.
Below sections illustrate how to configure and use SVN version control in eStudio.
Downloading and Integrating SVN into eStudio
To download and integrate SVN, perform the following actions:
- In eStudio application, go to Help menu and click Install New Software.
Figure 1: Navigating to Install SVN
- In the Available Software dialog box, paste the URL: http://subclipse.tigris.org/update_1.6.x in the Work With text field, and click the Add button.
Figure 2: Adding URL to update the software
- In the Add Repository dialog box, provide a name in the Name text box and click OK. The URL provided in the previous step will be pre-populated in the Location text box.
Figure 3: Providing a name for the Repository
- Select all the subclipse-related libraries listed, except the Subclipse Integration for Mylyn 3.x option (expand Subclipse option to do this). Clear the option 'Contact all update sites during install to find required software' (this speeds up the installation process) and click Next.
Figure 4: Choosing the required options from the library
- In the Install Details page where the items selected in the previous step are displayed, click Next.
Figure 5: List of items chosen from the library
- In the Review Licenses screen, accept the terms and click Finish.
Figure 6: Accepting the terms of License Agreements to complete the installation
- Subclipse libraries will be installed subsequently (this may take a while). During installation, a Security Warning dialog box appears asking for a confirmation to proceed. Click OK to continue with the installation.
Figure 7: Security Warning asking for a confirmation to proceed
- As the installation approaches completion, Software Updates dialog box appears prompting to restart. Click Restart Now to restart eStudio; the version control plugins get integrated and will be ready to use.
Figure 8: Software Updates dialog box prompting to restart eStudio
Sharing Event Process to SVN Repository
An Event Process (EP) can be committed (share with the repository) to the SVN Version Control System from the Server Explorer view (the Event Process Repository). To open Server Explorer panel, navigate to the location Window > Show View > Fiorano > Server Explorer and click OK in the Show View dialog box.
To share an Event Process (File_Transfer EP present in Online Event Process Development is chosen as example. Attributes are similar in Offline Event Process Projects as well) to SVN repository, perform the following actions:
- In Server Explorer view, open the Event Process which is desired to be shared in the SVN repository.
Right-click the opened event process from the Server Explorer panel; point to Team option and select Share Project option.
Figure 9: Navigating to open Share Project dialog box- Specify the SVN URL location where the project needs to be stored/shared and click Next.
Figure 10: Providing the SVN URL information
- If this is not the first time that you are sharing a project, Share Repository dialog box provides a choice to choose existing location or change the location.
- The Create a new repository location option navigates to the previous step to provide URL and Use existing repository location option navigates to the next step to choose folder name on clicking Next.
Figure 11: Option to choose a new repository or an existing one
To go ahead with the default Folder Name and default Location, select Use project name as folder name option in the Enter Folder Name panel.
Figure 12: Choosing default name
- To save it in the default location with a different folder name, select Use specified folder name option and type a different name.
Figure 13: Option to provide a different folder name - Whereas, to choose a different location in the SVN repository,
- click the Select button and choose a different folder in the Repository Browser dialog box.
- Right-click inside the Repository Browser, select New remote folder, choose a location (SVN_IntegrationTesting) and provide a folder name. Click Finish to close the dialog box and go back to Enter Folder Name panel.
After selecting the desired folder ('SVNIntegrationTesting' in this example), the path of the Event process appears in Enter Folder Name screen. Click Next to proceed. In the Ready to Share Project screen, provide appropriate comments which help future reference, and click Finish.
Figure 14: Option to choose a remote folder to share the project
- In the Ready to Share Project screen, provide appropriate comments which help in future reference, and click Finish.
Figure 16: Option to provide comments regarding the project being imported
- If the specified folder already exists, a warning appears as shown below. Click Yes to overwrite the existing project or click No to edit details by going back in the wizard and add a separate folder.
Figure 17: Alert that appears when the specified folder already exists
- After sharing the project, Confirm Open Perspective dialog box appears to open the Team synchronizing perspective.
Figure 18: Option to choose the perspective for the project to commit
Click No for opening the Synchronize View in the same perspective. Right-click the Event Process in the Server Explorer panel, go to Team and click Commit.
Figure 19: Choosing Commit from Server Explorer
- Alternatively, to commit from Team Synchronizing perspective, , click Yes option in the Confirm Open Perspective dialog box. Similar to the action in Service Explorer panel, right-click the Event Process from Synchronize panel, go to Team and click Commit.
Figure 20: Choosing Commit from Team Synchronizing view
- In Commit dialog box, provide some comments that signifies the action and click OK to save the Event process in the SVN repository.
Figure 21: Option to provide comments regarding the commit - The Commit logs are available in the SVN Console. Go to Console panel and select the SVN Console from the Open Console drop-down.
Figure 22: Commit logs in Console view
Right-click the shared Event Process in the Server Explorer and click Refresh to notice the change in the file name and the icon with the dirty flag.
Figure 23: EP shared with SVN appearing with changes in name
Checking Out the Project from SVN Repository
The Event Process that is shared with the SVN can be Checked Out to eStudio and used in the same server or even a different server.
To checkout Event Processes from the SVN repository, perform the following actions:
Go to SVN Repository Exploring perspective by selecting the Open Perspective icon present in the upper-left part of the screen and select the Other option. In the Open Perspective pop-up, select SVN Repository Exploring from the list of perspectives and click Ok.
Figure 24: Navigating to SVN RepositoriesExploring perspective
In the SVN Repositories panel under SVN Repositories Exploring perspective, right-click the Event Process to be checked out (file_transfer-1.0@EnterpriseServer in this example) and select Checkout option.
Figure 25: Checking out from SVN Repositories panelThe Server under which the event process gets saved can be saved by changing the server name present in the Project Name text field. Change suffix "EnterpriseServer" to "EnterpriseServer1" to extract the EP to this particular server. Click Next if the latest version of the project needs to be checked out.
- The first option gets highlighted in case a project file is not present but only a folder is being checked out.
Figure 26: Changing server name to extract the project to that server
- In case the EP had been created previously and this is an amended version, to choose from different versions, click Select button present next to Revision text field which is disabled. Select the required version, click OK.
Figure 27: Choosing the version to check out
- In the Check Out As dialog box, Check out HEAD revision check box gets unchecked automatically. Click Next.
Figure 28: Check out Head revision checkbox cleared after selecting a version
- Selecting Next in the above Wizard provides the option to change the location to which the project has to be checked out. If the Event Process has to be seen in eStudio, use default workspace Location. Otherwise, clear the option and browse required location. Click Finish to Check Out the project.
Figure 29: Option to change the Workspace location
- Go to Online Event Process Development perspective. In Server Explorer view, refresh the Event Process Repository node under the Server in to which the Event Process has been checked out, that is, EnterpriseServer_1, by clicking Refresh from right-click menu.
Figure 30: Refreshing EnterpriseServer_1 repository
- The Event Process that is checked out gets populated in the tree under Event Process Repository node under its category as shown below.
Figure 31: Project checked out displayed under EnterpriseServer_1 repository
Some Useful Features
Below-mentioned are a few useful options to work with the shared Event Process, which are available in its context menu (Team option in the right-click menu of the Event Process):
- Synchronize with Repository: When Event process has changes to be committed or checked out, use this Option to open Synchronize View either in the same perspective or in Team Synchronizing Perspective. The Synchronize view shows the changes to be committed or Checked Out.
- Update to HEAD: Used to update the event process to its current revision in the SVN repository. The changes that are made can be identified by a Dirty Flag that can be set using Label Decorations in Preferences refer section below.
- Update to Version: Used to update the event process to a particular revision from SVN repository.
- Show History: Shows the history of the Event Process commits.
- Revert: Used to Revert the changes made to Event Process. Note: The other options like Update to Revision, Revert and other options which change the contents of the Event process project will display 'out of sync' in the title of the EP. Just click on the Orchestration Editor of the Event process to sync.
Figure 32: Useful options for the project to integrate with SVN
Update to HEAD
As briefed earlier, this Option is used to update the event process to its current revision in the SVN repository. As shown in the below figure the Event Process2 has some local changes, which can be identified by the Dirty Flag.
Figure 33: Dirty Flag indicating changes happened to the checked out project
After choosing the Update to HEAD option, the Event Process is shown as out of sync as shown in the below figure.
Figure 34: EP Title showing 'Out of sync' indicating after updating to Head
Click inside the Event process's Orchestration Editor so that the UI gets updated and the Event process gets in Sync with updated project; "Out of Sync" text disappears from the title.
Figure 35: 'Out of sync' removed by clicking in the Orchestrator
SVN Label Decorations
The Label of the Event Process Project Name which is shared in SVN Repository can be customized to include/exclude various attributes such as Dirty flag, Revision Info, author, date, URL.
For example, to show the revision number (which helps in identifying revision from the Server Explorer itself) of an Event Process project next to its name in the Server Explorer View, perform the following actions:
- Go to Window menu and click Preferences.
Figure 36: Navigating to Preferences
- In the Preferences window, navigate to Team > SVN > Label Decorations.Under Text tab in the Label Decorations section, change the value of Project Format to the following and click Apply:
{dirty_flag}{name} [revision {revision}]
Figure 37: Changing Project Format values in Label Decorations section
- The Event Process in the Server Explorer panel appears in the format as applied.
Figure 38: EP name with the label changed
- Some useful variables that can be used to display in Event Process name by amending Project Format values are:
- {author} for the author of the revision.
- {url_short} for the URL of the project in SVN repository (File_transfer-1.0@EnterpriseServer as it was appearing previously in the example).
- {date} for the modification date and time of the revision.