summaryrefslogtreecommitdiff
path: root/packages/backend/migration
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-25 12:43:43 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-05-28 21:31:40 -0400
commit9e282b1d1086409e28c4a3798d8b1f5a9688d65e (patch)
tree271ac044ca3f9d65aea8d816b11b0d7706545dd2 /packages/backend/migration
parentadd backend npm script to roll back a migration (diff)
downloadsharkey-9e282b1d1086409e28c4a3798d8b1f5a9688d65e.tar.gz
sharkey-9e282b1d1086409e28c4a3798d8b1f5a9688d65e.tar.bz2
sharkey-9e282b1d1086409e28c4a3798d8b1f5a9688d65e.zip
fix arrays in migration add_instance_block_columns
Diffstat (limited to 'packages/backend/migration')
-rw-r--r--packages/backend/migration/1748105111513-add_instance_block_columns.js28
1 files changed, 12 insertions, 16 deletions
diff --git a/packages/backend/migration/1748105111513-add_instance_block_columns.js b/packages/backend/migration/1748105111513-add_instance_block_columns.js
index c9087604e5..6e3d78d5e8 100644
--- a/packages/backend/migration/1748105111513-add_instance_block_columns.js
+++ b/packages/backend/migration/1748105111513-add_instance_block_columns.js
@@ -37,32 +37,32 @@ export class AddInstanceBlockColumns1748105111513 {
// Blocked hosts
if (meta.blockedHosts.length > 0) {
- const pattern = buildPatterns(meta.blockedHosts);
- await queryRunner.query(`UPDATE "instance" SET "isBlocked" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
+ const patterns = buildPatterns(meta.blockedHosts);
+ await queryRunner.query(`UPDATE "instance" SET "isBlocked" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
}
// Silenced hosts
if (meta.silencedHosts.length > 0) {
- const pattern = buildPatterns(meta.silencedHosts);
- await queryRunner.query(`UPDATE "instance" SET "isSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
+ const patterns = buildPatterns(meta.silencedHosts);
+ await queryRunner.query(`UPDATE "instance" SET "isSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
}
// Media silenced hosts
if (meta.mediaSilencedHosts.length > 0) {
- const pattern = buildPatterns(meta.mediaSilencedHosts);
- await queryRunner.query(`UPDATE "instance" SET "isMediaSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
+ const patterns = buildPatterns(meta.mediaSilencedHosts);
+ await queryRunner.query(`UPDATE "instance" SET "isMediaSilenced" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
}
// Allow-listed hosts
if (meta.federationHosts.length > 0) {
- const pattern = buildPatterns(meta.federationHosts);
- await queryRunner.query(`UPDATE "instance" SET "isAllowListed" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
+ const patterns = buildPatterns(meta.federationHosts);
+ await queryRunner.query(`UPDATE "instance" SET "isAllowListed" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
}
// Bubbled hosts
if (meta.bubbleInstances.length > 0) {
- const pattern = buildPatterns(meta.bubbleInstances);
- await queryRunner.query(`UPDATE "instance" SET "isBubbled" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ${pattern}`);
+ const patterns = buildPatterns(meta.bubbleInstances);
+ await queryRunner.query(`UPDATE "instance" SET "isBubbled" = true WHERE ((lower(reverse("host")) || '.')::text) LIKE ANY ($1)`, [ patterns ]);
}
}
}
@@ -78,12 +78,8 @@ export class AddInstanceBlockColumns1748105111513 {
/**
* @param {string[]} input
- * @returns {string}
+ * @returns {string[]}
*/
function buildPatterns(input) {
- const strings = input
- .map(i => i.toLowerCase().split('').reverse().join('') + '.%')
- .map(i => `'${i}'`)
- .join(', ');
- return `(array[${strings}]::text[])`;
+ return input.map(i => i.toLowerCase().split('').reverse().join('') + '.%');
}