forked from EllieBotDevs/elliebot
Added migration files
This commit is contained in:
parent
1256528217
commit
bea2b76bd2
10 changed files with 22259 additions and 2 deletions
54
src/EllieBot/Migrations/MigrationQueries.cs
Normal file
54
src/EllieBot/Migrations/MigrationQueries.cs
Normal file
|
@ -0,0 +1,54 @@
|
|||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using EllieBot.Db.Models;
|
||||
|
||||
namespace EllieBot.Migrations;
|
||||
|
||||
public static class MigrationQueries
|
||||
{
|
||||
public static void MigrateRero(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
if (migrationBuilder.IsMySql())
|
||||
{
|
||||
migrationBuilder.Sql(
|
||||
@"INSERT IGNORE into reactionroles(guildid, channelid, messageid, emote, roleid, `group`, levelreq, dateadded)
|
||||
select guildid, channelid, messageid, emotename, roleid, exclusive, 0, reactionrolemessage.dateadded
|
||||
from reactionrole
|
||||
left join reactionrolemessage on reactionrolemessage.id = reactionrole.reactionrolemessageid
|
||||
left join guildconfigs on reactionrolemessage.guildconfigid = guildconfigs.id;");
|
||||
}
|
||||
else if (migrationBuilder.IsSqlite())
|
||||
{
|
||||
migrationBuilder.Sql(
|
||||
@"insert or ignore into reactionroles(guildid, channelid, messageid, emote, roleid, 'group', levelreq, dateadded)
|
||||
select guildid, channelid, messageid, emotename, roleid, exclusive, 0, reactionrolemessage.dateadded
|
||||
from reactionrole
|
||||
left join reactionrolemessage on reactionrolemessage.id = reactionrole.reactionrolemessageid
|
||||
left join guildconfigs on reactionrolemessage.guildconfigid = guildconfigs.id;");
|
||||
}
|
||||
else if (migrationBuilder.IsNpgsql())
|
||||
{
|
||||
migrationBuilder.Sql(@"insert into reactionroles(guildid, channelid, messageid, emote, roleid, ""group"", levelreq, dateadded)
|
||||
select guildid, channelid, messageid, emotename, roleid, exclusive::int, 0, reactionrolemessage.dateadded
|
||||
from reactionrole
|
||||
left join reactionrolemessage on reactionrolemessage.id = reactionrole.reactionrolemessageid
|
||||
left join guildconfigs on reactionrolemessage.guildconfigid = guildconfigs.id
|
||||
ON CONFLICT DO NOTHING;");
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new NotSupportedException("This database provider doesn't have an implementation for MigrateRero");
|
||||
}
|
||||
}
|
||||
|
||||
public static void GuildConfigCleanup(MigrationBuilder builder)
|
||||
{
|
||||
builder.Sql($"""
|
||||
DELETE FROM "StreamRoleBlacklistedUser" WHERE "StreamRoleSettingsId" is NULL;
|
||||
""");
|
||||
|
||||
builder.Sql($"""
|
||||
DELETE FROM "DelMsgOnCmdChannel" WHERE "GuildConfigId" is NULL;
|
||||
""");
|
||||
}
|
||||
}
|
3425
src/EllieBot/Migrations/Mysql/20220409170652_mysql-init.Designer.cs
generated
Normal file
3425
src/EllieBot/Migrations/Mysql/20220409170652_mysql-init.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
2342
src/EllieBot/Migrations/Mysql/20220409170652_mysql-init.cs
Normal file
2342
src/EllieBot/Migrations/Mysql/20220409170652_mysql-init.cs
Normal file
File diff suppressed because it is too large
Load diff
3816
src/EllieBot/Migrations/Mysql/MysqlContextModelSnapshot.cs
Normal file
3816
src/EllieBot/Migrations/Mysql/MysqlContextModelSnapshot.cs
Normal file
File diff suppressed because it is too large
Load diff
3565
src/EllieBot/Migrations/PostgreSql/20220409170719_mysql-init.Designer.cs
generated
Normal file
3565
src/EllieBot/Migrations/PostgreSql/20220409170719_mysql-init.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
2200
src/EllieBot/Migrations/PostgreSql/20220409170719_mysql-init.cs
Normal file
2200
src/EllieBot/Migrations/PostgreSql/20220409170719_mysql-init.cs
Normal file
File diff suppressed because it is too large
Load diff
3812
src/EllieBot/Migrations/PostgreSql/PostgreSqlContextModelSnapshot.cs
Normal file
3812
src/EllieBot/Migrations/PostgreSql/PostgreSqlContextModelSnapshot.cs
Normal file
File diff suppressed because it is too large
Load diff
2945
src/EllieBot/Migrations/Sqlite/EllieSqliteContextModelSnapshot.cs
Normal file
2945
src/EllieBot/Migrations/Sqlite/EllieSqliteContextModelSnapshot.cs
Normal file
File diff suppressed because it is too large
Load diff
Reference in a new issue