Child pages
  • tim-get

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

pagetitle
Reference Documentation
Section
Column
width260px
{div:style=} {include:
Wiki Markup
Div
stylemargin-top:20px
Include Page
documentation-index
documentation-index
} {div}
Column
{div9:id=documentationcolumn} {include:HeaderBasic} h1. tim-get {toc:minLevel=2|maxLevel=2} h2. Introduction tim-get is a Terracotta integration module (TIM) management tool that simplifies interaction with the catalog of integration modules available for Terracotta DSO. Utilizing a speedy command-line tool, tim-get offers control over a number of complex tasks, including sorting out dependencies, matching release versions, and setting correct configuration and installation options. Using tim-get, you can quickly and easily do the following: * See the most current TIMs available for your version of Terracotta DSO. * Get in-depth information on a specific TIM. * Install new TIMs directly from the the Terracotta Forge. * Update your installed TIMs to the latest version. * Print a current inventory of available TIMs. * View the status of each TIM. * Review potential conflicts using a "dry-run" install. By using tim-get, you can ensure that the TIMs you install are the ones most suitable for your version of Terracotta. {note} TIMs are installed on Terracotta clients, which run on your application servers. TIMs should not be installed on Terracotta server instances. Applications and application containers are never integrated with Terracotta server instances, only with Terracotta clients. {note} h2. Accessing tim-get To access tim-get, execute the tim-get script. tim-get is a Terracotta tool located in the <Terracotta_Home>/bin directory. On UNIX/Linux, execute the following: {noformat}
Wiki Markup
Div
iddocumentationcolumn
Include Page
HeaderBasic
HeaderBasic

tim-get

Table of Contents
minLevel2
maxLevel2

Introduction

tim-get is a Terracotta integration module (TIM) management tool that simplifies interaction with the catalog of integration modules available for Terracotta DSO. Utilizing a speedy command-line tool, tim-get offers control over a number of complex tasks, including sorting out dependencies, matching release versions, and setting correct configuration and installation options.

Using tim-get, you can quickly and easily do the following:

  • See the most current TIMs available for your version of Terracotta DSO.
  • Get in-depth information on a specific TIM.
  • Install new TIMs directly from the the Terracotta Forge.
  • Update your installed TIMs to the latest version.
  • Print a current inventory of available TIMs.
  • View the status of each TIM.
  • Review potential conflicts using a "dry-run" install.

By using tim-get, you can ensure that the TIMs you install are the ones most suitable for your version of Terracotta.

Note

TIMs are installed on Terracotta clients, which run on your application servers. TIMs should not be installed on Terracotta server instances. Applications and application containers are never integrated with Terracotta server instances, only with Terracotta clients.

Accessing tim-get

To access tim-get, execute the tim-get script. tim-get is a Terracotta tool located in the <Terracotta_Home>/bin directory.

On UNIX/Linux, execute the following:

No Format

  tim-get.sh [command] [argument] --option
{noformat}

On

Windows,

execute

the

following:

{noformat}

No Format

  tim-get.bat [command] [argument] --option
{noformat}

While

the

examples

in

this

document

use

{{

tim-get.sh

}}

,

they

are

also

valid

for

{{

tim-get.

bat}}. h3. The Terracotta Configuration File h5. Command Summary The following table serves as a quick-reference to the commands available to tim-get tim-get script. For a fuller discussion of commands, arguments, and options, click a command name or see the following sections. ||Command||Action||Arguments||Options|| |[help|#help] | Display general help or command-specific help| Command names| -h, --help |[list|#list]| Display a list of installed or available TIMs| Search terms| -h, --help -v --details -a, --all |[info|#info]| Display information about a specific TIM| TIM name (optional) TIM group ID (optional) version| -h, --help |[install|#install]| Install a TIM| TIM name (optional) TIM group ID (optional) version| -h, --help --dry-run --overwrite --all --no-verify |[install-for|#install-for]| Install the latest TIMs specified in the Terracotta configuration file| Path to Terracotta configuration file | -h, --help -u, --update-index --dry-run --overwrite --no-verify --force |[update|#update]| Update a TIM to the latest version| TIM name (optional) TIM group ID| -h, --help --dry-run --overwrite --all --no-verify --force |[upgrade|#upgrade]| Update and install the TIMs specified in a Terracotta configuration file to the latest versions | Path to the Terracotta configuration file | -h, --help --dry-run --overwrite --no-verify --force {anchor:help} h2. Displaying Help You 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: {noformat}

bat.

The Terracotta Configuration File

Command Summary

The following table serves as a quick-reference to the commands available to tim-get tim-get script. For a fuller discussion of commands, arguments, and options, click a command name or see the following sections.

Command

Action

Arguments

Options

help

Display general help or command-specific help

Command names

-h, --help

list

Display a list of installed or available TIMs

Search terms

-h, --help
-v
--details
-a, --all

info

Display information about a specific TIM

TIM name
(optional) TIM group ID (optional) version

-h, --help

install

Install a TIM

TIM name
(optional) TIM group ID (optional) version

-h, --help
--dry-run
--overwrite
--all
--no-verify

install-for

Install the latest TIMs specified in the Terracotta configuration file

Path to Terracotta configuration file

-h, --help
-u, --update-index
--dry-run
--overwrite
--no-verify
--force

update

Update a TIM to the latest version

TIM name
(optional) TIM group ID

-h, --help
--dry-run
--overwrite
--all
--no-verify
--force

upgrade

Update and install the TIMs specified in a Terracotta configuration file to the latest versions

Path to the Terracotta configuration file

-h, --help
--dry-run
--overwrite
--no-verify
--force

Anchor
help
help

Displaying Help

You 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:

No Format

  tim-get.sh [command] --help
{noformat} {anchor:information} h2. Getting Information on TIMs The {{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. {anchor:list} h3. The list Command The {{list}} command displays a table of installed and available TIMs. For example: {code}

Anchor
information
information

Getting Information on TIMs

The 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.

Anchor
list
list

The list Command

The list command displays a table of installed and available TIMs. For example:

Code Block

[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]
{code}

Each

entry

in

the

table

has

the

following

components:

*

  • TIM
  • installation
  • status:
** \+
    • + (plus)
--
    • an
    • up-to-date
    • version
    • is
    • installed
** \
    • !
    • (exclamation
    • mark)
--
    • an
    • out-of-date
    • version
    • is
    • installed
** \
    • -
    • (minus)
--
    • a
    • version
    • is
    • available
    • but
    • hasn't
    • been
    • installed
*
  • TIM
  • name,
  • which
  • can
  • include
  • a
  • product
  • name
  • and
  • version
*
  • TIM
  • version,
  • in
  • parentheses
*
  • group-ID
  • value,
  • in
  • square
  • brackets

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

{

No Format
}

  <terracotta_installation_directory>/modules/org/mortbay/jetty
{noformat}

while

a

TIM

with

the

default

group-ID

is

installed

in

{

No Format
}

  <terracotta_installation_directory>/modules/org/terracotta/modules
{noformat}

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.

{note} Only installed

Note

Only installed non-internal

TIMs

found

in

the

Terracotta

{{

modules

}}

directory

are

displayed

in

the

TIM

table.

The

following

types

of

installed

TIMs

do

_

not

_

appear

in

the

TIM

table:

*

  • "Internal"
  • TIMs
  • required
  • by
  • Terracotta.
  • To
  • see
  • these,
  • use
  • the
{{
  • list
}}
  • command
  • with
  • the
  • -a
  • or
  • --all
  • option.
*
  • TIMs
  • installed
  • in
  • repositories
  • outside
  • the
  • Terracotta
{{
  • modules
}}
  • directory.
{note} 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: {code}

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:

Code Block

[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]
{code}

When

using

keywords

with

the

{{

list

}}

command:

*

  • Matches
  • occur
  • only
  • on
  • continuous
  • strings
  • in
  • TIM
  • names.
*
  • Using
  • a
  • leading
  • hyphen
  • ("-")
  • in
  • a
  • keyword
  • returns
  • an
  • error
  • or
  • executes
  • an
  • option.
{anchor:info} h3. The info Command The {{info}} command displays a detailed report about a specified TIM. For example, to generate a detailed report about the TIM for Terracotta DSO annotations: {code}

Anchor
info
info

The info Command

The info command displays a detailed report about a specified TIM. For example, to generate a detailed report about the TIM for Terracotta DSO annotations:

Code Block

[PROMPT] tim-get.sh info tim-annotations

Terracotta 3.0.0, as of 20090318-110315 (Revision 12200 by cruise@su105 from 3.0)

(-) tim-annotations 1.5.0

   Installed: NO

   Author   : Terracotta, Inc.
   Copyright: Copyright (c) 2007 - 2008 Terracotta, Inc.
   Homepage : http://forge.terracotta.org/releases/projects/tim-annotations/
   Docs     : http://forge.terracotta.org/releases/projects/tim-annotations/
   Download : http://www.terracotta.org/download/reflector/maven2/org/terracot
/modules/tim-annotations/1.5.0/tim-annotations-1.5.0.jar
   Status   : Supported
   Internal : false

   Annotations package for Terracotta projects

   Compatible with any Terracotta version.

   Dependencies:

      None.

   Maven Coordinates:

      groupId   : org.terracotta.modules
      artifactId: tim-annotations
      version   : 1.5.0

   Configuration:

      <modules>
         <module name="tim-annotations" />
      </modules>

   The following versions are also available:

      (-) 1.4.2-SNAPSHOT
      (-) 1.4.1
      (-) 1.4.1-SNAPSHOT
      (-) 1.4.0

   Issue the following command to install the latest version:

      tim-get.bat install tim-annotations

(+) Installed  (-) Not installed  (!) Installed but newer version exists
[PROMPT]
{code}

The

report

is

organized

into

a

number

of

sections,

including

the

following:

*

  • Dependencies:
  • Shows
  • which
  • other
  • TIMs
  • are
  • required,
  • and
  • which
  • of
  • those
  • are
  • installed
  • or
  • out
  • of
  • date.
*
  • Maven
  • Coordinates:
  • Gives
  • values
  • for
  • attributes
  • needed
  • if
  • using
  • Apache
  • Maven
  • for
  • project
  • management.
*
  • Configuration:
  • Displays
  • the
  • configuration
  • snippet
  • that
  • must
  • be
  • added
  • to
  • the
  • Terracotta
  • configuration
  • file
  • for
  • the
  • TIM
  • to
  • be
  • loaded.
  • The
  • TIM
  • is
  • loaded
  • by
  • Terracotta
  • if
  • it
  • is
  • started
  • with
  • a
  • configuration
  • file
  • that
  • includes
  • this
  • snippet.
{tip} To display detailed information on all available TIMs with one command, enter: {noformat}
Tip

To display detailed information on all available TIMs with one command, enter:

No Format

[PROMPT] tim-get.sh list -v -a
{noformat} {tip} The detailed information in the report also includes version compatibility data on: * The technology being integrated * Terracotta DSO * The TIM being reported on In the example above, the report gave the following information about the TIM for Hibernate

The detailed information in the report also includes version compatibility data on:

  • The technology being integrated
  • Terracotta DSO
  • The TIM being reported on

In the example above, the report gave the following information about the TIM for Hibernate 3.1.2:

*

  • It
  • has
  • modules
  • to
  • integrate
  • Hibernate
  • 3.1.2
  • and
  • Hibernate
  • 3.2.5
*
  • It
  • is
  • compatible
  • with
  • Terracott
  • DSO
  • version
  • 2.7.0-SNAPSHOT
*
  • No
  • other
  • versions
  • of
  • the
  • TIM
  • for
  • Hibernate
  • 3.1.2
  • are
  • available
{anchor:install} h2. Installing TIMs The two ways of installing TIMs are: * Using the {{install}} command -- Installs specified individual TIMs, but can also install all available TIMs. * Using the [{{install-for}} command|#install-for] -- Installs all TIMs configured in a specified Terracotta configuration file. h3. The install Command Use 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

Anchor
install
install

Installing TIMs

The two ways of installing TIMs are:

  • Using the install command – Installs specified individual TIMs, but can also install all available TIMs.
  • Using the install-for command – Installs all TIMs configured in a specified Terracotta configuration file.

The install Command

Use 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:

{

No Format
}

[PROMPT] tim-get.sh install tim-hibernate-3.2.5
{noformat}

If

the

TIM

already

exists

in

the

default

installation

location

(see

[

TIM

Installation

Path

|#install_path]

),

tim-get

skips

the

installation.

Use

the

--overwrite

option

to

overwrite

the

existing

TIM

with

the

version

you

are

downloading:

{

No Format
}

[PROMPT] tim-get.sh install tim-hibernate-3.2.5 --overwrite
{noformat}

To

download

all

of

the

TIMs

available

for

your

version

of

Terracotta,

use

the

\

--all

option:

{

No Format
}

[PROMPT] tim-get.sh install --all
{noformat}

Downloaded

files

are

verified

using

a

checksum

algorithm.

To

avoid

the

checksum

verification,

use

the

{{\

--no-verify

}}

option:

{

No Format
}

[PROMPT] tim-get.sh install --all --no-verify
{noformat} {anchor:

Anchor
install-for
install-for

} h3.

Installing

Configured

TIMs

The

{{

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.

{tip} To download the latest index of TIMs before installing the configured TIMs, use the {{\-u}} option ({{\-\

Tip

To download the latest index of TIMs before installing the configured TIMs, use the -u option (--update-index

}}

)

with

{{

install-for

}}. {tip} For

.

For example,

if

you

are

clustering

an

application

using

Spring

Security,

you

must

add

the

following

TIM

to

your

Terracotta

configuration

file:

{

No Format
}

<module name="tim-spring-security-2.0" />
{noformat}

To

install

the

Spring

Security

TIM,

simply

enter

the

following

command:

{

No Format
}

[PROMPT] tim-get.sh install-for <path/to/Terracotta/configuration/file>
{noformat}

Note

that

{{

install-for

}}

does

not

require

the

TIM

version

number

to

be

specified

in

the

Terracotta

configuration

file.

{anchor:

Anchor
install_path
install_path

} h3.

TIM

Installation

Path

A

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:

{

Code Block
}

groupId   : org.terracotta.modules
artifactId: tim-ehcache-1.2.4
version   : 1.4.0-SNAPSHOT
{code}

If

you

install

the

tim-ehcache-1.2.4

TIM

with

tim-get,

it

is

installed

in:

{

No Format
}

<terracotta_installation_directory>/modules/org/terracotta/modules/tim-ehcache-1.2.4/1.4.0-SNAPSHOT
{noformat} h3. Testing with \

Testing with --dry-run

Certain

TIMs

are

installed

with

a

number

of

dependencies.

You

can

run

a

test

install

using

the

--dry-run

option

to

see

how

the

installation

would

proceed:

{

No Format
}

[PROMPT] tim-get.sh install tim-hibernate-3.2.5 --dry-run
{noformat}

Using

install

with

{{

--dry-run

}}

generates

the

same

messages

to

standard

output

as

a

real

installation,

but

with

no

affect

on

installed

files.

{anchor:update} h2. Updating TIMs You 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 TIMs * Update all configured TIMs h3. Update Specific TIMs Use 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

Anchor
update
update

Updating TIMs

You 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 TIMs
  • Update all configured TIMs

Update Specific TIMs

Use 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:

{

No Format
}

[PROMPT] tim-get.sh update tim-lucene-2.0.0
--force
 
{noformat} {{\
--force
}}

--force also

updates

dependencies

even

if

the

latest

versions

are

already

installed.

h3.

Upgrade

Configured

TIMs

Use

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: {noformat}

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:

No Format

[PROMPT] tim-get.sh upgrade <path/to/tc-config.xml>
{noformat}

Before

being

edited,

the

existing

Terracotta

configuration

file

is

saved

with

the

extension

{{

.original

}}

.

{anchor:proxy} h2. Troubleshooting Connection Problems Often 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 {{

Anchor
proxy
proxy

Troubleshooting Connection Problems

Often 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

}}

:

{

No Format
}

org.terracotta.modules.tool.proxyUrl = http://HOST:PORT
{noformat}

For

example,

if

your

company's

proxy

server

is

{{

myCompany.com:6666

}}

,

add

the

following

to

{{

tim-get.properties

}}

:

{

No Format
}

org.terracotta.modules.tool.proxyUrl = http://myCompany.com:6666
{noformat} {note} The current {{
Note

The current tim-get.properties

}}

file

does

not

support

authorization.

If

your

proxy

requires

authorization,

see

[these alternatives|#alternative access]. {note} {anchor:alternative access} h3. Alternatives for Accessing Projects If connection problems persist or cannot be solved by using a proxy, try the following: * If using Maven, access Terracotta projects through the [Terracotta Maven repository|Maven]. * Use SVN to download the target projects. The root SVN URL is {noformat}

these alternatives.

Anchor
alternative access
alternative access

Alternatives for Accessing Projects

If connection problems persist or cannot be solved by using a proxy, try the following:

  • If using Maven, access Terracotta projects through the Terracotta Maven repository.
  • Use SVN to download the target projects. The root SVN URL is
    No Format
    
    http://svn.terracotta.org/svn/forge/projects/
    
{noformat} * If your proxy requires authentication, try a
  • If your proxy requires authentication, try a work-around
  • such
  • as
  • using
  • proxy
  • software
  • which
  • allows
  • you
  • to
  • specify
  • authentication.
  • For
  • example,
  • on
  • Microsoft
  • networks
  • based
  • on
  • the
  • NTLM
  • protocol,
  • you
  • may
  • be
  • able
  • to
  • use
  • the
[ |http://ntlmaps.sourceforge.net/]
  • .
{div9}