Просмотр исходного кода

Generate secret key for pleroma server

Bob Mottram 7 лет назад
Родитель
Сommit
5a6669c033
1 измененных файлов: 13 добавлений и 4 удалений
  1. 13
    4
      src/freedombone-app-pleroma

+ 13
- 4
src/freedombone-app-pleroma Просмотреть файл

42
 PLEROMA_COMMIT='7252f6b054dfdfac1f9bac77c442c5a1ebd898af'
42
 PLEROMA_COMMIT='7252f6b054dfdfac1f9bac77c442c5a1ebd898af'
43
 PLEROMA_ADMIN_PASSWORD=
43
 PLEROMA_ADMIN_PASSWORD=
44
 PLEROMA_DIR=/etc/pleroma
44
 PLEROMA_DIR=/etc/pleroma
45
+PLEROMA_SECRET_KEY=""
45
 
46
 
46
 PLEROMA_BACKGROUND_IMAGE_URL=
47
 PLEROMA_BACKGROUND_IMAGE_URL=
47
 
48
 
196
     run_system_query_postgresql "GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;"
197
     run_system_query_postgresql "GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;"
197
     run_system_query_postgresql "CREATE EXTENSION citext;"
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
     pleroma_secret=config/dev.secret.exs
210
     pleroma_secret=config/dev.secret.exs
200
     cp config/dev.exs $pleroma_secret
211
     cp config/dev.exs $pleroma_secret
201
     sed -i "s|username:.*|username: \"pleroma\",|g" $pleroma_secret
212
     sed -i "s|username:.*|username: \"pleroma\",|g" $pleroma_secret
202
     sed -i "s|password:.*|password: \"$PLEROMA_ADMIN_PASSWORD\",|g" $pleroma_secret
213
     sed -i "s|password:.*|password: \"$PLEROMA_ADMIN_PASSWORD\",|g" $pleroma_secret
203
     sed -i "s|database:.*|database: \"pleroma\",|g" $pleroma_secret
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
     sed -i "/Pleroma.Web.Endpoint/a pubsub: [name: Pleroma.Web.PubSub, adapter: Phoenix.PubSub.PG2]," $pleroma_secret
217
     sed -i "/Pleroma.Web.Endpoint/a pubsub: [name: Pleroma.Web.PubSub, adapter: Phoenix.PubSub.PG2]," $pleroma_secret
205
     sed -i 's|pubsub: |  pubsub: |g' $pleroma_secret
218
     sed -i 's|pubsub: |  pubsub: |g' $pleroma_secret
206
     sed -i 's|watchers: []|watchers: [],|g' $pleroma_secret
219
     sed -i 's|watchers: []|watchers: [],|g' $pleroma_secret
207
     sed -i "/watchers: []/a url: [host: \"$PLEROMA_DOMAIN_NAME\", scheme: \"https\", port: 443]" $pleroma_secret
220
     sed -i "/watchers: []/a url: [host: \"$PLEROMA_DOMAIN_NAME\", scheme: \"https\", port: 443]" $pleroma_secret
208
     sed -i 's|url: |  url: |g' $pleroma_secret
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
     cd $PLEROMA_DIR
223
     cd $PLEROMA_DIR
215
     chown -R pleroma:pleroma *
224
     chown -R pleroma:pleroma *
216
     sudo -u pleroma mix local.rebar --force
225
     sudo -u pleroma mix local.rebar --force