{"id":18507922,"url":"https://github.com/educationaltestingservice/gitlab-to-atlassian","last_synced_at":"2025-04-09T03:31:40.742Z","repository":{"id":20523936,"uuid":"23802947","full_name":"EducationalTestingService/gitlab-to-atlassian","owner":"EducationalTestingService","description":"Scripts to help export information from GitLab to Atlassian JIRA and Stash.","archived":false,"fork":false,"pushed_at":"2018-06-22T17:59:32.000Z","size":22,"stargazers_count":36,"open_issues_count":8,"forks_count":11,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-04-21T06:17:10.631Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EducationalTestingService.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-09-08T18:30:30.000Z","updated_at":"2023-10-10T02:56:21.000Z","dependencies_parsed_at":"2022-08-30T18:00:56.124Z","dependency_job_id":null,"html_url":"https://github.com/EducationalTestingService/gitlab-to-atlassian","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EducationalTestingService%2Fgitlab-to-atlassian","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EducationalTestingService%2Fgitlab-to-atlassian/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EducationalTestingService%2Fgitlab-to-atlassian/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EducationalTestingService%2Fgitlab-to-atlassian/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EducationalTestingService","download_url":"https://codeload.github.com/EducationalTestingService/gitlab-to-atlassian/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223362251,"owners_count":17133067,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T15:12:51.668Z","updated_at":"2024-11-06T15:12:51.759Z","avatar_url":"https://github.com/EducationalTestingService.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"**IMPORTANT: This project is no longer actively maintained. It was last known to work with the GitLab version from 2014 and is unlikely to work with newer versions of GitLab with a different API. If you are interested in contributing or maintaining this project, please let us know.**\n\n# GitLab to Atlassian\n\nThis repository contains two scripts (`dump_gitlab_json.py` and\n`gitlab_to_stash.py`) that export issues and code from GitLab to JIRA and Stash\nrespectively. Each script is described in more detail below.\n\n***\n\n## Dumping JIRA-compatible issue JSON from GitLab\n\nThis script attempts to export all of the issues (and the users associated with\nthem) from GitLab to JIRA. I wrote it in a few hours, but it got the job done.\nI'm posting it on GitHub since other people may also find it useful.\n\n### Usage\n\n```\nusage: dump_gitlab_json.py [-h] [-d DATE_FILTER] [-e] [-i IGNORE_LIST]\n                           [-p PASSWORD] [-P PAGE_SIZE] [-s] [-t TOKEN]\n                           [-u USERNAME] [-v] [--version]\n                           gitlab_url\n\nExport all users/issues from GitLab to JIRA JSON format.\n\npositional arguments:\n  gitlab_url            The full URL to your GitLab instance.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -d DATE_FILTER, --date_filter DATE_FILTER\n                        Only include issues, notes, etc. created after the\n                        specified date. Expected format is YYYY-MM-DD\n                        (default: 1970-01-01)\n  -e, --include_empty   Include projects in output that do not have any\n                        issues. (default: False)\n  -i IGNORE_LIST, --ignore_list IGNORE_LIST\n                        List of project names to exclude from dump. (default:\n                        None)\n  -p PASSWORD, --password PASSWORD\n                        The password to use to authenticate if token is not\n                        specified. If password and token are both unspecified,\n                        you will be prompted to enter a password. (default:\n                        None)\n  -P PAGE_SIZE, --page_size PAGE_SIZE\n                        When retrieving result from GitLab, how many results\n                        should be included in a given page?. (default: 20)\n  -s, --verify_ssl      Enable SSL certificate verification (default: False)\n  -t TOKEN, --token TOKEN\n                        The private GitLab API token to use for\n                        authentication. Either this or username and password\n                        must be set. (default: None)\n  -u USERNAME, --username USERNAME\n                        The username to use for authentication, if token is\n                        unspecified. (default: None)\n  -v, --verbose         Print more status information. For every additional\n                        time this flag is specified, output gets more verbose.\n                        (default: 0)\n  --version             show program's version number and exit\n```\n\n***\n\n## Exporting GitLab projects and repositories to Stash\n\n`gitlab_to_stash.py` clones all projects from GitLab and recreates them on\nStash.  It attempts to replicate the GitLab's project/namespace hierarchy.\n\n### Usage\n\n```\nusage: gitlab_to_stash.py [-h] [-p PASSWORD] [-P PAGE_SIZE] [-s] [-S]\n                          [-t TOKEN] [-u USERNAME] [-v] [--version]\n                          gitlab_url stash_url\n\nTransfer all projects/repositories from GitLab to Stash. Note: This script\nassumes you have your SSH key registered with both GitLab and Stash.\n\npositional arguments:\n  gitlab_url            The full URL to your GitLab instance.\n  stash_url             The full URL to your Stash instance.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  -p PASSWORD, --password PASSWORD\n                        The password to use to authenticate if token is not\n                        specified. If password and token are both unspecified,\n                        you will be prompted to enter a password. (default:\n                        None)\n  -P PAGE_SIZE, --page_size PAGE_SIZE\n                        When retrieving result from GitLab, how many results\n                        should be included in a given page?. (default: 20)\n  -s, --verify_ssl      Enable SSL certificate verification (default: False)\n  -S, --skip_existing   Do not update existing repositories and just skip\n                        them. (default: False)\n  -t TOKEN, --token TOKEN\n                        The private GitLab API token to use for\n                        authentication. Either this or username and password\n                        must be set. (default: None)\n  -u USERNAME, --username USERNAME\n                        The username to use for authentication, if token is\n                        unspecified. (default: None)\n  -v, --verbose         Print more status information. For every additional\n                        time this flag is specified, output gets more verbose.\n                        (default: 0)\n  --version             show program's version number and exit\n```\n\n***\n\n## Requirements\n\n- Python 3 (although pull request to support 2 are welcome)\n- [Python GitLab API library](https://github.com/Itxaka/pyapi-gitlab)\n- [Stashy](https://github.com/RisingOak/stashy) Python library\n- Admin access to GitLab is necessary to export private repositories\n\n## License\n\nNew BSD License (3-clause)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feducationaltestingservice%2Fgitlab-to-atlassian","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feducationaltestingservice%2Fgitlab-to-atlassian","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feducationaltestingservice%2Fgitlab-to-atlassian/lists"}