|
The TIM Update CenterIntroductionThe Terracotta integration module (TIM) Update Center provides a simple way to manage the catalog of integration modules available for Terracotta DSO. Utilizing a speedy command-line tool, the TIM Update Center offers control over a number of complex tasks, including sorting out dependencies, matching release versions, and setting correct configuration and installation options. Using the TIM Update Center, you can quickly and easily do the following:
By using the TIM Update Center, you can ensure that the TIMs you install are the ones most suitable for your version of Terracotta.
Accessing the TIM Update CenterTo access the TIM Update Center, execute the tim-get script. tim-get is a Terracotta tool located in the <Terracotta_Home>/bin directory. On UNIX/Linux, execute the following: tim-get.sh [command] [argument] --option On Windows, execute the following: tim-get.bat [command] [argument] --option While the examples in this document use tim-get.sh, they are also valid for tim-get.bat. The Terracotta Configuration FileCommand SummaryThe following table serves as a quick-reference to the commands available to the TIM Update Center tim-get script. For a fuller discussion of commands, arguments, and options, click a command name or see the following sections.
Displaying HelpYou can display usage help for the tim-get script as well for each command. To display help on using the tim-get script, run the script without any commands. To display help on a specific command, run the script with the command and the --help option: tim-get.sh [command] --help Getting Information on TIMsThe list and info commands display information on the TIMs available for, or installed with, your version of Terracotta DSO. The list command can also be used to search for specific TIMs. The list CommandThe list command displays a table of installed and available TIMs. For example: [PROMPT] tim-get.sh list
Terracotta Enterprise Edition 2.7.0-nightly-rev9528, as of 20080729-160751 (Revision 2319-9528 by cruise@rh4mo0 from 2.7)
*** Terracotta Integration Modules for TC 2.7.0-SNAPSHOT ***
- tim-jetty-6.1 (1.2.0-SNAPSHOT) [org.mortbay.jetty]
- tim-jetty-6.1.4 (1.2.0-SNAPSHOT) [org.mortbay.jetty]
+ clustered-apache-struts-1.1 (2.7.0-SNAPSHOT)
+ clustered-commons-collections-3.1 (2.7.0-SNAPSHOT)
+ clustered-glassfish-2.0 (2.7.0-SNAPSHOT)
+ clustered-surefire-2.3 (2.7.0-SNAPSHOT)
+ clustered-websphere-6.1.0.7 (2.7.0-SNAPSHOT)
! tim-ehcache-commons (1.4.0-SNAPSHOT)
- tim-hashtable (2.3.0-SNAPSHOT)
- tim-hibernate-3.1.2 (1.2.0-SNAPSHOT)
- tim-hibernate-3.2.5 (1.2.0-SNAPSHOT)
- tim-ibatis-2.2.0 (1.1.0-SNAPSHOT)
- tim-lucene-2.0.0 (1.1.0-SNAPSHOT)
- tim-rife-1.6.0 (1.1.0-SNAPSHOT)
legend: [+] already installed [!] installed but newer version exists [-] not installed
[PROMPT]
Each entry in the table has the following components:
For example, the entry -tim-jetty-6.1 (1.2.0-SNAPSHOT) [org.mortbay.jetty] means that a TIM for Jetty 6.1 is available for the local Terracotta installation, but is not installed. The TIM version is 1.2.0-SNAPSHOT, and the group-ID is org.mortbay.jetty. If the group-ID value is not displayed, then it equals the default value org.terracotta.modules. The Jetty TIM is installed in <terracotta_installation_directory>/modules/org/mortbay/jetty while a TIM with the default group-ID is installed in <terracotta_installation_directory>/modules/org/terracotta/modules The data used to build the TIM table is periodically refreshed. However, if a connection to the Terracotta Forge is unavailable, the table is created using data from the last refresh.
To return a more focused TIM table, specify keywords with the list command. For example, to find TIMs with the word "synchronized" in their names: [PROMPT] tim-get.sh list synchro
Terracotta Enterprise Edition 2.7.0-nightly-rev9528, as of 20080729-160751 (Revision 2319-9528 by cruise@rh4mo0 from 2.7)
*** Terracotta Integration Modules for TC 2.7.0-SNAPSHOT ***
- tim-synchronizedcollection (2.3.0-SNAPSHOT)
- tim-synchronizedmap (2.3.0-SNAPSHOT)
- tim-synchronizedset (2.3.0-SNAPSHOT)
- tim-synchronizedsortedmap (2.3.0-SNAPSHOT)
- tim-synchronizedsortedset (2.3.0-SNAPSHOT)
legend: [+] already installed [!] installed but newer version exists [-] not installed
[PROMPT]
When using keywords with the list command:
The info CommandThe info command displays a detailed report about a specified TIM. For example, to generate a detailed report about the TIM for Hibernate 3.1.2: [PROMPT] tim-get.sh info tim-hibernate-3.1.2 Terracotta Enterprise Edition 2.7.0-nightly-rev9528, as of 20080729-160751 (Revision 2319-9528 by cruise@rh4mo0 from 2.7) tim-hibernate-3.1.2 (1.2.0-SNAPSHOT) Installed: NO Author : Terracotta, Inc. Copyright: Copyright (c) 2007 Terracotta, Inc. Homepage : http://forge.terracotta.org/releases/projects/tim-hibernate/ Download : http://download.terracotta.org/maven2/org/terracotta/modules/tim-hibernate-3.1.2/1.2.0-SNAPSHOT/tim-hibernate-3.1.2-1.2.0-SNAPSHOT.jar Status : Terracotta Integration Module for clustering Hibernate. This project comes with modules for Hibernate 3.1.2 and Hibernate 3.2.5 Compatible with TC 2.7.0-SNAPSHOT Dependencies: + clustered-commons-collections-3.1 (2.7.0-SNAPSHOT) + modules-common (2.7.0-SNAPSHOT) - tim-cglib-2.1.3 (1.2.0-SNAPSHOT) - tim-ehcache-1.2.4 (1.2.0-SNAPSHOT) - tim-ehcache-commons (1.2.0-SNAPSHOT) Maven Coordinates: groupId : org.terracotta.modules artifactId: tim-hibernate-3.1.2 version : 1.2.0-SNAPSHOT Configuration: <modules> <module name="tim-hibernate-3.1.2" version="1.2.0-SNAPSHOT" /> </modules> There are no other versions of this TIM that are compatible with TC 2.7.0-SNAPSHOT legend: [+] already installed [!] installed but newer version exists [-] not installed [PROMPT] The report is organized into a number of sections, including the following:
The detailed information in the report also includes version compatibility data on:
In the example above, the report gave the following information about the TIM for Hibernate 3.1.2:
Installing TIMsThe two ways of installing TIMs are:
The install CommandUse the install command to install TIMs to the Terracotta modules directory. To install a specific TIM, pass the TIM name as an argument to the install command. For example, to install the tim-hibernate-3.2.5 TIM, enter: [PROMPT] tim-get.sh install tim-hibernate-3.2.5 If the TIM already exists in the default installation location (see TIM Installation Path), tim-get skips the installation. Use the --overwrite option to overwrite the existing TIM with the version you are downloading: [PROMPT] tim-get.sh install tim-hibernate-3.2.5 --overwrite To download all of the TIMs available for your version of Terracotta, use the --all option: [PROMPT] tim-get.sh install --all Downloaded files are verified using a checksum algorithm. To avoid the checksum verification, use the --no-verify option: [PROMPT] tim-get.sh install --all --no-verify Installing Configured TIMsThe install-for command installs the TIMs configured in the specified Terracotta configuration file, based on the latest index of TIMs cached in your installation of Terracotta.
For example, if you are clustering an application using Spring Security, you must add the following TIM to your Terracotta configuration file: <module name="tim-spring-security-2.0" /> To install the Spring Security TIM, simply enter the following command: [PROMPT] tim-get.sh install-for <path/to/Terracotta/configuration/file> Note that install-for does not require the TIM version number to be specified in the Terracotta configuration file. TIM Installation PathA TIM is installed following the path matching its Maven coordinates (groupID, artifactID, and version values). For example, the tim-ehcache-1.2.4 TIM has the following Maven coordinates: groupId : org.terracotta.modules artifactId: tim-ehcache-1.2.4 version : 1.4.0-SNAPSHOT If you install the tim-ehcache-1.2.4 TIM with tim-get, it is installed in: <terracotta_installation_directory>/modules/org/terracotta/modules/tim-ehcache-1.2.4/1.4.0-SNAPSHOT Testing with --pretendCertain TIMs are installed with a number of dependencies. You can run a test install using the --pretend option to see how the installation would proceed: [PROMPT] tim-get.sh install tim-hibernate-3.2.5 --pretend Using install with --pretend generates the same messages to standard output as a real installation, but with no affect on installed files. Updating TIMsYou can update existing TIMs with the latest versions for your Terracotta installation without having to learn the version numbers. You can update in the following ways:
Update Specific TIMsUse the update command to install updates to specific previously installed TIMs. This command saves you the step of having to manually discover outdated TIMs using the info or list commands. update has the same options as install, and the additional option --force. Use --force to overwrite TIMs even if tim-get reports that no updates were found. For example, if you're updating tim-lucene-2.0.0, and the latest version is already installed, tim-get will reply with No updates found. To override this, enter: [PROMPT] tim-get.sh update tim-lucene-2.0.0 --force --force also updates dependencies even if the latest versions are already installed. Upgrade Configured TIMsUse the upgrade command to update the TIMs configured in the Terracotta configuration file (tc-config.xml by default). upgrade also automatically updates the version numbers in the Terracotta configuration file. This command allows you to keep your TIMs and configuration file current in one step. upgrade has the same options as update except for --all. To update a the configrured TIMs in a Terracotta installation, enter: [PROMPT] tim-get.sh upgrade <path/to/tc-config.xml> Before being edited, the existing Terracotta configuration file is saved with the extension .original. Troubleshooting Connection ProblemsOften connection problems are caused by local firewalls and typically appear as "connection timed out" errors when you attempt tim-get operations. For connection problems resulting from a local firewall, configure tim-get to always use a specified proxy by adding the following property to the file <Terracotta_Home>/lib/resources/tim-get.properties: org.terracotta.modules.tool.proxyUrl = http://HOST:PORT For example, if your company's proxy server is myCompany.com:6666, add the following to tim-get.properties: org.terracotta.modules.tool.proxyUrl = http://myCompany.com:6666 More Information on TIMs and Configuration Files |
tim-get
(None)