underTest.insert(dbSession, mapping2);
underTest.insert(dbSession, mapping3);
- Set<DevOpsPermissionsMappingDto> forRole2 = underTest.findAllForRole(dbSession, DEV_OPS_PLATFORM, "GH_role2");
+ Set<DevOpsPermissionsMappingDto> forRole2 = underTest.findAllForDevopsRole(dbSession, DEV_OPS_PLATFORM, "GH_role2");
assertThat(forRole2).hasSize(2)
.containsExactlyInAnyOrder(mapping2, mapping3);
return mapper(dbSession).selectAll(devOpsPlatform);
}
- public Set<DevOpsPermissionsMappingDto> findAllForRole(DbSession dbSession, String devOpsPlatform, String role) {
+ public Set<DevOpsPermissionsMappingDto> findAllForDevopsRole(DbSession dbSession, String devOpsPlatform, String role) {
return mapper(dbSession).selectAllForRole(devOpsPlatform, role);
}
import org.sonar.db.MigrationDbTester;
import static java.sql.Types.VARCHAR;
-import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
+import static org.assertj.core.api.Assertions.assertThat;
import static org.sonar.server.platform.db.migration.version.v107.AddDevopsPlatformColumnInDevopsPermsMapping.DEVOPS_PLATFORM_COLUMN_NAME;
import static org.sonar.server.platform.db.migration.version.v107.AddDevopsPlatformColumnInDevopsPermsMapping.DEFAULT_COLUMN_VALUE;
import static org.sonar.server.platform.db.migration.version.v107.RenameGithubPermsMappingTable.DEVOPS_PERMS_MAPPING_TABLE_NAME;
private void assertDevopsPlatformColumnSetToDefault() {
Map<String, Object> selectResult = db.selectFirst("select devops_platform from devops_perms_mapping where uuid = 'UUID'");
- assertThat(selectResult.get("devops_platform")).isEqualTo(DEFAULT_COLUMN_VALUE);
+ assertThat(selectResult).containsEntry("devops_platform", DEFAULT_COLUMN_VALUE);
}
private void assertColumnExists() {
import org.junit.jupiter.api.extension.RegisterExtension;
import org.sonar.api.testfixtures.log.LogTesterJUnit5;
import org.sonar.core.util.UuidFactoryFast;
+import org.sonar.core.util.UuidFactoryImpl;
import org.sonar.db.MigrationDbTester;
import static org.assertj.core.api.Assertions.assertThat;
@RegisterExtension
public final LogTesterJUnit5 logTester = new LogTesterJUnit5();
- private final PopulateGitlabDevOpsPermissionsMapping migration = new PopulateGitlabDevOpsPermissionsMapping(db.database(), UuidFactoryFast.getInstance());
+ private final PopulateGitlabDevOpsPermissionsMapping migration = new PopulateGitlabDevOpsPermissionsMapping(db.database(), UuidFactoryImpl.INSTANCE);
@Test
void execute_whenTableIsEmpty_shouldPopulate() throws SQLException {
@Test
void execute_whenTableAlreadyPopulated_doesNothing() throws SQLException {
db.executeInsert(DEVOPS_PERMS_MAPPING_TABLE_NAME,
- "UUID", UuidFactoryFast.getInstance().create(),
+ "UUID", UuidFactoryImpl.INSTANCE.create(),
"devops_platform", "gitlab",
"devops_platform_role", "role1",
"sonarqube_permission", "sq_perm");
@Test
void execute_whenTableAlreadyPopulatedWithGithub_appliesMigration() throws SQLException {
db.executeInsert(DEVOPS_PERMS_MAPPING_TABLE_NAME,
- "UUID", UuidFactoryFast.getInstance().create(),
+ "UUID", UuidFactoryImpl.INSTANCE.create(),
"devops_platform", "github",
"devops_platform_role", "role1",
"sonarqube_permission", "sq_perm");
package org.sonar.server.platform.db.migration.version.v107;
import com.google.common.annotations.VisibleForTesting;
-import java.sql.Connection;
import java.sql.SQLException;
import java.util.List;
import java.util.Optional;
import org.sonar.db.Database;
-import org.sonar.db.DatabaseUtils;
import org.sonar.server.platform.db.migration.sql.DbPrimaryKeyConstraintFinder;
import org.sonar.server.platform.db.migration.sql.DropPrimaryKeySqlGenerator;
import org.sonar.server.platform.db.migration.step.DdlChange;
String organization = orgaAndRepoTokenified[0];
String repository = orgaAndRepoTokenified[1];
- Set<DevOpsPermissionsMappingDto> permissionsMappingDtos = dbClient.githubPermissionsMappingDao().findAll(dbClient.openSession(false), devOpsPlatformSettings.getDevOpsPlatform());
+ Set<DevOpsPermissionsMappingDto> permissionsMappingDtos = dbClient.githubPermissionsMappingDao()
+ .findAll(dbClient.openSession(false), devOpsPlatformSettings.getDevOpsPlatform());
boolean userHasDirectAccessToRepo = doesUserHaveScanPermission(organization, repository, permissionsMappingDtos);
if (userHasDirectAccessToRepo) {
public static final String BOUND_PROJECTS_ENDPOINT = DOP_TRANSLATION_DOMAIN + "/bound-projects";
public static final String PROJECT_BINDINGS_ENDPOINT = DOP_TRANSLATION_DOMAIN + "/project-bindings";
public static final String DOP_SETTINGS_ENDPOINT = DOP_TRANSLATION_DOMAIN + "/dop-settings";
+ public static final String GITLAB_PERMISSIONS_MAPPING_ENDPOINT = DOP_TRANSLATION_DOMAIN + "/gitlab-permission-mappings";
public static final String ANALYSIS_DOMAIN = "/analysis";
public static final String VERSION_ENDPOINT = ANALYSIS_DOMAIN + "/version";