use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createRules.
private void createRules(Context context) throws SQLException {
VarcharColumnDef pluginRuleKeyCol = newLenientVarcharBuilder("plugin_rule_key").setLimit(200).setIsNullable(false).build();
VarcharColumnDef pluginNameCol = newLenientVarcharBuilder("plugin_name").setLimit(255).setIsNullable(false).build();
context.execute(newTableBuilder("rules").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newLenientVarcharBuilder("name").setLimit(200).setIsNullable(true).build()).addColumn(pluginRuleKeyCol).addColumn(newLenientVarcharBuilder("plugin_config_key").setLimit(200).setIsNullable(true).build()).addColumn(pluginNameCol).addColumn(newClobColumnDefBuilder().setColumnName("description").setIsNullable(true).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("priority").setIsNullable(true).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("template_id").setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("status").setLimit(40).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("language").setLimit(20).setIsNullable(true).build()).addColumn(newTimestampColumnDefBuilder().setColumnName("note_created_at").setIsNullable(true).build()).addColumn(newTimestampColumnDefBuilder().setColumnName("note_updated_at").setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("note_user_login").setLimit(255).setIsNullable(true).build()).addColumn(newClobColumnDefBuilder().setColumnName("note_data").setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("remediation_function").setLimit(200).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("def_remediation_function").setLimit(20).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("remediation_gap_mult").setLimit(20).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("def_remediation_gap_mult").setLimit(20).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("remediation_base_effort").setLimit(20).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("def_remediation_base_effort").setLimit(20).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("gap_description").setLimit(4000).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("tags").setLimit(4000).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("system_tags").setLimit(4000).setIsNullable(true).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("is_template").setIsNullable(false).setDefaultValue(false).build()).addColumn(newLenientVarcharBuilder("description_format").setLimit(20).setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").setIsNullable(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("updated_at").setIsNullable(true).build()).addColumn(new TinyIntColumnDef.Builder().setColumnName("rule_type").setIsNullable(true).build()).build());
addIndex(context, "rules", "rules_repo_key", true, pluginRuleKeyCol, pluginNameCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createCeActivity.
private void createCeActivity(Context context) throws SQLException {
VarcharColumnDef uuidCol = newLenientVarcharBuilder("uuid").setLimit(40).setIsNullable(false).build();
VarcharColumnDef isLastKeyCol = newLenientVarcharBuilder("is_last_key").setLimit(55).setIsNullable(false).build();
BooleanColumnDef isLastCol = newBooleanColumnDefBuilder().setColumnName("is_last").setIsNullable(false).build();
VarcharColumnDef statusCol = newLenientVarcharBuilder("status").setLimit(15).setIsNullable(false).build();
VarcharColumnDef componentUuidCol = newLenientVarcharBuilder("component_uuid").setLimit(40).build();
context.execute(newTableBuilder("ce_activity").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(uuidCol).addColumn(newLenientVarcharBuilder("task_type").setLimit(15).setIsNullable(false).build()).addColumn(componentUuidCol).addColumn(statusCol).addColumn(isLastCol).addColumn(isLastKeyCol).addColumn(newLenientVarcharBuilder("submitter_login").setLimit(255).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("submitted_at").setIsNullable(false).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("started_at").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("executed_at").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").setIsNullable(false).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("updated_at").setIsNullable(false).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("execution_time_ms").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("snapshot_id").build()).build());
addIndex(context, "ce_activity", "ce_activity_component_uuid", false, componentUuidCol);
addIndex(context, "ce_activity", "ce_activity_islast_status", false, isLastCol, statusCol);
addIndex(context, "ce_activity", "ce_activity_islastkey", false, isLastKeyCol);
addIndex(context, "ce_activity", "ce_activity_uuid", true, uuidCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createActivities.
private void createActivities(Context context) throws SQLException {
VarcharColumnDef keeCol = newLenientVarcharBuilder("log_key").setLimit(255).build();
context.execute(newTableBuilder("activities").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newTimestampColumnDefBuilder().setColumnName("created_at").build()).addColumn(newLenientVarcharBuilder("user_login").setLimit(255).build()).addColumn(newClobColumnDefBuilder().setColumnName("data_field").build()).addColumn(newLenientVarcharBuilder("log_type").setLimit(50).build()).addColumn(newLenientVarcharBuilder("log_action").setLimit(50).build()).addColumn(newLenientVarcharBuilder("log_message").setLimit(4000).build()).addColumn(keeCol).build());
addIndex(context, "activities", "activities_log_key", true, keeCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createProperties.
private void createProperties(Context context) throws SQLException {
VarcharColumnDef propKey = newLenientVarcharBuilder("prop_key").setLimit(512).setIsNullable(true).build();
context.execute(newTableBuilder("properties").addColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build()).addColumn(propKey).addColumn(newIntegerColumnDefBuilder().setColumnName("resource_id").setIsNullable(true).build()).addColumn(newClobColumnDefBuilder().setColumnName("text_value").setIsNullable(true).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("user_id").setIsNullable(true).build()).build());
addIndex(context, "properties", "properties_key", false, propKey);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createAuthors.
private void createAuthors(Context context) throws SQLException {
VarcharColumnDef loginCol = newLenientVarcharBuilder("login").setLimit(255).build();
context.execute(newTableBuilder("authors").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newIntegerColumnDefBuilder().setColumnName("person_id").setIsNullable(false).build()).addColumn(loginCol).addColumn(newTimestampColumnDefBuilder().setColumnName("created_at").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("updated_at").build()).build());
addIndex(context, "authors", "uniq_author_logins", true, loginCol);
}
Aggregations