using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using NodaTime; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace Foxnouns.Backend.Database.Migrations { /// [DbContext(typeof(DatabaseContext))] [Migration("20240611225328_AddTemporaryKeyCache")] public partial class AddTemporaryKeyCache : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "temporary_keys", columns: table => new { id = table .Column(type: "bigint", nullable: false) .Annotation( "Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn ), key = table.Column(type: "text", nullable: false), value = table.Column(type: "text", nullable: false), expires = table.Column( type: "timestamp with time zone", nullable: false ), }, constraints: table => table.PrimaryKey("pk_temporary_keys", x => x.id) ); migrationBuilder.CreateIndex( name: "ix_temporary_keys_key", table: "temporary_keys", column: "key", unique: true ); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable(name: "temporary_keys"); } } }