481 lines
11 KiB
YAML
481 lines
11 KiB
YAML
# Model relationships to be included in the project import/export
|
|
#
|
|
# This list _must_ only contain relationships that are available to both CE and
|
|
# EE. EE specific relationships must be defined in the `ee` section further
|
|
# down below.
|
|
tree:
|
|
project:
|
|
- labels:
|
|
- :priorities
|
|
- milestones:
|
|
- events:
|
|
- :push_event_payload
|
|
- issues:
|
|
- events:
|
|
- :push_event_payload
|
|
- :timelogs
|
|
- notes:
|
|
- :author
|
|
- :award_emoji
|
|
- :system_note_metadata
|
|
- events:
|
|
- :push_event_payload
|
|
- label_links:
|
|
- label:
|
|
- :priorities
|
|
- milestone:
|
|
- events:
|
|
- :push_event_payload
|
|
- resource_label_events:
|
|
- label:
|
|
- :priorities
|
|
- designs:
|
|
- notes:
|
|
- :author
|
|
- events:
|
|
- :push_event_payload
|
|
- design_versions:
|
|
- actions:
|
|
- :design # Duplicate export of issues.designs in order to link the record to both Issue and Action
|
|
- :issue_assignees
|
|
- :zoom_meetings
|
|
- :sentry_issue
|
|
- :award_emoji
|
|
- snippets:
|
|
- :award_emoji
|
|
- notes:
|
|
- :author
|
|
- :award_emoji
|
|
- releases:
|
|
- :links
|
|
- project_members:
|
|
- :user
|
|
- merge_requests:
|
|
- :metrics
|
|
- :award_emoji
|
|
- notes:
|
|
- :author
|
|
- :award_emoji
|
|
- :system_note_metadata
|
|
- events:
|
|
- :push_event_payload
|
|
- :suggestions
|
|
- merge_request_diff:
|
|
- merge_request_diff_commits:
|
|
- :commit_author
|
|
- :committer
|
|
- :merge_request_diff_files
|
|
- events:
|
|
- :push_event_payload
|
|
- :timelogs
|
|
- label_links:
|
|
- label:
|
|
- :priorities
|
|
- milestone:
|
|
- events:
|
|
- :push_event_payload
|
|
- resource_label_events:
|
|
- label:
|
|
- :priorities
|
|
- :external_pull_requests
|
|
- ci_pipelines:
|
|
- notes:
|
|
- :author
|
|
- events:
|
|
- :push_event_payload
|
|
- stages:
|
|
- :statuses
|
|
- :external_pull_request
|
|
- :merge_request
|
|
- :auto_devops
|
|
- :triggers
|
|
- :pipeline_schedules
|
|
- :container_expiration_policy
|
|
- protected_branches:
|
|
- :merge_access_levels
|
|
- :push_access_levels
|
|
- protected_tags:
|
|
- :create_access_levels
|
|
- :project_feature
|
|
- :custom_attributes
|
|
- :prometheus_metrics
|
|
- :project_badges
|
|
- :ci_cd_settings
|
|
- :error_tracking_setting
|
|
- :metrics_setting
|
|
- boards:
|
|
- lists:
|
|
- label:
|
|
- :priorities
|
|
group_members:
|
|
- :user
|
|
|
|
# Only include the following attributes for the models specified.
|
|
included_attributes:
|
|
user:
|
|
- :id
|
|
- :email
|
|
- :username
|
|
author:
|
|
- :name
|
|
ci_cd_settings:
|
|
- :group_runners_enabled
|
|
|
|
# Do not include the following attributes for the models specified.
|
|
excluded_attributes:
|
|
project:
|
|
- :name
|
|
- :path
|
|
- :namespace_id
|
|
- :creator_id
|
|
- :pool_repository_id
|
|
- :import_url
|
|
- :import_status
|
|
- :avatar
|
|
- :import_type
|
|
- :import_source
|
|
- :integrations
|
|
- :mirror
|
|
- :runners_token
|
|
- :runners_token_encrypted
|
|
- :repository_storage
|
|
- :repository_read_only
|
|
- :lfs_enabled
|
|
- :created_at
|
|
- :updated_at
|
|
- :id
|
|
- :star_count
|
|
- :last_activity_at
|
|
- :last_repository_updated_at
|
|
- :last_repository_check_at
|
|
- :storage_version
|
|
- :remote_mirror_available_overridden
|
|
- :description_html
|
|
- :repository_languages
|
|
- :bfg_object_map
|
|
- :detected_repository_languages
|
|
- :tag_list
|
|
- :topic_list
|
|
- :mirror_user_id
|
|
- :mirror_trigger_builds
|
|
- :only_mirror_protected_branches
|
|
- :pull_mirror_available_overridden
|
|
- :pull_mirror_branch_prefix
|
|
- :mirror_overwrites_diverged_branches
|
|
- :packages_enabled
|
|
- :mirror_last_update_at
|
|
- :mirror_last_successful_update_at
|
|
- :emails_disabled
|
|
- :max_pages_size
|
|
- :max_artifacts_size
|
|
- :marked_for_deletion_at
|
|
- :marked_for_deletion_by_user_id
|
|
- :compliance_framework_setting
|
|
- :show_default_award_emojis
|
|
- :services
|
|
- :exported_protected_branches
|
|
namespaces:
|
|
- :runners_token
|
|
- :runners_token_encrypted
|
|
project_import_state:
|
|
- :last_error
|
|
- :jid
|
|
- :last_update_at
|
|
- :last_successful_update_at
|
|
prometheus_metrics:
|
|
- :common
|
|
- :identifier
|
|
snippets:
|
|
- :expired_at
|
|
- :secret
|
|
- :encrypted_secret_token
|
|
- :encrypted_secret_token_iv
|
|
- :repository_read_only
|
|
merge_request_diff:
|
|
- :external_diff
|
|
- :stored_externally
|
|
- :external_diff_store
|
|
- :merge_request_id
|
|
- :verification_retry_at
|
|
- :verified_at
|
|
- :verification_retry_count
|
|
- :verification_checksum
|
|
- :verification_failure
|
|
merge_request_diff_commits:
|
|
- :merge_request_diff_id
|
|
- :commit_author_id
|
|
- :committer_id
|
|
merge_request_diff_commit_user:
|
|
- :id
|
|
merge_request_diff_detail:
|
|
- :merge_request_diff_id
|
|
- :verification_retry_at
|
|
- :verified_at
|
|
- :verification_retry_count
|
|
- :verification_checksum
|
|
- :verification_failure
|
|
merge_request_diff_files:
|
|
- :diff
|
|
- :external_diff_offset
|
|
- :external_diff_size
|
|
- :merge_request_diff_id
|
|
issues:
|
|
- :milestone_id
|
|
- :sprint_id
|
|
- :moved_to_id
|
|
- :sent_notifications
|
|
- :state_id
|
|
- :duplicated_to_id
|
|
- :promoted_to_epic_id
|
|
- :blocking_issues_count
|
|
- :service_desk_reply_to
|
|
- :upvotes_count
|
|
- :work_item_type_id
|
|
merge_request:
|
|
- :milestone_id
|
|
- :sprint_id
|
|
- :ref_fetched
|
|
- :merge_jid
|
|
- :rebase_jid
|
|
- :latest_merge_request_diff_id
|
|
- :head_pipeline_id
|
|
- :state_id
|
|
merge_requests:
|
|
- :milestone_id
|
|
- :sprint_id
|
|
- :ref_fetched
|
|
- :merge_jid
|
|
- :rebase_jid
|
|
- :latest_merge_request_diff_id
|
|
- :head_pipeline_id
|
|
- :state_id
|
|
award_emoji:
|
|
- :awardable_id
|
|
statuses:
|
|
- :trace
|
|
- :token
|
|
- :token_encrypted
|
|
- :when
|
|
- :artifacts_file
|
|
- :artifacts_metadata
|
|
- :artifacts_file_store
|
|
- :artifacts_metadata_store
|
|
- :artifacts_size
|
|
- :commands
|
|
- :runner_id
|
|
- :trigger_request_id
|
|
- :erased_by_id
|
|
- :auto_canceled_by_id
|
|
- :stage_id
|
|
- :upstream_pipeline_id
|
|
- :resource_group_id
|
|
- :waiting_for_resource_at
|
|
- :processed
|
|
- :id_convert_to_bigint
|
|
- :stage_id_convert_to_bigint
|
|
sentry_issue:
|
|
- :issue_id
|
|
push_event_payload:
|
|
- :event_id
|
|
- :event_id_convert_to_bigint
|
|
project_badges:
|
|
- :group_id
|
|
resource_label_events:
|
|
- :reference
|
|
- :reference_html
|
|
- :epic_id
|
|
- :issue_id
|
|
- :merge_request_id
|
|
- :label_id
|
|
runners:
|
|
- :token
|
|
- :token_encrypted
|
|
error_tracking_setting:
|
|
- :encrypted_token
|
|
- :encrypted_token_iv
|
|
- :enabled
|
|
- :integrated
|
|
service_desk_setting:
|
|
- :outgoing_name
|
|
priorities:
|
|
- :label_id
|
|
events:
|
|
- :target_id
|
|
- :id_convert_to_bigint
|
|
timelogs:
|
|
- :issue_id
|
|
- :merge_request_id
|
|
- :note_id
|
|
notes:
|
|
- :noteable_id
|
|
- :review_id
|
|
label_links:
|
|
- :label_id
|
|
- :target_id
|
|
issue_assignees:
|
|
- :issue_id
|
|
zoom_meetings:
|
|
- :issue_id
|
|
design:
|
|
- :issue_id
|
|
designs:
|
|
- :issue_id
|
|
design_versions:
|
|
- :issue_id
|
|
actions:
|
|
- :design_id
|
|
- :version_id
|
|
- image_v432x230
|
|
links:
|
|
- :release_id
|
|
project_members:
|
|
- :source_id
|
|
- :invite_email_success
|
|
metrics:
|
|
- :merge_request_id
|
|
- :pipeline_id
|
|
suggestions:
|
|
- :note_id
|
|
ci_pipelines:
|
|
- :auto_canceled_by_id
|
|
- :pipeline_schedule_id
|
|
- :merge_request_id
|
|
- :external_pull_request_id
|
|
- :ci_ref_id
|
|
- :locked
|
|
stages:
|
|
- :pipeline_id
|
|
merge_access_levels:
|
|
- :protected_branch_id
|
|
push_access_levels:
|
|
- :protected_branch_id
|
|
- :deploy_key_id
|
|
unprotect_access_levels:
|
|
- :protected_branch_id
|
|
create_access_levels:
|
|
- :protected_tag_id
|
|
deploy_access_levels:
|
|
- :protected_environment_id
|
|
boards:
|
|
- :milestone_id
|
|
- :iteration_id
|
|
lists:
|
|
- :board_id
|
|
- :label_id
|
|
- :milestone_id
|
|
- :iteration_id
|
|
epic:
|
|
- :start_date_sourcing_milestone_id
|
|
- :due_date_sourcing_milestone_id
|
|
- :parent_id
|
|
- :state_id
|
|
- :start_date_sourcing_epic_id
|
|
- :due_date_sourcing_epic_id
|
|
epic_issue:
|
|
- :epic_id
|
|
- :issue_id
|
|
system_note_metadata:
|
|
- :description_version_id
|
|
- :note_id
|
|
methods:
|
|
notes:
|
|
- :type
|
|
labels:
|
|
- :type
|
|
label:
|
|
- :type
|
|
statuses:
|
|
- :type
|
|
merge_request_diff_files:
|
|
- :utf8_diff
|
|
merge_requests:
|
|
- :diff_head_sha
|
|
- :source_branch_sha
|
|
- :target_branch_sha
|
|
- :state
|
|
events:
|
|
- :action
|
|
push_event_payload:
|
|
- :action
|
|
project_badges:
|
|
- :type
|
|
lists:
|
|
- :list_type
|
|
ci_pipelines:
|
|
- :notes
|
|
issues:
|
|
- :state
|
|
|
|
preloads:
|
|
issues:
|
|
project: :route
|
|
statuses:
|
|
# TODO: We cannot preload tags, as they are not part of `GenericCommitStatus`
|
|
# tags: # needed by tag_list
|
|
project: # deprecated: needed by coverage_regex of Ci::Build
|
|
merge_requests:
|
|
source_project: # needed by source_branch_sha and diff_head_sha
|
|
target_project: # needed by target_branch_sha
|
|
assignees: # needed by assigne_id that is implemented by DeprecatedAssignee
|
|
|
|
# Specify a custom export reordering for a given relationship
|
|
# For example for issues we use a custom export reordering by relative_position, so that on import, we can reset the
|
|
# relative position value, but still keep the issues order to the order in which issues were in the exported project.
|
|
# By default the ordering of relations is done by PK.
|
|
# column - specify the column by which to reorder, by default it is relation's PK
|
|
# direction - specify the ordering direction :asc or :desc, default :asc
|
|
# nulls_position - specify where would null values be positioned. Because custom ordering column can contain nulls we
|
|
# need to also specify where would the nulls be placed. It can be :nulls_last or :nulls_first, defaults
|
|
# to :nulls_last
|
|
# Example:
|
|
# export_reorders:
|
|
# project:
|
|
# issues:
|
|
# column: :relative_position
|
|
# direction: :asc
|
|
# nulls_position: :nulls_last
|
|
export_reorders:
|
|
project:
|
|
issues:
|
|
column: :relative_position
|
|
direction: :asc
|
|
nulls_position: :nulls_last
|
|
|
|
# EE specific relationships and settings to include. All of this will be merged
|
|
# into the previous structures if EE is used.
|
|
ee:
|
|
tree:
|
|
project:
|
|
- issues:
|
|
- epic_issue:
|
|
- :epic
|
|
- :issuable_sla
|
|
- protected_branches:
|
|
- :unprotect_access_levels
|
|
- protected_environments:
|
|
- :deploy_access_levels
|
|
- :service_desk_setting
|
|
- :security_setting
|
|
- :push_rule
|
|
|
|
included_attributes:
|
|
issuable_sla:
|
|
- :issue
|
|
- :due_at
|
|
push_rule:
|
|
- :force_push_regex
|
|
- :delete_branch_regex
|
|
- :commit_message_regex
|
|
- :author_email_regex
|
|
- :file_name_regex
|
|
- :branch_name_regex
|
|
- :commit_message_negative_regex
|
|
- :max_file_size
|
|
- :deny_delete_tag
|
|
- :member_check
|
|
- :is_sample
|
|
- :prevent_secrets
|
|
- :reject_unsigned_commits
|
|
- :commit_committer_check
|
|
- :regexp_uses_re2
|