summaryrefslogtreecommitdiff
path: root/priv/repo/migrations
diff options
context:
space:
mode:
Diffstat (limited to 'priv/repo/migrations')
-rw-r--r--priv/repo/migrations/20240622175346_backup_refactor.exs19
-rw-r--r--priv/repo/migrations/20240628160536_deprecate_config_db_workers.exs7
-rw-r--r--priv/repo/migrations/20240729163838_publisher_job_change.exs32
3 files changed, 58 insertions, 0 deletions
diff --git a/priv/repo/migrations/20240622175346_backup_refactor.exs b/priv/repo/migrations/20240622175346_backup_refactor.exs
new file mode 100644
index 000000000..5dfc55789
--- /dev/null
+++ b/priv/repo/migrations/20240622175346_backup_refactor.exs
@@ -0,0 +1,19 @@
+defmodule Pleroma.Repo.Migrations.BackupRefactor do
+ use Ecto.Migration
+
+ def up do
+ alter table("backups") do
+ remove(:state)
+ remove(:processed_number)
+ add(:tempdir, :string)
+ end
+ end
+
+ def down do
+ alter table("backups") do
+ add(:state, :integer, default: 5)
+ add(:processed_number, :integer, default: 0)
+ remove(:tempdir)
+ end
+ end
+end
diff --git a/priv/repo/migrations/20240628160536_deprecate_config_db_workers.exs b/priv/repo/migrations/20240628160536_deprecate_config_db_workers.exs
new file mode 100644
index 000000000..549dd22e9
--- /dev/null
+++ b/priv/repo/migrations/20240628160536_deprecate_config_db_workers.exs
@@ -0,0 +1,7 @@
+defmodule Pleroma.Repo.Migrations.DeprecateConfigDBWorkers do
+ use Ecto.Migration
+
+ def change do
+ execute("DELETE FROM config WHERE config.group = ':workers'")
+ end
+end
diff --git a/priv/repo/migrations/20240729163838_publisher_job_change.exs b/priv/repo/migrations/20240729163838_publisher_job_change.exs
new file mode 100644
index 000000000..cbea18205
--- /dev/null
+++ b/priv/repo/migrations/20240729163838_publisher_job_change.exs
@@ -0,0 +1,32 @@
+defmodule Pleroma.Repo.Migrations.PublisherJobChange do
+ use Ecto.Migration
+
+ alias Pleroma.Activity
+ alias Pleroma.Repo
+ import Ecto.Query
+
+ def up do
+ query =
+ from(j in Oban.Job,
+ where: j.worker == "Pleroma.Workers.PublisherWorker",
+ where: j.state in ["available", "retryable"]
+ )
+
+ jobs = Repo.all(query)
+
+ Enum.each(jobs, fn job ->
+ args = job.args
+
+ case Activity.get_by_ap_id(args["id"]) do
+ nil ->
+ :ok
+
+ %Activity{id: activity_id} ->
+ updated_args = Map.put(args, "activity_id", activity_id)
+
+ Pleroma.Workers.PublisherWorker.new(updated_args)
+ |> Oban.insert()
+ end
+ end)
+ end
+end