Browse Source

SONAR-21880 Fix SSF-569

tags/10.5.0.89998
Bogdana 1 month ago
parent
commit
8df57f7c51

+ 1
- 1
server/sonar-web/src/main/js/apps/settings/components/almIntegration/BitbucketServerForm.tsx View File

@@ -51,7 +51,7 @@ export default function BitbucketServerForm(props: BitbucketServerFormProps) {
{translate('settings.almintegration.form.url.bitbucket.help')}
<br />
<br />
{translate('settings.almintegration.form.url.bitbucket.pat_warning')}
{translate('settings.almintegration.form.url.pat_warning')}
</>
}
id="url.bitbucket"

+ 3
- 0
server/sonar-web/src/main/js/apps/settings/components/almIntegration/GitlabForm.tsx View File

@@ -51,6 +51,9 @@ export default function GitlabForm(props: GitlabFormProps) {
{translate('settings.almintegration.form.url.gitlab.help')}
<br />
<em>https://gitlab.com/api/v4</em>
<br />
<br />
{translate('settings.almintegration.form.url.pat_warning')}
</>
}
id="url.gitlab"

+ 8
- 8
server/sonar-webserver-webapi/src/it/java/org/sonar/server/almsettings/ws/UpdateGitlabActionIT.java View File

@@ -78,7 +78,7 @@ public class UpdateGitlabActionIT {
}

@Test
public void update_with_url() {
public void update_with_url_needs_pat() {
UserDto user = db.users().insertUser();
userSession.logIn(user).setSystemAdministrator();

@@ -114,19 +114,19 @@ public class UpdateGitlabActionIT {
}

@Test
public void update_without_pat() {
public void fail_when_url_updated_without_pat() {
UserDto user = db.users().insertUser();
userSession.logIn(user).setSystemAdministrator();

AlmSettingDto almSettingDto = db.almSettings().insertGitlabAlmSetting();

ws.newRequest()
TestRequest request = ws.newRequest()
.setParam("key", almSettingDto.getKey())
.setParam("url", GITLAB_URL)
.execute();
assertThat(db.getDbClient().almSettingDao().selectAll(db.getSession()))
.extracting(AlmSettingDto::getKey, AlmSettingDto::getUrl, s -> s.getDecryptedPersonalAccessToken(encryption))
.containsOnly(tuple(almSettingDto.getKey(), GITLAB_URL, almSettingDto.getDecryptedPersonalAccessToken(encryption)));
.setParam("url", GITLAB_URL);
assertThatThrownBy(() -> request.execute())
.isInstanceOf(IllegalArgumentException.class)
.hasMessage("Please provide the Personal Access Token to update the URL.");
}

@Test

+ 2
- 0
server/sonar-webserver-webapi/src/main/java/org/sonar/server/almsettings/ws/UpdateGitlabAction.java View File

@@ -96,6 +96,8 @@ public class UpdateGitlabAction implements AlmSettingsWsAction {
almSettingsSupport.checkAlmSettingDoesNotAlreadyExist(dbSession, newKey);
}

almSettingsSupport.checkPatOnUrlUpdate(almSettingDto, url, pat);

if (isNotBlank(pat)) {
almSettingDto.setPersonalAccessToken(pat);
}

+ 1
- 1
sonar-core/src/main/resources/org/sonar/l10n/core.properties View File

@@ -1457,13 +1457,13 @@ settings.almintegration.form.url.azure.help1=For Azure DevOps Server, provide th
settings.almintegration.form.url.azure.help2=For Azure DevOps Services, provide the full organization URL:
settings.almintegration.form.url.bitbucket=Bitbucket Server URL
settings.almintegration.form.url.bitbucket.help=Example: https://bitbucket-server.your-company.com
settings.almintegration.form.url.bitbucket.pat_warning=For security reasons, please make sure to provide the Personal Access Token to update the URL.
settings.almintegration.form.url.github=GitHub API URL
settings.almintegration.form.url.github.help1=Example for GitHub Enterprise:
settings.almintegration.form.url.github.help2=If using GitHub.com:
settings.almintegration.form.url.github.private_key_warning=For security reasons, please make sure to provide the GitHub App private key to update the URL.
settings.almintegration.form.url.gitlab=GitLab API URL
settings.almintegration.form.url.gitlab.help=Provide the GitLab API URL. For example:
settings.almintegration.form.url.pat_warning=For security reasons, please make sure to provide the Personal Access Token to update the URL.
settings.almintegration.form.app_id=GitHub App ID
settings.almintegration.form.client_id.github=Client ID
settings.almintegration.form.client_id.github.help=The Client ID is found on your GitHub App's page.

Loading…
Cancel
Save