2017-08-17 10:53:50 -04:00
|
|
|
- add_to_breadcrumbs "Projects", admin_projects_path
|
2018-03-05 08:45:35 -05:00
|
|
|
- breadcrumb_title @project.full_name
|
|
|
|
- page_title @project.full_name, "Projects"
|
2018-10-01 22:50:48 -04:00
|
|
|
- @content_class = "admin-projects"
|
|
|
|
|
2013-07-13 01:45:48 -04:00
|
|
|
%h3.page-title
|
2018-03-05 08:45:35 -05:00
|
|
|
Project: #{@project.full_name}
|
2018-04-09 13:42:45 -04:00
|
|
|
= link_to edit_project_path(@project), class: "btn btn-nr float-right" do
|
2014-10-01 18:21:29 -04:00
|
|
|
%i.fa.fa-pencil-square-o
|
2012-09-26 09:49:20 -04:00
|
|
|
Edit
|
2013-03-25 05:07:11 -04:00
|
|
|
%hr
|
2016-04-06 07:47:05 -04:00
|
|
|
- if @project.last_repository_check_failed?
|
2016-04-04 11:23:43 -04:00
|
|
|
.row
|
|
|
|
.col-md-12
|
2018-04-10 13:11:34 -04:00
|
|
|
.card
|
|
|
|
.card-header.alert.alert-danger
|
2016-04-14 11:04:18 -04:00
|
|
|
Last repository check
|
2018-04-25 11:58:56 -04:00
|
|
|
= "(#{time_ago_with_tooltip(@project.last_repository_check_at)})"
|
2016-04-13 05:50:39 -04:00
|
|
|
failed. See
|
2016-04-04 11:23:43 -04:00
|
|
|
= link_to 'repocheck.log', admin_logs_path
|
|
|
|
for error messages.
|
2013-03-25 05:07:11 -04:00
|
|
|
.row
|
2013-12-30 16:55:15 -05:00
|
|
|
.col-md-6
|
2018-04-10 13:11:34 -04:00
|
|
|
.card
|
|
|
|
.card-header
|
2013-03-25 05:07:11 -04:00
|
|
|
Project info:
|
2018-05-29 11:08:35 -04:00
|
|
|
%ul.content-list
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light Name:
|
2013-08-29 15:53:22 -04:00
|
|
|
%strong
|
2015-02-25 22:34:16 -05:00
|
|
|
= link_to @project.name, project_path(@project)
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light Namespace:
|
|
|
|
%strong
|
|
|
|
- if @project.namespace
|
|
|
|
= link_to @project.namespace.human_name, [:admin, @project.group || @project.owner]
|
|
|
|
- else
|
|
|
|
Global
|
|
|
|
%li
|
|
|
|
%span.light Owned by:
|
|
|
|
%strong
|
|
|
|
- if @project.owner
|
2013-09-26 07:49:22 -04:00
|
|
|
= link_to @project.owner_name, [:admin, @project.owner]
|
2013-03-25 05:07:11 -04:00
|
|
|
- else
|
|
|
|
(deleted)
|
2011-10-08 17:36:38 -04:00
|
|
|
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light Created by:
|
|
|
|
%strong
|
|
|
|
= @project.creator.try(:name) || '(deleted)'
|
2012-10-04 03:51:35 -04:00
|
|
|
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
2013-10-17 23:10:42 -04:00
|
|
|
%span.light Created on:
|
2013-03-25 05:07:11 -04:00
|
|
|
%strong
|
2016-01-06 17:27:56 -05:00
|
|
|
= @project.created_at.to_s(:medium)
|
2012-12-14 00:14:05 -05:00
|
|
|
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light http:
|
|
|
|
%strong
|
2014-10-06 19:19:21 -04:00
|
|
|
= link_to @project.http_url_to_repo, project_path(@project)
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light ssh:
|
|
|
|
%strong
|
2014-10-06 19:19:21 -04:00
|
|
|
= link_to @project.ssh_url_to_repo, project_path(@project)
|
2013-04-01 11:16:08 -04:00
|
|
|
- if @project.repository.exists?
|
|
|
|
%li
|
2018-03-28 05:21:32 -04:00
|
|
|
%span.light Gitaly storage name:
|
2013-04-01 11:16:08 -04:00
|
|
|
%strong
|
2018-03-28 05:21:32 -04:00
|
|
|
= @project.repository.storage
|
|
|
|
%li
|
|
|
|
%span.light Gitaly relative path:
|
|
|
|
%strong
|
|
|
|
= @project.repository.relative_path
|
2012-12-14 00:14:05 -05:00
|
|
|
|
2013-12-19 10:15:48 -05:00
|
|
|
%li
|
2018-03-28 05:21:32 -04:00
|
|
|
%span.light Storage used:
|
2016-11-22 11:58:10 -05:00
|
|
|
%strong= storage_counter(@project.statistics.storage_size)
|
|
|
|
(
|
|
|
|
= storage_counter(@project.statistics.repository_size)
|
|
|
|
repository,
|
|
|
|
= storage_counter(@project.statistics.build_artifacts_size)
|
|
|
|
build artifacts,
|
|
|
|
= storage_counter(@project.statistics.lfs_objects_size)
|
|
|
|
LFS
|
|
|
|
)
|
2013-12-19 10:15:48 -05:00
|
|
|
|
2013-04-01 11:16:08 -04:00
|
|
|
%li
|
|
|
|
%span.light last commit:
|
|
|
|
%strong
|
2013-03-25 05:07:11 -04:00
|
|
|
= last_commit(@project)
|
2016-08-24 18:08:23 -04:00
|
|
|
|
|
|
|
%li
|
2016-08-30 18:17:45 -04:00
|
|
|
%span.light Git LFS status:
|
2016-08-24 18:08:23 -04:00
|
|
|
%strong
|
|
|
|
= project_lfs_status(@project)
|
2016-08-30 18:17:45 -04:00
|
|
|
= link_to icon('question-circle'), help_page_path('workflow/lfs/manage_large_binaries_with_git_lfs')
|
2013-04-01 11:16:08 -04:00
|
|
|
- else
|
|
|
|
%li
|
|
|
|
%span.light repository:
|
|
|
|
%strong.cred
|
|
|
|
does not exist
|
2011-11-18 15:54:56 -05:00
|
|
|
|
2015-03-25 17:29:27 -04:00
|
|
|
- if @project.archived?
|
|
|
|
%li
|
|
|
|
%span.light archived:
|
2018-04-02 12:31:15 -04:00
|
|
|
%strong project is read-only
|
2015-03-25 17:29:27 -04:00
|
|
|
|
2013-03-25 05:07:11 -04:00
|
|
|
%li
|
|
|
|
%span.light access:
|
|
|
|
%strong
|
2013-11-06 10:13:21 -05:00
|
|
|
%span{ class: visibility_level_color(@project.visibility_level) }
|
|
|
|
= visibility_level_icon(@project.visibility_level)
|
|
|
|
= visibility_level_label(@project.visibility_level)
|
|
|
|
|
2018-10-01 22:50:48 -04:00
|
|
|
= render_if_exists 'admin/projects/geo_status_widget', locals: { project: @project }
|
|
|
|
|
2018-04-10 13:11:34 -04:00
|
|
|
.card
|
|
|
|
.card-header
|
2013-11-15 08:25:37 -05:00
|
|
|
Transfer project
|
2018-04-10 13:11:34 -04:00
|
|
|
.card-body
|
2018-04-12 16:11:22 -04:00
|
|
|
= form_for @project, url: transfer_admin_project_path(@project), method: :put do |f|
|
|
|
|
.form-group.row
|
2018-06-05 15:58:00 -04:00
|
|
|
= f.label :new_namespace_id, "Namespace", class: 'col-form-label col-sm-3'
|
|
|
|
.col-sm-9
|
2016-07-07 23:48:02 -04:00
|
|
|
.dropdown
|
2017-10-26 07:17:02 -04:00
|
|
|
= dropdown_toggle('Search for Namespace', { toggle: 'dropdown', field_name: 'new_namespace_id' }, { toggle_class: 'js-namespace-select large' })
|
2016-07-07 23:48:02 -04:00
|
|
|
.dropdown-menu.dropdown-select
|
|
|
|
= dropdown_title('Namespaces')
|
|
|
|
= dropdown_filter("Search for Namespace")
|
|
|
|
= dropdown_content
|
|
|
|
= dropdown_loading
|
2013-11-15 08:25:37 -05:00
|
|
|
|
2018-04-12 16:11:22 -04:00
|
|
|
.form-group.row
|
2018-06-05 15:58:00 -04:00
|
|
|
.offset-sm-3.col-sm-9
|
2013-11-15 08:25:37 -05:00
|
|
|
= f.submit 'Transfer', class: 'btn btn-primary'
|
|
|
|
|
2018-04-10 13:11:34 -04:00
|
|
|
.card.repository-check
|
|
|
|
.card-header
|
2016-04-06 07:47:05 -04:00
|
|
|
Repository check
|
2018-04-10 13:11:34 -04:00
|
|
|
.card-body
|
2017-06-29 13:06:35 -04:00
|
|
|
= form_for @project, url: repository_check_admin_project_path(@project), method: :post do |f|
|
2016-04-04 11:23:43 -04:00
|
|
|
.form-group
|
2016-04-06 07:47:05 -04:00
|
|
|
- if @project.last_repository_check_at.nil?
|
2016-04-04 11:23:43 -04:00
|
|
|
This repository has never been checked.
|
|
|
|
- else
|
|
|
|
This repository was last checked
|
2016-04-06 07:47:05 -04:00
|
|
|
= @project.last_repository_check_at.to_s(:medium) + '.'
|
2016-04-04 11:23:43 -04:00
|
|
|
The check
|
2016-04-06 07:47:05 -04:00
|
|
|
- if @project.last_repository_check_failed?
|
2016-04-04 11:23:43 -04:00
|
|
|
= succeed '.' do
|
|
|
|
%strong.cred failed
|
|
|
|
See
|
|
|
|
= link_to 'repocheck.log', admin_logs_path
|
|
|
|
for error messages.
|
|
|
|
- else
|
|
|
|
passed.
|
|
|
|
|
2016-05-16 18:06:26 -04:00
|
|
|
= link_to icon('question-circle'), help_page_path('administration/repository_checks')
|
2016-04-14 11:04:18 -04:00
|
|
|
|
2016-04-04 11:23:43 -04:00
|
|
|
.form-group
|
2016-04-06 07:47:05 -04:00
|
|
|
= f.submit 'Trigger repository check', class: 'btn btn-primary'
|
2016-04-04 11:23:43 -04:00
|
|
|
|
2013-12-30 16:55:15 -05:00
|
|
|
.col-md-6
|
2013-06-21 17:11:06 -04:00
|
|
|
- if @group
|
2018-04-10 13:11:34 -04:00
|
|
|
.card
|
|
|
|
.card-header
|
2016-06-20 09:50:46 -04:00
|
|
|
%strong= @group.name
|
|
|
|
group members
|
2018-04-09 12:33:41 -04:00
|
|
|
%span.badge.badge-pill= @group_members.size
|
2018-04-09 13:42:45 -04:00
|
|
|
.float-right
|
2018-04-12 17:13:36 -04:00
|
|
|
= link_to admin_group_path(@group), class: 'btn btn-sm' do
|
2017-04-04 18:36:19 -04:00
|
|
|
= icon('pencil-square-o', text: 'Manage access')
|
2018-05-29 16:00:13 -04:00
|
|
|
%ul.content-list.members-list
|
2016-06-27 10:20:57 -04:00
|
|
|
= render partial: 'shared/members/member', collection: @group_members, as: :member, locals: { show_controls: false }
|
2018-04-10 13:11:34 -04:00
|
|
|
.card-footer
|
2016-06-27 10:20:57 -04:00
|
|
|
= paginate @group_members, param_name: 'group_members_page', theme: 'gitlab'
|
2016-06-20 09:50:46 -04:00
|
|
|
|
2017-07-07 15:49:03 -04:00
|
|
|
= render 'shared/members/requests', membership_source: @project, requesters: @requesters, force_mobile_view: true
|
2013-06-21 17:11:06 -04:00
|
|
|
|
2018-04-10 13:11:34 -04:00
|
|
|
.card
|
|
|
|
.card-header
|
2016-06-20 09:50:46 -04:00
|
|
|
%strong= @project.name
|
|
|
|
project members
|
2018-04-09 12:33:41 -04:00
|
|
|
%span.badge.badge-pill= @project.users.size
|
2018-04-09 13:42:45 -04:00
|
|
|
.float-right
|
2018-10-16 06:14:26 -04:00
|
|
|
= link_to icon('pencil-square-o', text: 'Manage access'), project_project_members_path(@project), class: "btn btn-sm"
|
2018-05-29 16:00:13 -04:00
|
|
|
%ul.content-list.project_members.members-list
|
2016-06-27 10:20:57 -04:00
|
|
|
= render partial: 'shared/members/member', collection: @project_members, as: :member, locals: { show_controls: false }
|
2018-04-10 13:11:34 -04:00
|
|
|
.card-footer
|
2016-06-27 10:20:57 -04:00
|
|
|
= paginate @project_members, param_name: 'project_members_page', theme: 'gitlab'
|