summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/mix/tasks/pleroma/search/indexer.ex6
-rw-r--r--lib/pleroma/search/qdrant_search.ex3
-rw-r--r--lib/pleroma/search/search_backend.ex5
3 files changed, 13 insertions, 1 deletions
diff --git a/lib/mix/tasks/pleroma/search/indexer.ex b/lib/mix/tasks/pleroma/search/indexer.ex
index ffa2f3c94..326646b69 100644
--- a/lib/mix/tasks/pleroma/search/indexer.ex
+++ b/lib/mix/tasks/pleroma/search/indexer.ex
@@ -8,6 +8,12 @@ defmodule Mix.Tasks.Pleroma.Search.Indexer do
alias Pleroma.Workers.SearchIndexingWorker
+ def run(["create_index"]) do
+ Application.ensure_all_started(:pleroma)
+
+ Pleroma.Config.get([Pleroma.Search, :module]).create_index()
+ end
+
def run(["index" | options]) do
{options, [], []} =
OptionParser.parse(
diff --git a/lib/pleroma/search/qdrant_search.ex b/lib/pleroma/search/qdrant_search.ex
index 31e7754ae..315262cb3 100644
--- a/lib/pleroma/search/qdrant_search.ex
+++ b/lib/pleroma/search/qdrant_search.ex
@@ -8,7 +8,8 @@ defmodule Pleroma.Search.QdrantSearch do
import Pleroma.Search.Meilisearch, only: [object_to_search_data: 1]
- def initialize_index() do
+ @impl true
+ def create_index() do
payload = Pleroma.Config.get([Pleroma.Search.QdrantSearch, :qdrant_index_configuration])
QdrantClient.put("/collections/posts", payload)
end
diff --git a/lib/pleroma/search/search_backend.ex b/lib/pleroma/search/search_backend.ex
index 68bc48cec..5be0169d0 100644
--- a/lib/pleroma/search/search_backend.ex
+++ b/lib/pleroma/search/search_backend.ex
@@ -21,4 +21,9 @@ defmodule Pleroma.Search.SearchBackend do
from index.
"""
@callback remove_from_index(object :: Pleroma.Object.t()) :: :ok | {:error, any()}
+
+ @doc """
+ Create the index
+ """
+ @callback create_index() :: :ok | {:error, any()}
end