From 90591db3c3a74be4b5cc09ab7a533ead0d2b2dbc Mon Sep 17 00:00:00 2001 From: Laura Hausmann Date: Sun, 14 Apr 2024 21:17:45 +0200 Subject: [PATCH] [backend/database] Add script to prune .Designer.cs migration files (ISH-119) --- .../Core/Database/prune-designer-cs-files.sh | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Iceshrimp.Backend/Core/Database/prune-designer-cs-files.sh diff --git a/Iceshrimp.Backend/Core/Database/prune-designer-cs-files.sh b/Iceshrimp.Backend/Core/Database/prune-designer-cs-files.sh new file mode 100644 index 00000000..ee91c5a3 --- /dev/null +++ b/Iceshrimp.Backend/Core/Database/prune-designer-cs-files.sh @@ -0,0 +1,27 @@ +#!/bin/bash +set -e + +if [[ $(uname) == "Darwin" ]]; then + SED="gsed" +else + SED="sed" +fi + +import="using Microsoft.EntityFrameworkCore.Infrastructure;" +dbc=" [DbContext(typeof(DatabaseContext))]" + +for file in $(find "$(dirname $0)/Migrations" -name '*.Designer.cs'); do + echo "$file" + csfile="${file%.Designer.cs}.cs" + if [[ ! -f $csfile ]]; then + echo "$csfile doesn't exist, exiting" + exit 1 + fi + lineno=$($SED -n '/^{/=' "$csfile") + ((lineno+=2)) + migr=$(grep "\[Migration" "$file") + $SED -i "${lineno}i \\$migr" "$csfile" + $SED -i "${lineno}i \\$dbc" "$csfile" + $SED -i "2i $import" "$csfile" + rm "$file" +done