From 3ac5ecbac1e00c6f5b59dfd8c120875e22080a09 Mon Sep 17 00:00:00 2001 From: rinpatch Date: Sat, 22 Jun 2019 12:54:16 +0300 Subject: [PATCH] Support RUM indexes in the config generator --- lib/mix/tasks/pleroma/instance.ex | 16 ++++++++++++++-- priv/templates/sample_config.eex | 1 + priv/templates/sample_psql.eex | 5 +++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/lib/mix/tasks/pleroma/instance.ex b/lib/mix/tasks/pleroma/instance.ex index c6738dbcc..997eabbeb 100644 --- a/lib/mix/tasks/pleroma/instance.ex +++ b/lib/mix/tasks/pleroma/instance.ex @@ -29,6 +29,7 @@ defmodule Mix.Tasks.Pleroma.Instance do - `--dbname DBNAME` - the name of the database to use - `--dbuser DBUSER` - the user (aka role) to use for the database connection - `--dbpass DBPASS` - the password to use for the database connection + - `--rum Y/N` - Whether to enable RUM indexes - `--indexable Y/N` - Allow/disallow indexing site by search engines - `--db-configurable Y/N` - Allow/disallow configuring instance from admin part - `--uploads-dir` - the directory uploads go in when using a local uploader @@ -51,6 +52,7 @@ def run(["gen" | rest]) do dbname: :string, dbuser: :string, dbpass: :string, + rum: :string, indexable: :string, db_configurable: :string, uploads_dir: :string, @@ -136,6 +138,14 @@ def run(["gen" | rest]) do "autogenerated" ) + rum_enabled = + get_option( + options, + :rum, + "Would you like to use RUM indices?", + "n" + ) === "y" + uploads_dir = get_option( options, @@ -175,7 +185,8 @@ def run(["gen" | rest]) do web_push_private_key: Base.url_encode64(web_push_private_key, padding: false), db_configurable?: db_configurable?, static_dir: static_dir, - uploads_dir: uploads_dir + uploads_dir: uploads_dir, + rum_enabled: rum_enabled ) result_psql = @@ -183,7 +194,8 @@ def run(["gen" | rest]) do template_dir <> "/sample_psql.eex", dbname: dbname, dbuser: dbuser, - dbpass: dbpass + dbpass: dbpass, + rum_enabled: rum_enabled ) shell_info( diff --git a/priv/templates/sample_config.eex b/priv/templates/sample_config.eex index 8cadb995e..2d4a49328 100644 --- a/priv/templates/sample_config.eex +++ b/priv/templates/sample_config.eex @@ -41,6 +41,7 @@ config :web_push_encryption, :vapid_details, public_key: "<%= web_push_public_key %>", private_key: "<%= web_push_private_key %>" +config :pleroma, :database, rum_enabled: <%= rum_enabled %> config :pleroma, :instance, static_dir: "<%= static_dir %>" config :pleroma, Pleroma.Uploaders.Local, uploads: "<%= uploads_dir %>" diff --git a/priv/templates/sample_psql.eex b/priv/templates/sample_psql.eex index f0ac05e57..627839a68 100644 --- a/priv/templates/sample_psql.eex +++ b/priv/templates/sample_psql.eex @@ -5,3 +5,8 @@ CREATE DATABASE <%= dbname %> OWNER <%= dbuser %>; CREATE EXTENSION IF NOT EXISTS citext; CREATE EXTENSION IF NOT EXISTS pg_trgm; CREATE EXTENSION IF NOT EXISTS "uuid-ossp"; +<%= if rum_enabled do + "CREATE EXTENSION IF NOT EXISTS rum;" +else +"" +end %>