Parcourir la source

Generate secret key for pleroma server

Bob Mottram il y a 7 ans
Parent
révision
5a6669c033
1 fichiers modifiés avec 13 ajouts et 4 suppressions
  1. 13
    4
      src/freedombone-app-pleroma

+ 13
- 4
src/freedombone-app-pleroma Voir le fichier

@@ -42,6 +42,7 @@ PLEROMA_REPO="https://git.pleroma.social/pleroma/pleroma.git"
42 42
 PLEROMA_COMMIT='7252f6b054dfdfac1f9bac77c442c5a1ebd898af'
43 43
 PLEROMA_ADMIN_PASSWORD=
44 44
 PLEROMA_DIR=/etc/pleroma
45
+PLEROMA_SECRET_KEY=""
45 46
 
46 47
 PLEROMA_BACKGROUND_IMAGE_URL=
47 48
 
@@ -196,21 +197,29 @@ function pleroma_create_database {
196 197
     run_system_query_postgresql "GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;"
197 198
     run_system_query_postgresql "CREATE EXTENSION citext;"
198 199
 
200
+    read_config_param "PLEROMA_SECRET_KEY"
201
+    if [ ${#PLEROMA_SECRET_KEY} -lt 50 ]; then
202
+        PLEROMA_SECRET_KEY="$(create_password 30)$(create_password 30)"
203
+        if [ ${#PLEROMA_SECRET_KEY} -lt 50 ]; then
204
+            echo $'Pleroma secret key not created'
205
+            exit 6782352
206
+        fi
207
+        write_config_param "PLEROMA_SECRET_KEY" "$PLEROMA_SECRET_KEY"
208
+    fi
209
+
199 210
     pleroma_secret=config/dev.secret.exs
200 211
     cp config/dev.exs $pleroma_secret
201 212
     sed -i "s|username:.*|username: \"pleroma\",|g" $pleroma_secret
202 213
     sed -i "s|password:.*|password: \"$PLEROMA_ADMIN_PASSWORD\",|g" $pleroma_secret
203 214
     sed -i "s|database:.*|database: \"pleroma\",|g" $pleroma_secret
215
+    sed -i "/Pleroma.Web.Endpoint/a secret_key_base: \"$PLEROMA_SECRET_KEY\"," $pleroma_secret
216
+    sed -i 's|secret_key_base: |  secret_key_base: |g' $pleroma_secret
204 217
     sed -i "/Pleroma.Web.Endpoint/a pubsub: [name: Pleroma.Web.PubSub, adapter: Phoenix.PubSub.PG2]," $pleroma_secret
205 218
     sed -i 's|pubsub: |  pubsub: |g' $pleroma_secret
206 219
     sed -i 's|watchers: []|watchers: [],|g' $pleroma_secret
207 220
     sed -i "/watchers: []/a url: [host: \"$PLEROMA_DOMAIN_NAME\", scheme: \"https\", port: 443]" $pleroma_secret
208 221
     sed -i 's|url: |  url: |g' $pleroma_secret
209 222
 
210
-    #pleroma_config=config/config.exs
211
-    #sed -i "s|name: .*|name: \"$PLEROMA_TITLE\",|g" $pleroma_config
212
-    #sed -i "s|email: .*|email: \"$MY_EMAIL_ADDRESS\",|g" $pleroma_config
213
-
214 223
     cd $PLEROMA_DIR
215 224
     chown -R pleroma:pleroma *
216 225
     sudo -u pleroma mix local.rebar --force