From a8840ebd5252f9d87a322f246b66d58c3db5667c Mon Sep 17 00:00:00 2001 From: Pierre Date: Tue, 20 Oct 2020 16:09:31 +0200 Subject: [PATCH] SONAR-13978 validate gitlab alm settings --- .cirrus.yml | 9 +++- .../almsettings/AlmSettingsService.java | 11 +++++ .../client/almsettings/ValidateRequest.java | 43 +++++++++++++++++++ 3 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/ValidateRequest.java diff --git a/.cirrus.yml b/.cirrus.yml index 04d0c9fd239..664b8bfa902 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -226,7 +226,14 @@ qa_gitlab_task: memory: 5Gb env: # Creating a personnal access token from rails console for test purpuse (can't do through gitlab REST API) - GITLAB_POST_RECONFIGURE_SCRIPT: "gitlab-rails runner \"token = User.find_by_username('root').personal_access_tokens.create(scopes: [:api], name: 'token'); token.set_token('token-here-456'); token.save!\"" + GITLAB_POST_RECONFIGURE_SCRIPT: "gitlab-rails runner \" + token = User.find_by_username('root').personal_access_tokens.create(scopes: [:api], name: 'token'); + token.set_token('token-here-456'); + token.save!; + token_read = User.find_by_username('root').personal_access_tokens.create(scopes: [:read_api], name: 'token_read'); + token_read.set_token('token-read-123'); + token_read.save!; + \"" env: # No need to clone the full history. # Depth of 1 is not enough because it would fail the build in case of consecutive pushes diff --git a/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/AlmSettingsService.java b/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/AlmSettingsService.java index 3f7bc52032c..b12d6197b56 100644 --- a/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/AlmSettingsService.java +++ b/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/AlmSettingsService.java @@ -162,6 +162,17 @@ public class AlmSettingsService extends BaseService { AlmSettings.ListWsResponse.parser()); } + /** + * This is a GET request. + * @see Further information about this action online (including a response example) + * @since 8.6 + */ + public void validate(ValidateRequest request) { + call( + new GetRequest(path("validate")) + .setParam("key", request.getKey())); + } + /** * * This is a GET request. diff --git a/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/ValidateRequest.java b/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/ValidateRequest.java new file mode 100644 index 00000000000..6433199b200 --- /dev/null +++ b/sonar-ws/src/main/java/org/sonarqube/ws/client/almsettings/ValidateRequest.java @@ -0,0 +1,43 @@ +/* + * SonarQube + * Copyright (C) 2009-2020 SonarSource SA + * mailto:info AT sonarsource DOT com + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ +package org.sonarqube.ws.client.almsettings; + +import javax.annotation.Generated; + +/** + * This is part of the internal API. + * This is a POST request. + * @see Further information about this action online (including a response example) + * @since 8.6 + */ +@Generated("sonar-ws-generator") +public class ValidateRequest { + + private String key; + + public String getKey() { + return key; + } + + public ValidateRequest setKey(String key) { + this.key = key; + return this; + } +} -- 2.39.5