github.com/crowdsecurity/crowdsec@v1.6.1/pkg/database/ent/migrate/schema.go (about) 1 // Code generated by ent, DO NOT EDIT. 2 3 package migrate 4 5 import ( 6 "entgo.io/ent/dialect/sql/schema" 7 "entgo.io/ent/schema/field" 8 ) 9 10 var ( 11 // AlertsColumns holds the columns for the "alerts" table. 12 AlertsColumns = []*schema.Column{ 13 {Name: "id", Type: field.TypeInt, Increment: true}, 14 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 15 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 16 {Name: "scenario", Type: field.TypeString}, 17 {Name: "bucket_id", Type: field.TypeString, Nullable: true, Default: ""}, 18 {Name: "message", Type: field.TypeString, Nullable: true, Default: ""}, 19 {Name: "events_count", Type: field.TypeInt32, Nullable: true, Default: 0}, 20 {Name: "started_at", Type: field.TypeTime, Nullable: true}, 21 {Name: "stopped_at", Type: field.TypeTime, Nullable: true}, 22 {Name: "source_ip", Type: field.TypeString, Nullable: true}, 23 {Name: "source_range", Type: field.TypeString, Nullable: true}, 24 {Name: "source_as_number", Type: field.TypeString, Nullable: true}, 25 {Name: "source_as_name", Type: field.TypeString, Nullable: true}, 26 {Name: "source_country", Type: field.TypeString, Nullable: true}, 27 {Name: "source_latitude", Type: field.TypeFloat32, Nullable: true}, 28 {Name: "source_longitude", Type: field.TypeFloat32, Nullable: true}, 29 {Name: "source_scope", Type: field.TypeString, Nullable: true}, 30 {Name: "source_value", Type: field.TypeString, Nullable: true}, 31 {Name: "capacity", Type: field.TypeInt32, Nullable: true}, 32 {Name: "leak_speed", Type: field.TypeString, Nullable: true}, 33 {Name: "scenario_version", Type: field.TypeString, Nullable: true}, 34 {Name: "scenario_hash", Type: field.TypeString, Nullable: true}, 35 {Name: "simulated", Type: field.TypeBool, Default: false}, 36 {Name: "uuid", Type: field.TypeString, Nullable: true}, 37 {Name: "machine_alerts", Type: field.TypeInt, Nullable: true}, 38 } 39 // AlertsTable holds the schema information for the "alerts" table. 40 AlertsTable = &schema.Table{ 41 Name: "alerts", 42 Columns: AlertsColumns, 43 PrimaryKey: []*schema.Column{AlertsColumns[0]}, 44 ForeignKeys: []*schema.ForeignKey{ 45 { 46 Symbol: "alerts_machines_alerts", 47 Columns: []*schema.Column{AlertsColumns[24]}, 48 RefColumns: []*schema.Column{MachinesColumns[0]}, 49 OnDelete: schema.SetNull, 50 }, 51 }, 52 Indexes: []*schema.Index{ 53 { 54 Name: "alert_id", 55 Unique: false, 56 Columns: []*schema.Column{AlertsColumns[0]}, 57 }, 58 }, 59 } 60 // BouncersColumns holds the columns for the "bouncers" table. 61 BouncersColumns = []*schema.Column{ 62 {Name: "id", Type: field.TypeInt, Increment: true}, 63 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 64 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 65 {Name: "name", Type: field.TypeString, Unique: true}, 66 {Name: "api_key", Type: field.TypeString}, 67 {Name: "revoked", Type: field.TypeBool}, 68 {Name: "ip_address", Type: field.TypeString, Nullable: true, Default: ""}, 69 {Name: "type", Type: field.TypeString, Nullable: true}, 70 {Name: "version", Type: field.TypeString, Nullable: true}, 71 {Name: "until", Type: field.TypeTime, Nullable: true}, 72 {Name: "last_pull", Type: field.TypeTime}, 73 {Name: "auth_type", Type: field.TypeString, Default: "api-key"}, 74 } 75 // BouncersTable holds the schema information for the "bouncers" table. 76 BouncersTable = &schema.Table{ 77 Name: "bouncers", 78 Columns: BouncersColumns, 79 PrimaryKey: []*schema.Column{BouncersColumns[0]}, 80 } 81 // ConfigItemsColumns holds the columns for the "config_items" table. 82 ConfigItemsColumns = []*schema.Column{ 83 {Name: "id", Type: field.TypeInt, Increment: true}, 84 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 85 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 86 {Name: "name", Type: field.TypeString, Unique: true}, 87 {Name: "value", Type: field.TypeString}, 88 } 89 // ConfigItemsTable holds the schema information for the "config_items" table. 90 ConfigItemsTable = &schema.Table{ 91 Name: "config_items", 92 Columns: ConfigItemsColumns, 93 PrimaryKey: []*schema.Column{ConfigItemsColumns[0]}, 94 } 95 // DecisionsColumns holds the columns for the "decisions" table. 96 DecisionsColumns = []*schema.Column{ 97 {Name: "id", Type: field.TypeInt, Increment: true}, 98 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 99 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 100 {Name: "until", Type: field.TypeTime, Nullable: true, SchemaType: map[string]string{"mysql": "datetime"}}, 101 {Name: "scenario", Type: field.TypeString}, 102 {Name: "type", Type: field.TypeString}, 103 {Name: "start_ip", Type: field.TypeInt64, Nullable: true}, 104 {Name: "end_ip", Type: field.TypeInt64, Nullable: true}, 105 {Name: "start_suffix", Type: field.TypeInt64, Nullable: true}, 106 {Name: "end_suffix", Type: field.TypeInt64, Nullable: true}, 107 {Name: "ip_size", Type: field.TypeInt64, Nullable: true}, 108 {Name: "scope", Type: field.TypeString}, 109 {Name: "value", Type: field.TypeString}, 110 {Name: "origin", Type: field.TypeString}, 111 {Name: "simulated", Type: field.TypeBool, Default: false}, 112 {Name: "uuid", Type: field.TypeString, Nullable: true}, 113 {Name: "alert_decisions", Type: field.TypeInt, Nullable: true}, 114 } 115 // DecisionsTable holds the schema information for the "decisions" table. 116 DecisionsTable = &schema.Table{ 117 Name: "decisions", 118 Columns: DecisionsColumns, 119 PrimaryKey: []*schema.Column{DecisionsColumns[0]}, 120 ForeignKeys: []*schema.ForeignKey{ 121 { 122 Symbol: "decisions_alerts_decisions", 123 Columns: []*schema.Column{DecisionsColumns[16]}, 124 RefColumns: []*schema.Column{AlertsColumns[0]}, 125 OnDelete: schema.Cascade, 126 }, 127 }, 128 Indexes: []*schema.Index{ 129 { 130 Name: "decision_start_ip_end_ip", 131 Unique: false, 132 Columns: []*schema.Column{DecisionsColumns[6], DecisionsColumns[7]}, 133 }, 134 { 135 Name: "decision_value", 136 Unique: false, 137 Columns: []*schema.Column{DecisionsColumns[12]}, 138 }, 139 { 140 Name: "decision_until", 141 Unique: false, 142 Columns: []*schema.Column{DecisionsColumns[3]}, 143 }, 144 { 145 Name: "decision_alert_decisions", 146 Unique: false, 147 Columns: []*schema.Column{DecisionsColumns[16]}, 148 }, 149 }, 150 } 151 // EventsColumns holds the columns for the "events" table. 152 EventsColumns = []*schema.Column{ 153 {Name: "id", Type: field.TypeInt, Increment: true}, 154 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 155 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 156 {Name: "time", Type: field.TypeTime}, 157 {Name: "serialized", Type: field.TypeString, Size: 8191}, 158 {Name: "alert_events", Type: field.TypeInt, Nullable: true}, 159 } 160 // EventsTable holds the schema information for the "events" table. 161 EventsTable = &schema.Table{ 162 Name: "events", 163 Columns: EventsColumns, 164 PrimaryKey: []*schema.Column{EventsColumns[0]}, 165 ForeignKeys: []*schema.ForeignKey{ 166 { 167 Symbol: "events_alerts_events", 168 Columns: []*schema.Column{EventsColumns[5]}, 169 RefColumns: []*schema.Column{AlertsColumns[0]}, 170 OnDelete: schema.Cascade, 171 }, 172 }, 173 Indexes: []*schema.Index{ 174 { 175 Name: "event_alert_events", 176 Unique: false, 177 Columns: []*schema.Column{EventsColumns[5]}, 178 }, 179 }, 180 } 181 // LocksColumns holds the columns for the "locks" table. 182 LocksColumns = []*schema.Column{ 183 {Name: "id", Type: field.TypeInt, Increment: true}, 184 {Name: "name", Type: field.TypeString, Unique: true}, 185 {Name: "created_at", Type: field.TypeTime}, 186 } 187 // LocksTable holds the schema information for the "locks" table. 188 LocksTable = &schema.Table{ 189 Name: "locks", 190 Columns: LocksColumns, 191 PrimaryKey: []*schema.Column{LocksColumns[0]}, 192 } 193 // MachinesColumns holds the columns for the "machines" table. 194 MachinesColumns = []*schema.Column{ 195 {Name: "id", Type: field.TypeInt, Increment: true}, 196 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 197 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 198 {Name: "last_push", Type: field.TypeTime, Nullable: true}, 199 {Name: "last_heartbeat", Type: field.TypeTime, Nullable: true}, 200 {Name: "machine_id", Type: field.TypeString, Unique: true}, 201 {Name: "password", Type: field.TypeString}, 202 {Name: "ip_address", Type: field.TypeString}, 203 {Name: "scenarios", Type: field.TypeString, Nullable: true, Size: 100000}, 204 {Name: "version", Type: field.TypeString, Nullable: true}, 205 {Name: "is_validated", Type: field.TypeBool, Default: false}, 206 {Name: "status", Type: field.TypeString, Nullable: true}, 207 {Name: "auth_type", Type: field.TypeString, Default: "password"}, 208 } 209 // MachinesTable holds the schema information for the "machines" table. 210 MachinesTable = &schema.Table{ 211 Name: "machines", 212 Columns: MachinesColumns, 213 PrimaryKey: []*schema.Column{MachinesColumns[0]}, 214 } 215 // MetaColumns holds the columns for the "meta" table. 216 MetaColumns = []*schema.Column{ 217 {Name: "id", Type: field.TypeInt, Increment: true}, 218 {Name: "created_at", Type: field.TypeTime, Nullable: true}, 219 {Name: "updated_at", Type: field.TypeTime, Nullable: true}, 220 {Name: "key", Type: field.TypeString}, 221 {Name: "value", Type: field.TypeString, Size: 4095}, 222 {Name: "alert_metas", Type: field.TypeInt, Nullable: true}, 223 } 224 // MetaTable holds the schema information for the "meta" table. 225 MetaTable = &schema.Table{ 226 Name: "meta", 227 Columns: MetaColumns, 228 PrimaryKey: []*schema.Column{MetaColumns[0]}, 229 ForeignKeys: []*schema.ForeignKey{ 230 { 231 Symbol: "meta_alerts_metas", 232 Columns: []*schema.Column{MetaColumns[5]}, 233 RefColumns: []*schema.Column{AlertsColumns[0]}, 234 OnDelete: schema.Cascade, 235 }, 236 }, 237 Indexes: []*schema.Index{ 238 { 239 Name: "meta_alert_metas", 240 Unique: false, 241 Columns: []*schema.Column{MetaColumns[5]}, 242 }, 243 }, 244 } 245 // Tables holds all the tables in the schema. 246 Tables = []*schema.Table{ 247 AlertsTable, 248 BouncersTable, 249 ConfigItemsTable, 250 DecisionsTable, 251 EventsTable, 252 LocksTable, 253 MachinesTable, 254 MetaTable, 255 } 256 ) 257 258 func init() { 259 AlertsTable.ForeignKeys[0].RefTable = MachinesTable 260 DecisionsTable.ForeignKeys[0].RefTable = AlertsTable 261 EventsTable.ForeignKeys[0].RefTable = AlertsTable 262 MetaTable.ForeignKeys[0].RefTable = AlertsTable 263 }