There was an error in the #extract_attributes_from_page method that
caused an exception when checking to see if a page named "Home"
already exists.
The check occurs to handle the renaming of the main index page to
"Home" to match the Gollum standard. If there is already a page
called "Home" then the migrator will leave that page and create
the Index page as usual. Users will need to manually rename their
old "Home" page to something else then rename their "Index" page
to "Home". Fortunately, I would be highly surprised if this case
ever comes up.
I also added more verbosity to the logging so if an error does
occur, it will be easier to track down which Wiki page is causing
the problem.
This commit adds a new Rake task for migrating all of your existing
Wiki content from your database into new Gollum repositories.
The bulk of the logic happens within the `WikiToGollumMigrator`
class which is decently test covered and located in the lib directory.
The new Rake task can be executed by running:
`bundle exec rake gitlab:wiki:migrate`
It will output a nice log of every project that it migrates along
with success or failure messages.
I have used it on my own installation to migrate my Wikis successfully.
The tasks gitlab:env:info mixes user and group, and presume as a group 'git'.
However, gitolite group name can be anything.
That patch add the git group name in the config,
and check gitolite.ssh_user group against git.group
(which defaults to 'git', as before this patch, if undefined).
M config/gitlab.yml.example:
Add 'group' in 'git' section
Mention default value for the two extra settings
M lib/tasks/gitlab/check.rake:
Check that gitolite.ssh_user *group* is the one defined in git.group.
Make sure to default to 'git' as the expected group
if said group is undefined in the config.
Note: uses a more complete regexp for the group detection
(the group can start, end or be in the middle or the list of groups
of gitolite.ssh_user)
M: config/initializers/1_settings.rb:
Add default values for gitolite.group and gitlab.user