Beginning on October 25th, 2016, Persona will no longer be an option for authentication on BMO. For more details see Persona Deprecated.
Last Comment Bug 238720 - Documentation integration
: Documentation integration
Status: NEW
Product: Webtools Graveyard
Classification: Graveyard
Component: Tinderbox3 (show other bugs)
: Trunk
: All All
: -- normal (vote)
: ---
Assigned To: John Keiser (jkeiser)
Depends on:
  Show dependency treegraph
Reported: 2004-03-25 17:40 PST by Vlad Dascalu
Modified: 2014-06-16 14:01 PDT (History)
4 users (show)
See Also:
QA Whiteboard:
Iteration: ---
Points: ---


Description Vlad Dascalu 2004-03-25 17:40:05 PST
Tinderbox3 Install notes

Andy Howell <>


2004-03-25 20:00

Here are my notes for setting up tinderbox3. Hope this helps.



I'm not sure how much of LWP you need, but I installed the whole
bundle since what I had didn't provide with Basic Auth.

Update perl with
perl -MCPAN -e 'install "Bundle::LWP"

I'm also using SSL, so I needed:
perl -MCPAN -e 'install "Crypt::SSLeay"'

You undoubtable need others, but these are the only one I had to
add to my machine.

Database Setup

Tinderbox3 can support either mysql or postgress ( I think...) For my
installation I used mysql mysql-3.23.52-44 on SuSE linux 8.1

First you need a tinderbox user, I choose tbox, thought the code uses
tbox3, so that is the better choice.

          DROP,REFERENCES ON tbox.* TO tbox@localhost
          IDENTIFIED BY 'pass';

mysql> create database tbox;

Now create the tables:

cd to tinderbox3/sql

./ --username tbox -p pass

This gives errors saying it can't drop tables. Thats ok, if you run it
again it won't complain. OK.

Code Changes

You need to make a few tweaks....


Edit dbname, username and password in server/Tinderbox3/


Edit "superuser" at of file and change url from mozilla your server at
line 18


Change these if you want. They provide the defaults used when you
create an new tree. Once created, the tree's data is in the database.

A quick little patch to add authentication and to fix a missing "use 

***     2003-03-19 14:56:37.000000000 -0600
---     2004-03-25 10:41:37.000000000 -0600
*** 256,261 ****
--- 256,262 ----
     my $req = new HTTP::Request(POST => $this->{CONFIG}{url} . "/xml/" 
. $script
     #my $req = new HTTP::Request(POST => "");
     $req->content_type("multipart/form-data; boundary=$boundary");
+   $req->authorization_basic('andy', 'yourpassword');

     ${$req->content_ref} .= $this->form_data_request($boundary, 'tree', 
     foreach my $param (keys %{$params}) {
*** 1197,1202 ****
--- 1198,1204 ----
   package TinderClient::Modules::distribute;

   use strict;
+ use Date::Format;

   sub get_config {
     my ($client, $config, $persistent_vars, $build_vars, $content_ref) 
= @_;

However, I recommend getting the new and improved tinderclient that
was posted to the mozilla-webtools list. This is much more
general. Its designed to be customized for your site.

Web Server

Setup web server to find tinderbox3/server and treat .pl files as
cgi scripts.

I'm running Apache 2.x. I added:

Alias /tinderbox /path/to/code/tinderbox3/server
<DirectoryMatch "/path/to/code/tinderbox3/server">
     Options +ExecCGI +FollowSymLinks
     AddHandler cgi-script .pl
     AllowOverride All


Pointed browser at tinderbox/, logged in as tbox.

Now you should be able to create new trees.

Client Side

On your client machine, you need to run It will
connect to the web server and get its run-time values from

Try something like: -url treename clientname

see tinderclient --help

The newer has allows you to specify a site specific
module. See for an example.

Thats it. As I learn more, I'll let you know.

Note You need to log in before you can comment on or make changes to this bug.