|
package ocpmigrations
import (
"database/sql"
"github.com/RedHatInsights/insights-results-aggregator/migration"
"github.com/RedHatInsights/insights-results-aggregator/types"
)
var mig0002CreateRuleContent = migration . Migration {
StepUp : func ( tx * sql . Tx , _ types . DBDriver ) error {
_ , err := tx . Exec ( `
CREATE TABLE rule (
"module" VARCHAR PRIMARY KEY,
"name" VARCHAR NOT NULL,
"summary" VARCHAR NOT NULL,
"reason" VARCHAR NOT NULL,
"resolution" VARCHAR NOT NULL,
"more_info" VARCHAR NOT NULL
)` )
if err != nil {
return err
}
_ , err = tx . Exec ( `
CREATE TABLE rule_error_key (
"error_key" VARCHAR NOT NULL,
"rule_module" VARCHAR NOT NULL REFERENCES rule(module),
"condition" VARCHAR NOT NULL,
"description" VARCHAR NOT NULL,
"impact" INTEGER NOT NULL,
"likelihood" INTEGER NOT NULL,
"publish_date" TIMESTAMP NOT NULL,
"active" BOOLEAN NOT NULL,
"generic" VARCHAR NOT NULL,
PRIMARY KEY("error_key", "rule_module")
)` )
return err
} ,
StepDown : func ( tx * sql . Tx , _ types . DBDriver ) error {
_ , err := tx . Exec ( `DROP TABLE rule_error_key` )
if err != nil {
return err
}
_ , err = tx . Exec ( `DROP TABLE rule` )
return err
} ,
}
|