Skip to content

SimeonC/jira-gitlab-seneschal

Repository files navigation

jira-gitlab-seneschal

A tool for migrating to and managing issues in JIRA and Git in GitLab.

Migration Notes

The transitions scripts require you to enable "All statuses can transition to '...'" for all statuses you want to map to. This allows us to map the gitlab column "Labels" to their equivalent "Statuses" in JIRA.

First Time installation

First time you run this product you need to update config.json to complete your own setup. This is a requirement for creating your own private add-on.

Also you will need a local copy of PostgresSQL setup, the default database used in dev is jira-gitlab-seneschal so make sure that exists.

I recommend using docker and these commands;

docker run --name some-postgres -e POSTGRES_PASSWORD=seneschal-dev-password -p 5432:5432 -d postgres

Then in the docker container run the following commands; (use the last command to confirm you have created the db correctly).

> psql -U postgres
> CREATE DATABASE "jira-gitlab-seneschal";
> \l

If you are running in dev mode follow the instructions for "The Dev Loop" here; https://bitbucket.org/atlassian/atlassian-connect-express

ENV Vars Documentation

When running in production the following ENV Vars should be defined as follows;

var usage
$PORT Server Port to run express server on
$APP_URL Url that the addon will run on
$DATABASE_URL Url of the Postgres database to connect to
$JIRA_HOST Host domain of your Jira instance, can be a wildcard. If you need more than one in the whitelist I recommend editing the config.json file directly. eg *.atlassian.net will allow all cloud jira instances.

Releasing

To release you first need to setup conventional-github-releaser by following the instructions here: https://www.npmjs.com/package/conventional-github-releaser#setup-token-for-cli

Then simply run npm run release which will automatically tag, update the changelog and create the github release file.

To ensure this system works all commits must follow the Angular commit conventions

Weird bugs

  • When upgrading dependencies watch out for the version of sequelize as set in atlassian-express-connect. The versions must match or certain checks like instanceof will fail - this basically means we have to match the atlassian-express-connect version.

About

A tool for migrating to and managing issues in JIRA and Git in GitLab

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages