589b2db06c
This sets up all the basics for importing Phabricator tasks into GitLab issues. To import all tasks from a Phabricator instance into GitLab, we'll import all of them into a new project that will have its repository disabled. The import is hooked into a regular ProjectImport setup, but similar to the GitHub parallel importer takes care of all the imports itself. In this iteration, we're importing each page of tasks in a separate sidekiq job. The first thing we do when requesting a new page of tasks is schedule the next page to be imported. But to avoid deadlocks, we only allow a single job per worker type to run at the same time. For now we're only importing basic Issue information, this should be extended to richer information.
94 lines
2.7 KiB
YAML
94 lines
2.7 KiB
YAML
# This configuration file should be exclusively used to set queue settings for
|
|
# Sidekiq. Any other setting should be specified using the Sidekiq CLI or the
|
|
# Sidekiq Ruby API (see config/initializers/sidekiq.rb).
|
|
---
|
|
# All the queues to process and their weights. Every queue _must_ have a weight
|
|
# defined.
|
|
#
|
|
# The available weights are as follows
|
|
#
|
|
# 1: low priority
|
|
# 2: medium priority
|
|
# 3: high priority
|
|
# 5: _super_ high priority, this should only be used for _very_ important queues
|
|
#
|
|
# As per http://stackoverflow.com/a/21241357/290102 the formula for calculating
|
|
# the likelihood of a job being popped off a queue (given all queues have work
|
|
# to perform) is:
|
|
#
|
|
# chance = (queue weight / total weight of all queues) * 100
|
|
:queues:
|
|
- [post_receive, 5]
|
|
- [merge, 5]
|
|
- [update_merge_requests, 3]
|
|
- [process_commit, 3]
|
|
- [new_note, 2]
|
|
- [new_issue, 2]
|
|
- [new_merge_request, 2]
|
|
- [pipeline_processing, 5]
|
|
- [pipeline_creation, 4]
|
|
- [pipeline_default, 3]
|
|
- [pipeline_cache, 3]
|
|
- [deployment, 3]
|
|
- [pipeline_hooks, 2]
|
|
- [gitlab_shell, 2]
|
|
- [email_receiver, 2]
|
|
- [emails_on_push, 2]
|
|
- [mailers, 2]
|
|
- [mail_scheduler, 2]
|
|
- [invalid_gpg_signature_update, 2]
|
|
- [create_gpg_signature, 2]
|
|
- [rebase, 2]
|
|
- [upload_checksum, 1]
|
|
- [repository_fork, 1]
|
|
- [repository_import, 1]
|
|
- [github_importer, 1]
|
|
- [github_import_advance_stage, 1]
|
|
- [project_service, 1]
|
|
- [delete_user, 1]
|
|
- [todos_destroyer, 1]
|
|
- [delete_merged_branches, 1]
|
|
- [authorized_projects, 1]
|
|
- [expire_build_instance_artifacts, 1]
|
|
- [group_destroy, 1]
|
|
- [irker, 1]
|
|
- [namespaceless_project_destroy, 1]
|
|
- [project_cache, 1]
|
|
- [project_destroy, 1]
|
|
- [project_export, 1]
|
|
- [web_hook, 1]
|
|
- [repository_check, 1]
|
|
- [git_garbage_collect, 1]
|
|
- [reactive_caching, 1]
|
|
- [cronjob, 1]
|
|
- [default, 1]
|
|
- [pages, 1]
|
|
- [system_hook_push, 1]
|
|
- [propagate_service_template, 1]
|
|
- [background_migration, 1]
|
|
- [gcp_cluster, 1]
|
|
- [project_migrate_hashed_storage, 1]
|
|
- [project_rollback_hashed_storage, 1]
|
|
- [hashed_storage, 1]
|
|
- [pages_domain_verification, 1]
|
|
- [object_storage_upload, 1]
|
|
- [object_storage, 1]
|
|
- [plugin, 1]
|
|
- [pipeline_background, 1]
|
|
- [repository_update_remote_mirror, 1]
|
|
- [repository_remove_remote, 1]
|
|
- [create_note_diff_file, 1]
|
|
- [delete_diff_files, 1]
|
|
- [detect_repository_languages, 1]
|
|
- [auto_devops, 2]
|
|
- [container_repository, 1]
|
|
- [object_pool, 1]
|
|
- [repository_cleanup, 1]
|
|
- [delete_stored_files, 1]
|
|
- [remote_mirror_notification, 2]
|
|
- [project_daily_statistics, 1]
|
|
- [import_issues_csv, 2]
|
|
- [chat_notification, 2]
|
|
- [migrate_external_diffs, 1]
|
|
- [update_project_statistics, 1]
|
|
- [phabricator_import_import_tasks, 1]
|