Read about our upcoming Code of Conduct on this issue

This instance was upgraded to Heptapod 0.28.0 today

status.html.haml 4.02 KB
Newer Older
Stan Hu's avatar
Stan Hu committed
1
2
3
4
- page_title 'Bitbucket Server import'
- header_title 'Projects', root_path

%h3.page-title
5
  %i.fa.fa-bitbucket-square
6
  = _('Import projects from Bitbucket Server')
Stan Hu's avatar
Stan Hu committed
7
8
9

- if @repos.any?
  %p.light
10
11
    = _('Select projects you want to import.')
  .btn-group
12
13
    - if @incompatible_repos.any?
      = button_tag class: 'btn btn-import btn-success js-import-all' do
14
        = _('Import all compatible projects')
15
16
17
        = icon('spinner spin', class: 'loading-icon')
    - else
      = button_tag class: 'btn btn-import btn-success js-import-all' do
18
        = _('Import all projects')
19
        = icon('spinner spin', class: 'loading-icon')
20
21
  .btn-group
    = link_to('Reconfigure', configure_import_bitbucket_server_path, class: 'btn btn-primary', method: :post)
Stan Hu's avatar
Stan Hu committed
22

23
.table-responsive.prepend-top-10
Stan Hu's avatar
Stan Hu committed
24
25
26
27
28
29
  %table.table.import-jobs
    %colgroup.import-jobs-from-col
    %colgroup.import-jobs-to-col
    %colgroup.import-jobs-status-col
    %thead
      %tr
30
31
32
        %th= _('From Bitbucket Server')
        %th= _('To GitLab')
        %th= _(' Status')
Stan Hu's avatar
Stan Hu committed
33
34
35
36
    %tbody
      - @already_added_projects.each do |project|
        %tr{ id: "project_#{project.id}", class: "#{project_status_css_class(project.import_status)}" }
          %td
37
            = link_to project.import_source, project.import_source, target: '_blank', rel: 'noopener noreferrer'
Stan Hu's avatar
Stan Hu committed
38
39
40
          %td
            = link_to project.full_path, [project.namespace.becomes(Namespace), project]
          %td.job-status
41
42
            - case project.import_status
            - when 'finished'
43
              = icon('check', text: 'Done')
44
            - when 'started'
45
              = icon('spin', text: 'started')
Stan Hu's avatar
Stan Hu committed
46
47
48
49
            - else
              = project.human_import_status_name

      - @repos.each do |repo|
Stan Hu's avatar
Stan Hu committed
50
        %tr{ id: "repo_#{repo.project_key}___#{repo.slug}", data: { project: repo.project_key, repository: repo.slug } }
Stan Hu's avatar
Stan Hu committed
51
          %td
Stan Hu's avatar
Stan Hu committed
52
            = link_to repo.browse_url, repo.browse_url, target: '_blank', rel: 'noopener noreferrer'
Stan Hu's avatar
Stan Hu committed
53
54
55
56
57
          %td.import-target
            %fieldset.row
            .input-group
              .project-path.input-group-prepend
                - if current_user.can_select_namespace?
58
                  - selected = params[:namespace_id] || :extra_group
59
                  - opts = current_user.can_create_group? ? { extra_group: Group.new(name: repo.project_key, path: repo.project_key) } : {}
Stan Hu's avatar
Stan Hu committed
60
61
62
63
64
                  = select_tag :namespace_id, namespaces_options(selected, opts.merge({ display_path: true })), { class: 'input-group-text select2 js-select-namespace', tabindex: 1 }
                - else
                  = text_field_tag :path, current_user.namespace_path, class: "input-group-text input-large form-control", tabindex: 1, disabled: true
              %span.input-group-prepend
                .input-group-text /
65
              = text_field_tag :path, sanitize_project_name(repo.slug), class: "input-mini form-control", tabindex: 2, autofocus: true, required: true
Stan Hu's avatar
Stan Hu committed
66
67
68
69
70
          %td.import-actions.job-status
            = button_tag class: 'btn btn-import js-add-to-import' do
              Import
              = icon('spinner spin', class: 'loading-icon')
      - @incompatible_repos.each do |repo|
Stan Hu's avatar
Stan Hu committed
71
        %tr{ id: "repo_#{repo.project_key}___#{repo.slug}" }
Stan Hu's avatar
Stan Hu committed
72
          %td
Stan Hu's avatar
Stan Hu committed
73
            = link_to repo.browse_url, repo.browse_url, target: '_blank', rel: 'noopener noreferrer'
Stan Hu's avatar
Stan Hu committed
74
75
76
77
78
79
          %td.import-target
          %td.import-actions-job-status
            = label_tag 'Incompatible Project', nil, class: 'label badge-danger'

- if @incompatible_repos.any?
  %p
80
    One or more of your Bitbucket Server projects cannot be imported into GitLab
Stan Hu's avatar
Stan Hu committed
81
82
83
84
85
86
87
    directly because they use Subversion or Mercurial for version control,
    rather than Git. Please convert
    = link_to 'them to Git,', 'https://www.atlassian.com/git/tutorials/migrating-overview'
    and go through the
    = link_to 'import flow', status_import_bitbucket_server_path
    again.

88
89
= paginate_without_count(@collection)

Stan Hu's avatar
Stan Hu committed
90
.js-importer-status{ data: { jobs_import_path: "#{jobs_import_bitbucket_server_path}", import_path: "#{import_bitbucket_server_path}" } }