BranislavBeno / GitLab-Issue-Importer

MIT License
1 stars 0 forks source link

Application Tests Application Deployment
Security Rating Coverage Lines of Code

Web application for importing issues into Gitlab

This web application offers to import issues from other ticketing system into Gitlab.
Currently, is supported ClearQuest system and its issues must be provided in form of CSV file.
However, it's relatively easy to extend application for other ticketing systems.

Installation

Preferred way of installation is to pull and run prepared docker image docker pull beo1975/gitlab-issue-importer:1.0.0.
Precondition is to have docker installed on the hosting OS.

Alternatively is possible to build and run the application as a fat jar on any hosting OS with Java 21 installed.

Application expects only running instance of Gitlab into which the issues will be imported. No other services (e.g. databases, message brokers,...) are required.

Usage

Application is simple web server, which by default listens on port 8080.
For successful issues import is necessary to set required parameters over web UI.

There are two ways how to proceed:

  1. Upload all necessary parameters from prepared properties file, e.g.:
    project.url=https://gitlab.com
    project.id=31643739
    project.access.token=gitlab-access-token
    csv.type=ClearQuest
    csv.delimiter=;

For access token obtaining, see: Project access tokens.
For sake of safety, it's possible to provide project.access.token as an environment variable PROJECT_ACCESS_TOKEN on hosting OS.

In this case user uploads chosen properties file over Import settings view.

  1. Set all necessary parameters manually

In this case user sets up necessary parameters manually over Upload issues view.

In both cases user must choose file with issues, which are going to be imported. The result will be shown on Results view.

Supported ticketing systems

ClearQuest

Input CSV file must contain at least following columns:

Following columns from CSV file are also processed:

Any other columns are ignored during import.