2020-07-28 23:09:34 +05:30
- breadcrumb_title _("Dashboard")
- page_title _("Dashboard")
2021-01-29 00:20:46 +05:30
- billable_users_url = help_page_path('subscriptions/self_managed/index', anchor: 'billable-users')
- billable_users_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer nofollow">'.html_safe % { url: billable_users_url }
2015-09-11 14:41:01 +05:30
2022-01-26 12:08:38 +05:30
= render_if_exists 'shared/manual_quarterly_reconciliation_banner'
2022-07-23 23:45:48 +05:30
= render_if_exists 'shared/submit_license_usage_data_banner'
2021-09-30 23:02:18 +05:30
= render_if_exists 'shared/qrtly_reconciliation_alert'
2021-11-18 22:05:49 +05:30
= render 'admin/dashboard/security_newsletter_callout'
2021-09-30 23:02:18 +05:30
2020-04-08 14:13:33 +05:30
- if @notices
- @notices.each do |notice|
.js-vue-alert{ 'v-cloak': true, data: { variant: notice[:type],
dismissible: true.to_s } }
= notice[:message].html_safe
2021-02-22 17:27:13 +05:30
- if @license.present?
2021-01-29 00:20:46 +05:30
.license-panel.gl-mt-5
= render_if_exists 'admin/licenses/summary'
= render_if_exists 'admin/licenses/breakdown'
2020-10-24 23:57:45 +05:30
2020-07-28 23:09:34 +05:30
.admin-dashboard.gl-mt-3
2021-03-11 19:13:27 +05:30
.h3.gl-mb-5.gl-mt-0= _('Instance overview')
2019-12-04 20:38:33 +05:30
.row
2022-07-23 23:45:48 +05:30
- component_params = { body_options: { class: 'gl-display-flex gl-justify-content-space-between gl-align-items-center gl-p-6' },
footer_options: { class: 'gl-bg-transparent'} }
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new(**component_params) do |c|
= c.body do
2021-03-11 19:13:27 +05:30
%span
.d-flex.align-items-center
= sprite_icon('project', size: 16, css_class: 'gl-text-gray-700')
%h3.gl-m-0.gl-ml-3= approximate_count_with_delimiters(@counts, Project)
.gl-mt-3.text-uppercase= s_('AdminArea|Projects')
= link_to(s_('AdminArea|New project'), new_project_path, class: "btn gl-button btn-default")
2022-07-23 23:45:48 +05:30
= c.footer do
2021-03-11 19:13:27 +05:30
.d-flex.align-items-center
2022-11-25 23:54:43 +05:30
= link_to(s_('AdminArea|View latest projects'), admin_projects_path(sort: 'created_desc'))
2022-07-23 23:45:48 +05:30
= sprite_icon('chevron-right', size: 12, css_class: 'gl-text-gray-700 gl-ml-2')
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new(**component_params) do |c|
= c.body do
2021-03-11 19:13:27 +05:30
%span
.d-flex.align-items-center
= sprite_icon('users', size: 16, css_class: 'gl-text-gray-700')
%h3.gl-m-0.gl-ml-3= approximate_count_with_delimiters(@counts, User)
%span.gl-outline-0.gl-ml-3{ tabindex: "0", data: { container: "body",
toggle: "popover",
placement: "top",
html: "true",
trigger: "focus",
content: s_("AdminArea|All users created in the instance, including users who are not %{billable_users_link_start}billable users%{billable_users_link_end}.").html_safe % { billable_users_link_start: billable_users_link_start, billable_users_link_end: '</a>'.html_safe },
} }
2021-06-08 01:23:25 +05:30
= sprite_icon('question-o', size: 16, css_class: 'gl-text-blue-600')
2021-03-11 19:13:27 +05:30
.gl-mt-3.text-uppercase
= s_('AdminArea|Users')
= link_to(s_('AdminArea|Users statistics'), admin_dashboard_stats_path, class: "text-capitalize gl-ml-2")
= link_to(s_('AdminArea|New user'), new_admin_user_path, class: "btn gl-button btn-default")
2022-07-23 23:45:48 +05:30
= c.footer do
2021-03-11 19:13:27 +05:30
.d-flex.align-items-center
2022-08-27 11:52:29 +05:30
= link_to(s_('AdminArea|View latest users'), admin_users_path({ sort: 'created_desc' }))
2022-07-23 23:45:48 +05:30
= sprite_icon('chevron-right', size: 12, css_class: 'gl-text-gray-700 gl-ml-2')
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new(**component_params) do |c|
= c.body do
2021-03-11 19:13:27 +05:30
%span
.d-flex.align-items-center
= sprite_icon('group', size: 16, css_class: 'gl-text-gray-700')
%h3.gl-m-0.gl-ml-3= approximate_count_with_delimiters(@counts, Group)
2021-04-17 20:07:23 +05:30
.gl-mt-3.text-uppercase= s_('AdminArea|Groups')
2021-03-11 19:13:27 +05:30
= link_to(s_('AdminArea|New group'), new_admin_group_path, class: "btn gl-button btn-default")
2022-07-23 23:45:48 +05:30
= c.footer do
2021-03-11 19:13:27 +05:30
.d-flex.align-items-center
2022-11-25 23:54:43 +05:30
= link_to(s_('AdminArea|View latest groups'), admin_groups_path(sort: 'created_desc'))
2022-07-23 23:45:48 +05:30
= sprite_icon('chevron-right', size: 12, css_class: 'gl-text-gray-700 gl-ml-2')
2019-12-04 20:38:33 +05:30
.row
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2019-12-04 20:38:33 +05:30
#js-admin-statistics-container
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new do |c|
= c.body do
2020-11-24 15:15:51 +05:30
%h4= s_('AdminArea|Features')
2019-12-26 22:10:19 +05:30
= feature_entry(_('Sign up'),
2020-03-13 15:44:24 +05:30
href: general_admin_application_settings_path(anchor: 'js-signup-settings'),
2019-12-26 22:10:19 +05:30
enabled: allow_signup?)
= feature_entry(_('LDAP'),
2020-01-01 13:55:28 +05:30
enabled: Gitlab.config.ldap.enabled,
2021-01-03 14:25:43 +05:30
doc_href: help_page_path('administration/auth/ldap/index.md'))
2019-12-26 22:10:19 +05:30
= feature_entry(_('Gravatar'),
2020-03-13 15:44:24 +05:30
href: general_admin_application_settings_path(anchor: 'js-account-settings'),
2019-12-26 22:10:19 +05:30
enabled: gravatar_enabled?)
= feature_entry(_('OmniAuth'),
2020-03-13 15:44:24 +05:30
href: general_admin_application_settings_path(anchor: 'js-signin-settings'),
2020-01-01 13:55:28 +05:30
enabled: Gitlab::Auth.omniauth_enabled?,
doc_href: help_page_path('integration/omniauth'))
2019-12-26 22:10:19 +05:30
= feature_entry(_('Reply by email'),
2020-01-01 13:55:28 +05:30
enabled: Gitlab::IncomingEmail.enabled?,
doc_href: help_page_path('administration/reply_by_email'))
2018-11-08 19:23:39 +05:30
2019-12-04 20:38:33 +05:30
= render_if_exists 'admin/dashboard/elastic_and_geo'
2018-11-08 19:23:39 +05:30
2019-12-26 22:10:19 +05:30
= feature_entry(_('Container Registry'),
href: ci_cd_admin_application_settings_path(anchor: 'js-registry-settings'),
enabled: Gitlab.config.registry.enabled,
doc_href: help_page_path('user/packages/container_registry/index'))
2021-04-29 21:17:54 +05:30
= feature_entry(_('GitLab Pages'),
2019-12-26 22:10:19 +05:30
enabled: Gitlab.config.pages.enabled,
doc_href: help_instance_configuration_url)
= feature_entry(_('Shared Runners'),
href: admin_runners_path,
enabled: Gitlab.config.gitlab_ci.shared_runners_enabled)
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new do |c|
= c.body do
2019-12-04 20:38:33 +05:30
%h4
2020-11-24 15:15:51 +05:30
= s_('AdminArea|Components')
2022-03-02 08:16:31 +05:30
- if show_version_check?
2019-12-04 20:38:33 +05:30
.float-right
2022-03-02 08:16:31 +05:30
.js-gitlab-version-check{ data: { "size": "lg" } }
2021-10-27 15:23:28 +05:30
= link_to(sprite_icon('question'), "https://gitlab.com/gitlab-org/gitlab/-/blob/master/CHANGELOG.md", class: 'gl-ml-2', target: '_blank', rel: 'noopener noreferrer')
2019-12-04 20:38:33 +05:30
%p
2020-11-24 15:15:51 +05:30
= link_to _('GitLab'), general_admin_application_settings_path
2019-12-04 20:38:33 +05:30
%span.float-right
2021-04-29 21:17:54 +05:30
= link_to_version
2019-12-04 20:38:33 +05:30
%p
2020-11-24 15:15:51 +05:30
= _('GitLab Shell')
2019-12-04 20:38:33 +05:30
%span.float-right
2020-04-08 14:13:33 +05:30
= Gitlab::Shell.version
2019-12-04 20:38:33 +05:30
%p
2020-11-24 15:15:51 +05:30
= _('GitLab Workhorse')
2019-12-04 20:38:33 +05:30
%span.float-right
= gitlab_workhorse_version
%p
2020-11-24 15:15:51 +05:30
= _('GitLab API')
2019-12-04 20:38:33 +05:30
%span.float-right
= API::API::version
- if Gitlab.config.pages.enabled
%p
2020-11-24 15:15:51 +05:30
= _('GitLab Pages')
2018-11-08 19:23:39 +05:30
%span.float-right
2019-12-04 20:38:33 +05:30
= Gitlab::Pages::VERSION
2022-04-04 11:22:00 +05:30
- if Gitlab::Kas.enabled?
%p
= _('GitLab KAS')
%span.gl-float-right
= Gitlab::Kas.version
2018-11-08 19:23:39 +05:30
2019-12-04 20:38:33 +05:30
= render_if_exists 'admin/dashboard/geo'
2018-11-08 19:23:39 +05:30
2019-12-04 20:38:33 +05:30
%p
2020-11-24 15:15:51 +05:30
= _('Ruby')
2019-12-04 20:38:33 +05:30
%span.float-right
#{RUBY_VERSION}p#{RUBY_PATCHLEVEL}
%p
2020-11-24 15:15:51 +05:30
= _('Rails')
2019-12-04 20:38:33 +05:30
%span.float-right
#{Rails::VERSION::STRING}
%p
2021-12-11 22:18:48 +05:30
= ApplicationRecord.database.human_adapter_name
2019-12-04 20:38:33 +05:30
%span.float-right
2021-12-11 22:18:48 +05:30
= ApplicationRecord.database.version
2021-01-29 00:20:46 +05:30
%p
= _('Redis')
%span.float-right
= @redis_versions&.join(", ")
2019-12-04 20:38:33 +05:30
%p
2020-11-24 15:15:51 +05:30
= link_to _("Gitaly Servers"), admin_gitaly_servers_path
2019-12-04 20:38:33 +05:30
.row
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new do |c|
= c.body do
2020-11-24 15:15:51 +05:30
%h4= s_('AdminArea|Latest projects')
2019-12-04 20:38:33 +05:30
- @projects.each do |project|
2021-04-29 21:17:54 +05:30
.gl-display-flex.gl-py-3
.gl-mr-auto.gl-overflow-hidden.gl-text-overflow-ellipsis
= link_to project.full_name, admin_project_path(project)
%span.gl-white-space-nowrap.gl-text-right
2019-12-04 20:38:33 +05:30
#{time_ago_with_tooltip(project.created_at)}
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new do |c|
= c.body do
2020-11-24 15:15:51 +05:30
%h4= s_('AdminArea|Latest users')
2019-12-04 20:38:33 +05:30
- @users.each do |user|
2021-04-29 21:17:54 +05:30
.gl-display-flex.gl-py-3
.gl-mr-auto.gl-overflow-hidden.gl-text-overflow-ellipsis
= link_to [:admin, user] do
= user.name
%span.gl-white-space-nowrap.gl-text-right
2019-12-04 20:38:33 +05:30
#{time_ago_with_tooltip(user.created_at)}
2021-03-11 19:13:27 +05:30
.col-md-4.gl-mb-6
2022-07-23 23:45:48 +05:30
= render Pajamas::CardComponent.new do |c|
= c.body do
2020-11-24 15:15:51 +05:30
%h4= s_('AdminArea|Latest groups')
2019-12-04 20:38:33 +05:30
- @groups.each do |group|
2021-04-29 21:17:54 +05:30
.gl-display-flex.gl-py-3
.gl-mr-auto.gl-overflow-hidden.gl-text-overflow-ellipsis
= link_to [:admin, group] do
= group.full_name
%span.gl-white-space-nowrap.gl-text-right
2019-12-04 20:38:33 +05:30
#{time_ago_with_tooltip(group.created_at)}