Install a Subversion adapter on Mac OS X/Linux

Install a Subversion adapter as a post-receive hook on Mac OS X/Linux.

Minimum requirements:
Each external Subversion repository you wish to monitor with TeamForge Orchestrates requires the installation of a customized post-commit hook script as follows. CollabNet Subversion Edge 4.0 or later is also supported.

Install Subversion post-commit hooks

  1. Download the Orchestrate-svn-adapter-[version].zip adapter file from the TeamForge Orchestrate Community web site and unpack it inside your repository's hooks directory. For example, if your repository's hooks directory is located at /path/to/svn/repos/my_repo/hooks :

    cd /path/to/svn/repos/my_repo/hooks

    Download the zip file to the current location

    unzip Orchestrate-svn-adapter-1.0.zip

    This will unpack the following into your hooks directory:
    • LICENSE.txt
    • README.txt
    • configdefaults.py
    • configwrapper.py
    • orchestrate_commit_gate_hook.py
    • orchestrator_commit_gate_hook_snippet.sh
    • pika/
    • post-commit.bat.sample
    • post_commit_orc_publish_amqp.conf.sample
    • post_commit_orc_publish_amqp.py

Configuration

  1. In a web browser, log into TeamForge Orchestrate as a privileged Orchestrate user and edit (or add) the relevant Commit source you wish to associate with this Subversion repository.

    Manage Sources > Toggle Commit > Add or Edit a Source > External repository

  2. On the Edit Source screen, locate the section titled "Adapter Configuration Information" and copy all values; these values are used later in the configuration process.
  3. Switch back to your command line console and copy post_commit_orc_publish_amqp.conf.sample to post_commit_orc_publish_amqp.conf.
  4. Edit post_commit_orc_publish_amqp.conf and modify options for your specific installation, for example:
    Logging section
    • filename — Full path to the desired log file, for example, /tmp/post-commit.log.
    • level — The logging level, which is one of these: debug , info, warning, error, or critical.
    svnlook section
    • svnlook — The path to your svnlook executable, for example, /usr/bin/svnlook or/opt/subversion/bin/svnlook.
    RabbitMQ (amqp) section
    • host — The hostname of the amqp server. Copy and paste the hostname from the Queue Server value from the Edit Source screen in TeamForge Orchestrate.
    • port — The port number of the amqp server (default is 5672). Copy and paste the port number the Queue Server value from the Edit Source screen in TeamForge Orchestrate.
    • username— Username used to access the amqp server. Copy and paste the queue username value from the Edit Source screen in TeamForge Orchestrate.
    • password — Password used to access the amqp server. Copy and paste the queue password value from the Edit Source screen in TeamForge Orchestrate.
    TeamForge Orchestrate section
    • source_association_key — the key provided by TeamForge Orchestrate. Copy and paste the source association key value from the Edit Source screen in TeamForge Orchestrate. For more on association keys, see Source association keys.

Activate post-commit hook

  1. Copy or create a symlink called "post-commit" linking to post_commit_orc_publish_amqp.py.