Merge branch 'main' of github.com:eclipse-che/che-server into che#21753

pull/494/head
Aleksandr Shmaraiev 2023-04-19 11:01:41 +03:00
commit ae1a430dae
12 changed files with 12 additions and 62 deletions

View File

@ -59,7 +59,6 @@ public class KubernetesPersonalAccessTokenManager implements PersonalAccessToken
public static final String NAME_PATTERN = "personal-access-token-";
public static final String ANNOTATION_CHE_USERID = "che.eclipse.org/che-userid";
public static final String ANNOTATION_SCM_USERID = "che.eclipse.org/scm-userid";
public static final String ANNOTATION_SCM_USERNAME = "che.eclipse.org/scm-username";
public static final String ANNOTATION_SCM_ORGANIZATION = "che.eclipse.org/scm-organization";
public static final String ANNOTATION_SCM_PERSONAL_ACCESS_TOKEN_ID =
@ -97,7 +96,6 @@ public class KubernetesPersonalAccessTokenManager implements PersonalAccessToken
.withAnnotations(
new ImmutableMap.Builder<String, String>()
.put(ANNOTATION_CHE_USERID, personalAccessToken.getCheUserId())
.put(ANNOTATION_SCM_USERID, personalAccessToken.getScmUserId())
.put(ANNOTATION_SCM_USERNAME, personalAccessToken.getScmUserName())
.put(ANNOTATION_SCM_URL, personalAccessToken.getScmProviderUrl())
.put(
@ -180,7 +178,6 @@ public class KubernetesPersonalAccessTokenManager implements PersonalAccessToken
annotations.get(ANNOTATION_CHE_USERID),
annotations.get(ANNOTATION_SCM_ORGANIZATION),
annotations.get(ANNOTATION_SCM_USERNAME),
annotations.get(ANNOTATION_SCM_USERID),
annotations.get(ANNOTATION_SCM_PERSONAL_ACCESS_TOKEN_NAME),
annotations.get(ANNOTATION_SCM_PERSONAL_ACCESS_TOKEN_ID),
token);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012-2021 Red Hat, Inc.
* Copyright (c) 2012-2023 Red Hat, Inc.
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
@ -93,13 +93,7 @@ public class KubernetesGitCredentialManagerTest {
PersonalAccessToken token =
new PersonalAccessToken(
"https://bitbucket.com",
"cheUser",
"username",
"userId",
"token-name",
"tid-23434",
"token123");
"https://bitbucket.com", "cheUser", "username", "token-name", "tid-23434", "token123");
// when
kubernetesGitCredentialManager.createOrReplace(token);
@ -132,7 +126,6 @@ public class KubernetesGitCredentialManagerTest {
"https://bitbucket.com",
"cheUser",
"username",
"userId",
"oauth2-token-name",
"tid-23434",
"token123");
@ -158,7 +151,6 @@ public class KubernetesGitCredentialManagerTest {
"https://bitbucket.com:5648",
"cheUser",
"username",
"userId",
"token-name",
"tid-23434",
"token123");

View File

@ -130,13 +130,7 @@ public class KubernetesPersonalAccessTokenManagerTest {
PersonalAccessToken token =
new PersonalAccessToken(
"https://bitbucket.com",
"cheUser",
"username",
"userId",
"token-name",
"tid-24",
"token123");
"https://bitbucket.com", "cheUser", "username", "token-name", "tid-24", "token123");
// when
personalAccessTokenManager.save(token);

View File

@ -87,7 +87,6 @@ public class AzureDevOpsPersonalAccessTokenFetcher implements PersonalAccessToke
scmServerUrl,
cheSubject.getUserId(),
user.getEmailAddress(),
user.getId(),
NameGenerator.generate(OAUTH_2_PREFIX, 5),
NameGenerator.generate("id-", 5),
oAuthToken.getToken());
@ -144,7 +143,7 @@ public class AzureDevOpsPersonalAccessTokenFetcher implements PersonalAccessToke
azureDevOpsApiClient.getUserWithPAT(
personalAccessToken.getToken(), personalAccessToken.getScmOrganization());
}
return Optional.of(personalAccessToken.getScmUserId().equals(user.getId()));
return Optional.of(personalAccessToken.getScmUserName().equals(user.getEmailAddress()));
} catch (ScmItemNotFoundException | ScmCommunicationException | ScmBadRequestException e) {
return Optional.of(Boolean.FALSE);
}

View File

@ -57,7 +57,7 @@ public class AzureDevOpsPersonalAccessTokenFetcherTest {
public void fetchPersonalAccessTokenShouldReturnToken() throws Exception {
when(oAuthAPI.getToken(AzureDevOps.PROVIDER_NAME)).thenReturn(oAuthToken);
when(azureDevOpsApiClient.getUserWithOAuthToken(any())).thenReturn(azureDevOpsUser);
when(azureDevOpsUser.getId()).thenReturn("user-id");
when(azureDevOpsUser.getEmailAddress()).thenReturn("user-email");
PersonalAccessToken personalAccessToken =
personalAccessTokenFetcher.fetchPersonalAccessToken(

View File

@ -90,7 +90,6 @@ public class BitbucketPersonalAccessTokenFetcher implements PersonalAccessTokenF
scmServerUrl,
cheSubject.getUserId(),
user.getName(),
user.getId(),
NameGenerator.generate(OAUTH_PROVIDER_NAME, 5),
NameGenerator.generate("id-", 5),
oAuthToken.getToken());

View File

@ -87,7 +87,6 @@ public class BitbucketPersonalAccessTokenFetcherTest {
"https://bitbucket.org/",
"cheUserId",
"scmUserName",
"scmUserId",
"scmTokenName",
"scmTokenId",
bitbucketOauthToken);
@ -169,7 +168,6 @@ public class BitbucketPersonalAccessTokenFetcherTest {
"https://bitbucket.org",
"cheUser",
"username",
"123456789",
"token-name",
"tid-23434",
bitbucketOauthToken);
@ -194,7 +192,6 @@ public class BitbucketPersonalAccessTokenFetcherTest {
"https://bitbucket.org",
"cheUser",
"username",
"123456789",
OAUTH_2_PREFIX + "-token-name",
"tid-23434",
bitbucketOauthToken);
@ -211,7 +208,6 @@ public class BitbucketPersonalAccessTokenFetcherTest {
"https://bitbucket.org",
"cheUser",
"username",
"123456789",
OAUTH_2_PREFIX + "-token-name",
"tid-23434",
bitbucketOauthToken);

View File

@ -157,7 +157,6 @@ public class GithubPersonalAccessTokenFetcher implements PersonalAccessTokenFetc
scmServerUrl,
cheSubject.getUserId(),
user.getLogin(),
Long.toString(user.getId()),
NameGenerator.generate(OAUTH_2_PREFIX, 5),
NameGenerator.generate("id-", 5),
oAuthToken.getToken());
@ -212,7 +211,7 @@ public class GithubPersonalAccessTokenFetcher implements PersonalAccessTokenFetc
} else {
// No REST API for PAT-s in Github found yet. Just try to do some action.
GithubUser user = githubApiClient.getUser(personalAccessToken.getToken());
if (personalAccessToken.getScmUserId().equals(Long.toString(user.getId()))) {
if (personalAccessToken.getScmUserName().equals(user.getLogin())) {
return Optional.of(Boolean.TRUE);
} else {
return Optional.of(Boolean.FALSE);

View File

@ -91,7 +91,6 @@ public class GithubPersonalAccessTokenFetcherTest {
"https://github.com/",
"cheUserId",
"scmUserName",
"scmUserId",
"scmTokenName",
"scmTokenId",
githubOauthToken);
@ -203,8 +202,7 @@ public class GithubPersonalAccessTokenFetcherTest {
new PersonalAccessToken(
wireMockServer.url("/"),
"cheUser",
"username",
"123456789",
"github-user",
"token-name",
"tid-23434",
githubOauthToken);
@ -230,7 +228,6 @@ public class GithubPersonalAccessTokenFetcherTest {
wireMockServer.url("/"),
"cheUser",
"username",
"123456789",
OAUTH_2_PREFIX + "-token-name",
"tid-23434",
githubOauthToken);
@ -247,7 +244,6 @@ public class GithubPersonalAccessTokenFetcherTest {
wireMockServer.url("/"),
"cheUser",
"username",
"123456789",
OAUTH_2_PREFIX + "-token-name",
"tid-23434",
githubOauthToken);

View File

@ -111,7 +111,6 @@ public class GitlabOAuthTokenFetcher implements PersonalAccessTokenFetcher {
scmServerUrl,
cheSubject.getUserId(),
user.getUsername(),
Long.toString(user.getId()),
NameGenerator.generate(OAUTH_2_PREFIX, 5),
NameGenerator.generate("id-", 5),
oAuthToken.getToken());
@ -171,7 +170,7 @@ public class GitlabOAuthTokenFetcher implements PersonalAccessTokenFetcher {
// latest GitLab version, we just perform check by accessing something from API.
try {
GitlabUser user = gitlabApiClient.getUser(personalAccessToken.getToken());
if (personalAccessToken.getScmUserId().equals(Long.toString(user.getId()))) {
if (personalAccessToken.getScmUserName().equals(user.getUsername())) {
return Optional.of(Boolean.TRUE);
} else {
return Optional.of(Boolean.FALSE);

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2012-2021 Red Hat, Inc.
* Copyright (c) 2012-2023 Red Hat, Inc.
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
@ -170,8 +170,7 @@ public class GitlabOAuthTokenFetcherTest {
new PersonalAccessToken(
wireMockServer.baseUrl(),
"cheUser",
"username",
"1",
"john_smith",
"token-name",
"tid-23434",
"token123");

View File

@ -26,7 +26,6 @@ public class PersonalAccessToken {
/** Organization that user belongs to. Can be null if user is not a member of any organization. */
@Nullable private final String scmOrganization;
private final String scmUserId;
private final String scmTokenName;
private final String scmTokenId;
private final String token;
@ -37,14 +36,12 @@ public class PersonalAccessToken {
String cheUserId,
String scmOrganization,
String scmUserName,
String scmUserId,
String scmTokenName,
String scmTokenId,
String token) {
this.scmProviderUrl = scmProviderUrl;
this.scmOrganization = scmOrganization;
this.scmUserName = scmUserName;
this.scmUserId = scmUserId;
this.scmTokenName = scmTokenName;
this.scmTokenId = scmTokenId;
this.token = token;
@ -55,11 +52,10 @@ public class PersonalAccessToken {
String scmProviderUrl,
String cheUserId,
String scmUserName,
String scmUserId,
String scmTokenName,
String scmTokenId,
String token) {
this(scmProviderUrl, cheUserId, null, scmUserName, scmUserId, scmTokenName, scmTokenId, token);
this(scmProviderUrl, cheUserId, null, scmUserName, scmTokenName, scmTokenId, token);
}
public PersonalAccessToken(String scmProviderUrl, String scmUserName, String token) {
@ -70,7 +66,6 @@ public class PersonalAccessToken {
scmUserName,
null,
null,
null,
token);
}
@ -90,10 +85,6 @@ public class PersonalAccessToken {
return scmUserName;
}
public String getScmUserId() {
return scmUserId;
}
public String getToken() {
return token;
}
@ -115,7 +106,6 @@ public class PersonalAccessToken {
return Objects.equal(scmProviderUrl, that.scmProviderUrl)
&& Objects.equal(scmUserName, that.scmUserName)
&& Objects.equal(scmOrganization, that.scmOrganization)
&& Objects.equal(scmUserId, that.scmUserId)
&& Objects.equal(scmTokenName, that.scmTokenName)
&& Objects.equal(scmTokenId, that.scmTokenId)
&& Objects.equal(token, that.token)
@ -125,14 +115,7 @@ public class PersonalAccessToken {
@Override
public int hashCode() {
return Objects.hashCode(
scmProviderUrl,
scmUserName,
scmOrganization,
scmUserId,
scmTokenName,
scmTokenId,
token,
cheUserId);
scmProviderUrl, scmUserName, scmOrganization, scmTokenName, scmTokenId, token, cheUserId);
}
@Override
@ -147,9 +130,6 @@ public class PersonalAccessToken {
+ ", scmOrganization='"
+ scmOrganization
+ '\''
+ ", scmUserId='"
+ scmUserId
+ '\''
+ ", scmTokenName='"
+ scmTokenName
+ '\''