use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createUserTokens.
private void createUserTokens(Context context) throws SQLException {
VarcharColumnDef loginCol = newLenientVarcharBuilder("login").setLimit(255).setIsNullable(false).build();
VarcharColumnDef nameCol = newLenientVarcharBuilder("name").setLimit(100).setIsNullable(false).build();
VarcharColumnDef tokenHashCol = newLenientVarcharBuilder("token_hash").setLimit(255).setIsNullable(false).build();
context.execute(newTableBuilder("user_tokens").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(loginCol).addColumn(nameCol).addColumn(tokenHashCol).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").setIsNullable(false).build()).build());
addIndex(context, "user_tokens", "user_tokens_login_name", true, loginCol, nameCol);
addIndex(context, "user_tokens", "user_tokens_token_hash", true, tokenHashCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createSnapshots.
private void createSnapshots(Context context) throws SQLException {
IntegerColumnDef projectIdCol = newIntegerColumnDefBuilder().setColumnName("project_id").setIsNullable(false).build();
IntegerColumnDef rootProjectIdCol = newIntegerColumnDefBuilder().setColumnName("root_project_id").setIsNullable(true).build();
IntegerColumnDef parentSnapshotIdCol = newIntegerColumnDefBuilder().setColumnName("parent_snapshot_id").setIsNullable(true).build();
VarcharColumnDef qualifierCol = newLenientVarcharBuilder("qualifier").setLimit(10).setIsNullable(true).build();
IntegerColumnDef rootSnapshotIdCol = newIntegerColumnDefBuilder().setColumnName("root_snapshot_id").setIsNullable(true).build();
context.execute(newTableBuilder("snapshots").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(projectIdCol).addColumn(parentSnapshotIdCol).addColumn(newLenientVarcharBuilder("status").setLimit(4).setIsNullable(false).setDefaultValue("U").build()).addColumn(newBooleanColumnDefBuilder().setColumnName("islast").setIsNullable(false).setDefaultValue(false).build()).addColumn(newLenientVarcharBuilder("scope").setLimit(3).setIsNullable(true).build()).addColumn(qualifierCol).addColumn(rootSnapshotIdCol).addColumn(newLenientVarcharBuilder("version").setLimit(500).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("path").setLimit(500).setIsNullable(true).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("depth").setIsNullable(true).build()).addColumn(rootProjectIdCol).addColumn(newIntegerColumnDefBuilder().setColumnName("purge_status").setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period1_mode").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period1_param").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period2_mode").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period2_param").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period3_mode").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period3_param").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period4_mode").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period4_param").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period5_mode").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("period5_param").setLimit(100).setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("build_date").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("period1_date").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("period2_date").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("period3_date").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("period4_date").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("period5_date").setIsNullable(true).build()).build());
addIndex(context, "snapshots", "snapshot_project_id", false, projectIdCol);
addIndex(context, "snapshots", "snapshots_parent", false, parentSnapshotIdCol);
addIndex(context, "snapshots", "snapshots_qualifier", false, qualifierCol);
addIndex(context, "snapshots", "snapshots_root", false, rootSnapshotIdCol);
addIndex(context, "snapshots", "snapshots_root_project_id", false, rootProjectIdCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createProjectQprofiles.
private void createProjectQprofiles(Context context) throws SQLException {
VarcharColumnDef projectUuid = newLenientVarcharBuilder("project_uuid").setLimit(50).setIsNullable(false).build();
VarcharColumnDef profileKey = newLenientVarcharBuilder("profile_key").setLimit(50).setIsNullable(false).build();
context.execute(newTableBuilder("project_qprofiles").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(projectUuid).addColumn(profileKey).build());
addIndex(context, "project_qprofiles", "uniq_project_qprofiles", true, projectUuid, profileKey);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createRulesProfiles.
private void createRulesProfiles(Context context) throws SQLException {
VarcharColumnDef keeCol = newLenientVarcharBuilder("kee").setLimit(255).setIsNullable(false).build();
context.execute(newTableBuilder("rules_profiles").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newLenientVarcharBuilder("name").setLimit(100).setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("language").setLimit(20).setIsNullable(true).build()).addColumn(keeCol).addColumn(newLenientVarcharBuilder("parent_kee").setLimit(255).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("rules_updated_at").setLimit(100).setIsNullable(true).build()).addColumn(newTimestampColumnDefBuilder().setColumnName("created_at").setIsNullable(true).build()).addColumn(newTimestampColumnDefBuilder().setColumnName("updated_at").setIsNullable(true).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("is_default").setIsNullable(false).build()).build());
addIndex(context, "rules_profiles", "uniq_qprof_key", true, keeCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class AddOrganizationUuidToProjects method execute.
@Override
public void execute(Context context) throws SQLException {
VarcharColumnDef column = newVarcharColumnDefBuilder().setColumnName("organization_uuid").setIsNullable(true).setLimit(UUID_SIZE).build();
context.execute(new AddColumnsBuilder(getDialect(), "projects").addColumn(column).build());
}
Aggregations