From: Wouter Admiraal Date: Tue, 15 Jun 2021 08:52:57 +0000 (+0200) Subject: SONAR-14942 Improve Pull Request Decoration form if no DevOps Platforms are configured X-Git-Tag: 9.0.0.45539~67 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=1961c51ec9812e88d7a8cf2a2a76c32d612f3da9;p=sonarqube.git SONAR-14942 Improve Pull Request Decoration form if no DevOps Platforms are configured --- diff --git a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/PRDecorationBindingRenderer.tsx b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/PRDecorationBindingRenderer.tsx index 84567b02dbc..f5f60aef774 100644 --- a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/PRDecorationBindingRenderer.tsx +++ b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/PRDecorationBindingRenderer.tsx @@ -92,17 +92,21 @@ export default function PRDecorationBindingRenderer(props: PRDecorationBindingRe return (
- - {translate('learn_more')} - - ) - }} - /> + {isSysAdmin ? ( + + {translate('settings.pr_decoration.binding.no_bindings.link')} + + ) + }} + /> + ) : ( + translate('settings.pr_decoration.binding.no_bindings') + )}
); diff --git a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/PRDecorationBindingRenderer-test.tsx b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/PRDecorationBindingRenderer-test.tsx index c5d75501023..fe8d6b8ba50 100644 --- a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/PRDecorationBindingRenderer-test.tsx +++ b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/PRDecorationBindingRenderer-test.tsx @@ -60,7 +60,8 @@ const configurationErrors: ProjectAlmBindingConfigurationErrors = { it.each([ ['when loading', { loading: true }], - ['with no ALM instances', {}], + ['with no ALM instances (admin user)', { isSysAdmin: true }], + ['with no ALM instances (non-admin user)', {}], ['with a single ALM instance', { instances: [instances[0]] }], ['with an empty form', { instances }], [ diff --git a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/__snapshots__/PRDecorationBindingRenderer-test.tsx.snap b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/__snapshots__/PRDecorationBindingRenderer-test.tsx.snap index 0f8a8303629..9325336b54a 100644 --- a/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/__snapshots__/PRDecorationBindingRenderer-test.tsx.snap +++ b/server/sonar-web/src/main/js/apps/settings/components/pullRequestDecorationBinding/__tests__/__snapshots__/PRDecorationBindingRenderer-test.tsx.snap @@ -909,23 +909,30 @@ exports[`should render correctly: with an empty form 1`] = ` `; -exports[`should render correctly: with no ALM instances 1`] = ` +exports[`should render correctly: with no ALM instances (admin user) 1`] = `
- learn_more + settings.pr_decoration.binding.no_bindings.link , } } @@ -934,6 +941,17 @@ exports[`should render correctly: with no ALM instances 1`] = `
`; +exports[`should render correctly: with no ALM instances (non-admin user) 1`] = ` +
+ + settings.pr_decoration.binding.no_bindings + +
+`; + exports[`should render select options correctly 1`] = ` diff --git a/sonar-core/src/main/resources/org/sonar/l10n/core.properties b/sonar-core/src/main/resources/org/sonar/l10n/core.properties index 5cfc020d017..7cda8e3cd0c 100644 --- a/sonar-core/src/main/resources/org/sonar/l10n/core.properties +++ b/sonar-core/src/main/resources/org/sonar/l10n/core.properties @@ -1169,7 +1169,9 @@ settings.almintegration.feature.alm_repo_import.disabled.multiple=This feature i settings.almintegration.feature.alm_repo_import.disabled.no_url=This feature is disabled because your configured instance has no URL. settings.pr_decoration.binding.category=DevOps Platform Integration -settings.pr_decoration.binding.no_bindings=This feature must first be enabled in the global settings. {link} +settings.pr_decoration.binding.no_bindings=A system administrator needs to enable this feature in the global settings. +settings.pr_decoration.binding.no_bindings.admin=Set up a {link} first before you and your team can enable Pull Request Decoration. +settings.pr_decoration.binding.no_bindings.link=global configuration settings.pr_decoration.binding.title=DevOps Platform Integration settings.pr_decoration.binding.description=Display your Quality Gate status directly in your DevOps Platform. settings.pr_decoration.binding.check_configuration=Check configuration