Skip to content

Converts wiki pages and tickets from an Assembla space to a Redmine project.

License

Notifications You must be signed in to change notification settings

dtechspace/redmine-importer

Repository files navigation

Assembla-to-Redmine Converter

This project helps to provide a converter for both wiki pages and issues for Assembla spaces to Redmine projects. It also converts the markdown appropriately and imports the necessary images, if they exist on the Assembla side.

Getting Started

Ensure that both your Redmine server/project and Assembla space is ready for import. Clone this project, and install the requirements. We recommend activating a Python virtual environment before pip installing the requirements.

git clone <GitHub URL>
cd redmine-importer
pip install -r requirements.txt

You will also need to create an empty folder for any images included in your Assembla wiki pages or tickets, in the same directory as the python scripts.

cd redmine-importer
mkdir img

Changes to the Assembla Library

During the development of this project, we've found that the assembla API python wrapper library (https://github.com/markfinger/assembla) does not actually query all wiki pages from the Assembla space.

To remedy this issue, change the parameter get_all in the _get_json function in (https://github.com/markfinger/assembla/blob/master/assembla/api.py) to True after installation.

def _get_json(self, model, space=None, rel_path=None, extra_params=None, get_all=True):

Settings

In order to specify which Assembla space and Redmine project to target, we've provided a settings configuration file, called settings.ini. The settings.ini file is outlined in the Python built-in ConfigParser library format.

[Assembla Keys]
ASSEMBLA_API_KEY=<API Key from Assembla, found at https://www.assembla.com/user/edit/manage_clients>
ASSEMBLA_API_KEY_SECRET=<API Secret from Assembla, found at https://www.assembla.com/user/edit/manage_clients>
ASSEMBLA_SPACE=<Assembla Space name>

[Redmine Keys]
REDMINE_API_KEY=<Follow the steps at https://www.redmine.org/boards/2/topics/53956 to find the API key>
REDMINE_URL=<URL for your Redmine server>
REDMINE_PROJECT=<Redmine project identifier>

In order to find the exact naming of your Redmine and Assembla projects, you can run the settings.py file, which will list the available Assembla Spaces and Redmine Projects associated to your API keys.

Running the Project

Once the settings.ini has been populated and saved, please run the project with the following python command:

python3 migration.py

If there are issues with importing projects or issues, error messages with the specific page name will be printed to the terminal, and those projects and/or issues will be skipped. We recommend posting those issues to this GitHub project and/or uploading those projects/issues manually.

About

Converts wiki pages and tickets from an Assembla space to a Redmine project.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages