1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/pleroma_ynh.git synced 2024-09-03 20:15:59 +02:00

Merge pull request #126 from YunoHost-Apps/testing

Integrate LDAP
This commit is contained in:
yalh76 2020-06-02 23:27:44 +02:00 committed by GitHub
commit 3069659993
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 31 additions and 3 deletions

View file

@ -32,7 +32,6 @@ For user friendly details about Pleroma: [see here](https://blog.soykaf.com/post
1. **Pleroma** require a dedicated **root domain**, eg. pleroma.domain.tld 1. **Pleroma** require a dedicated **root domain**, eg. pleroma.domain.tld
1. **Pleroma** require a valid **certificate** installed on the domain. Yunohost can **install Letsencrypt certificate** on the domain from **admin web-interface** or through **command-line**. 1. **Pleroma** require a valid **certificate** installed on the domain. Yunohost can **install Letsencrypt certificate** on the domain from **admin web-interface** or through **command-line**.
1. This package is **multi-instance** that means you can run **multiple Pleroma instances** on a **single server**. 1. This package is **multi-instance** that means you can run **multiple Pleroma instances** on a **single server**.
1. There is **No LDAP** support for Pleroma yet.
## Screenshots ## Screenshots
@ -78,7 +77,7 @@ You can make users **moderators**. They will then be able to **delete any post**
#### Multi-users support #### Multi-users support
LDAP and HTTP auth are not supported. LDAP supported but HTTP auth not.
The app can be used by multiple users. The app can be used by multiple users.

View file

@ -39,6 +39,8 @@
upgrade=1 from_commit=8f418ba020cee267f76bb781b03a41d384707a5b upgrade=1 from_commit=8f418ba020cee267f76bb781b03a41d384707a5b
# 2.0.2~ynh2 # 2.0.2~ynh2
upgrade=1 from_commit=251a08383f59be006803fd12013baa92b03c1ef7 upgrade=1 from_commit=251a08383f59be006803fd12013baa92b03c1ef7
# 2.0.5~ynh1
upgrade=1 from_commit=06f0005707e77fae566fedbd6e5e37f390df5173
backup_restore=1 backup_restore=1
multi_instance=0 multi_instance=0
# This test is no longer necessary since the version 2.7 (PR: https://github.com/YunoHost/yunohost/pull/304), you can still do it if your app could be installed with this version. # This test is no longer necessary since the version 2.7 (PR: https://github.com/YunoHost/yunohost/pull/304), you can still do it if your app could be installed with this version.
@ -70,3 +72,5 @@ Notification=yes
name=2.0.2~ynh1 name=2.0.2~ynh1
; commit=251a08383f59be006803fd12013baa92b03c1ef7 ; commit=251a08383f59be006803fd12013baa92b03c1ef7
name=2.0.2~ynh2 name=2.0.2~ynh2
; commit=06f0005707e77fae566fedbd6e5e37f390df5173
name=2.0.5~ynh1

11
conf/ldap.exs Normal file
View file

@ -0,0 +1,11 @@
config :pleroma, Pleroma.Web.Auth.Authenticator, Pleroma.Web.Auth.LDAPAuthenticator
config :pleroma, :ldap,
enabled: true,
host: "localhost",
port: 389,
ssl: false,
# sslopts: [],
tls: false,
# tlsopts: [],
base: "ou=users,dc=yunohost,dc=org",
uid: "uid"

View file

@ -10,6 +10,7 @@
proxy_set_header Upgrade $http_upgrade; proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade"; proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host; proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:__PORT__; proxy_pass http://localhost:__PORT__;

View file

@ -6,7 +6,7 @@
"en": "Pleroma is an OStatus-compatible social networking server written in Elixir, compatible with GNU Social and Mastodon", "en": "Pleroma is an OStatus-compatible social networking server written in Elixir, compatible with GNU Social and Mastodon",
"fr": "Pleroma est un réseau social écrit en Elixir, compatible avec OStatus, GNU Social et Mastodon" "fr": "Pleroma est un réseau social écrit en Elixir, compatible avec OStatus, GNU Social et Mastodon"
}, },
"version": "2.0.5~ynh1", "version": "2.0.5~ynh2",
"url": "https://git.pleroma.social/pleroma/pleroma", "url": "https://git.pleroma.social/pleroma/pleroma",
"license": "AGPL-3.0-only", "license": "AGPL-3.0-only",
"maintainer": [ "maintainer": [

View file

@ -214,6 +214,13 @@ pushd $final_path/$app
--listen-ip 127.0.0.1 \ --listen-ip 127.0.0.1 \
--listen-port $port \ --listen-port $port \
--db-configurable Y" --db-configurable Y"
popd
cat "../conf/ldap.exs" >> "$config"
ynh_replace_string --match_string="config :pleroma, configurable_from_database: false" --replace_string="config :pleroma, configurable_from_database: true" --target_file="$config"
pushd $final_path/$app
su "$app" -s $SHELL -lc "$final_path/$app/bin/pleroma_ctl migrate" su "$app" -s $SHELL -lc "$final_path/$app/bin/pleroma_ctl migrate"

View file

@ -172,6 +172,12 @@ if ynh_version_gt "1.1.1~ynh1" "${previous_version}" ; then
ynh_secure_remove --file="$final_path/$app" ynh_secure_remove --file="$final_path/$app"
fi fi
if ynh_version_gt "2.0.5~ynh1" "${previous_version}" ; then
config="/etc/$app/config.exs"
cat "../conf/ldap.exs" >> "$config"
ynh_replace_string --match_string="config :pleroma, configurable_from_database: false" --replace_string="config :pleroma, configurable_from_database: true" --target_file="$config"
fi
#================================================= #=================================================
# DOWNLOAD, CHECK AND UNPACK SOURCE # DOWNLOAD, CHECK AND UNPACK SOURCE
#================================================= #=================================================