Hi,
I just updated this ticket so that there is plenty more information to
help a new contributor.
It is not a ticket that is likely to teach anything important about the
workings of Bloodhound/Trac but it wouldn't hurt to have more people
aware of how the initial configuration works.
Cheers,
Gary
On 28/09/12 18:11, Apache Bloodhound wrote:
#154: Installer fails when providing repository type without a path and vice
versa
------------------------+-----------------------
Reporter: gjm | Owner: nobody
Type: defect | Status: assigned
Priority: major | Milestone: Release 2
Component: installer | Version:
Resolution: | Keywords: starter
------------------------+-----------------------
Changes (by gjm):
* owner: gjm => nobody
* status: new => assigned
Comment:
This may be difficult for a starter to interpret without further comment.
So...
The failure of the installation is because if someone runs one of these
commands in the setup phase:
{{{
python bloodhound_setup.py -d sqlite --admin-password=password
--repository-type=svn
}}}
or
{{{
python bloodhound_setup.py -d sqlite --admin-password=password
--repository-path=/path/to/repo
}}}
you will see the output
{{{
Initenv for
'/home/gjm/projects/bloodhound_dev/trunk/installer/bloodhound/environments/main'
failed.
Wrong number of arguments: 3
}}}
followed by a traceback.
The traceback itself is because the trac.do_initenv method (around line
179 of installer/bloodhound_setup.py) completes unsuccessfully but without
throwing an exception, causing a problem for later code when an expected
path doesn't exist. Or something like that.
We can avoid the problem by making sure that we either pass both the
repository type and repository path or neither.
I am still torn on whether we need to stop the setup when either is
missing so perhaps it would be better to output a warning saying that the
repository specification was ignored.