lehenetsitako aldagaiak zuzenean cfg.lua fitxategietan txertatu.
This commit is contained in:
+1
-1
@@ -78,7 +78,7 @@ RUN buildDeps='gcc git libc6-dev libidn2-dev liblua5.2-dev libsqlite3-dev libssl
|
|||||||
&& luarocks install luadbi \
|
&& luarocks install luadbi \
|
||||||
`#&& luarocks install luadbi-mysql MYSQL_INCDIR=/usr/include/mariadb/` \
|
`#&& luarocks install luadbi-mysql MYSQL_INCDIR=/usr/include/mariadb/` \
|
||||||
&& luarocks install luadbi-sqlite3 \
|
&& luarocks install luadbi-sqlite3 \
|
||||||
# && luarocks install stringy \
|
&& luarocks install stringy \
|
||||||
\
|
\
|
||||||
&& apt-get purge -y --auto-remove $buildDeps
|
&& apt-get purge -y --auto-remove $buildDeps
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,11 @@
|
|||||||
local function _split(s, sep)
|
local stringy = require "stringy"
|
||||||
if not s then return nil; end
|
|
||||||
sep = sep or ",";
|
e2e_policy_chat = os.getenv("E2E_POLICY_CHAT") or "required"
|
||||||
local parts = {};
|
e2e_policy_muc = os.getenv("E2E_POLICY_MUC") or "required"
|
||||||
for part in s:gmatch("[^"..sep.."]+") do
|
|
||||||
parts[#parts+1] = part;
|
local whitelist = os.getenv("E2E_POLICY_WHITELIST") or ""
|
||||||
end
|
e2e_policy_whitelist = stringy.split(whitelist, ", ")
|
||||||
return parts;
|
|
||||||
end
|
|
||||||
|
|
||||||
e2e_policy_chat = os.getenv("E2E_POLICY_CHAT")
|
|
||||||
e2e_policy_muc = os.getenv("E2E_POLICY_MUC")
|
|
||||||
e2e_policy_whitelist = _split(os.getenv("E2E_POLICY_WHITELIST"), ", ")
|
|
||||||
e2e_policy_message_optional_chat = "For security reasons, OMEMO, OTR or PGP encryption is STRONGLY recommended for conversations on this server."
|
e2e_policy_message_optional_chat = "For security reasons, OMEMO, OTR or PGP encryption is STRONGLY recommended for conversations on this server."
|
||||||
e2e_policy_message_required_chat = "For security reasons, OMEMO, OTR or PGP encryption is required for conversations on this server."
|
e2e_policy_message_required_chat = "For security reasons, OMEMO, OTR or PGP encryption is required for conversations on this server."
|
||||||
e2e_policy_message_optional_muc = "For security reasons, OMEMO, OTR or PGP encryption is STRONGLY recommended for MUC on this server."
|
e2e_policy_message_optional_muc = "For security reasons, OMEMO, OTR or PGP encryption is STRONGLY recommended for MUC on this server."
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
local stringy = require "stringy"
|
||||||
local function _split(s, sep)
|
local function _split(s, sep)
|
||||||
if not s then return nil; end
|
if not s then return nil; end
|
||||||
sep = sep or ",";
|
sep = sep or ",";
|
||||||
|
|||||||
@@ -1,9 +1,8 @@
|
|||||||
local domain = os.getenv("DOMAIN")
|
local domain = os.getenv("DOMAIN")
|
||||||
local domain_http_upload = os.getenv("DOMAIN_HTTP_UPLOAD")
|
local domain_http_upload = os.getenv("DOMAIN_HTTP_UPLOAD") or "upload." .. domain
|
||||||
local domain_muc = os.getenv("DOMAIN_MUC")
|
local domain_muc = os.getenv("DOMAIN_MUC") or "conference." .. domain
|
||||||
local domain_proxy = os.getenv("DOMAIN_PROXY")
|
local domain_proxy = os.getenv("DOMAIN_PROXY") or "proxy." .. domain
|
||||||
local domain_pubsub = os.getenv("DOMAIN_PUBSUB")
|
local domain_pubsub = os.getenv("DOMAIN_PUBSUB") or "pubsub." .. domain
|
||||||
|
|
||||||
-- XEP-0368: SRV records for XMPP over TLS
|
-- XEP-0368: SRV records for XMPP over TLS
|
||||||
-- https://compliance.conversations.im/test/xep0368/
|
-- https://compliance.conversations.im/test/xep0368/
|
||||||
c2s_direct_tls_ssl = {
|
c2s_direct_tls_ssl = {
|
||||||
|
|||||||
@@ -1,28 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
export ALLOW_REGISTRATION=${ALLOW_REGISTRATION:-true}
|
|
||||||
export DOMAIN_HTTP_UPLOAD=${DOMAIN_HTTP_UPLOAD:-"upload.$DOMAIN"}
|
|
||||||
export DOMAIN_MUC=${DOMAIN_MUC:-"conference.$DOMAIN"}
|
|
||||||
export DOMAIN_PROXY=${DOMAIN_PROXY:-"proxy.$DOMAIN"}
|
|
||||||
export DOMAIN_PUBSUB=${DOMAIN_PUBSUB:-"pubsub.$DOMAIN"}
|
|
||||||
export DB_DRIVER=${DB_DRIVER:-"SQLite3"}
|
|
||||||
export DB_DATABASE=${DB_DATABASE:-"prosody.sqlite"}
|
|
||||||
export E2E_POLICY_CHAT=${E2E_POLICY_CHAT:-"required"}
|
|
||||||
export E2E_POLICY_MUC=${E2E_POLICY_MUC:-"required"}
|
|
||||||
export E2E_POLICY_WHITELIST=${E2E_POLICY_WHITELIST:-""}
|
|
||||||
export LOG_LEVEL=${LOG_LEVEL:-"info"}
|
|
||||||
export C2S_REQUIRE_ENCRYPTION=${C2S_REQUIRE_ENCRYPTION:-true}
|
|
||||||
export S2S_REQUIRE_ENCRYPTION=${S2S_REQUIRE_ENCRYPTION:-true}
|
|
||||||
export S2S_SECURE_AUTH=${S2S_SECURE_AUTH:-true}
|
|
||||||
export SERVER_CONTACT_INFO_ABUSE=${SERVER_CONTACT_INFO_ABUSE:-"xmpp:abuse@$DOMAIN"}
|
|
||||||
export SERVER_CONTACT_INFO_ADMIN=${SERVER_CONTACT_INFO_ADMIN:-"xmpp:admin@$DOMAIN"}
|
|
||||||
export SERVER_CONTACT_INFO_FEEDBACK=${SERVER_CONTACT_INFO_FEEDBACK:-"xmpp:feedback@$DOMAIN"}
|
|
||||||
export SERVER_CONTACT_INFO_SALES=${SERVER_CONTACT_INFO_SALES:-"xmpp:sales@$DOMAIN"}
|
|
||||||
export SERVER_CONTACT_INFO_SECURITY=${SERVER_CONTACT_INFO_SECURITY:-"xmpp:security@$DOMAIN"}
|
|
||||||
export SERVER_CONTACT_INFO_SUPPORT=${SERVER_CONTACT_INFO_SUPPORT:-"xmpp:support@$DOMAIN"}
|
|
||||||
export PROSODY_ADMINS=${PROSODY_ADMINS:-""}
|
|
||||||
|
|
||||||
if [[ "$1" != "prosody" ]]; then
|
if [[ "$1" != "prosody" ]]; then
|
||||||
exec prosodyctl $*
|
exec prosodyctl $*
|
||||||
exit 0;
|
exit 0;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ set -e
|
|||||||
dir="/usr/src/prosody-modules"
|
dir="/usr/src/prosody-modules"
|
||||||
|
|
||||||
mkdir -p "${dir}"
|
mkdir -p "${dir}"
|
||||||
wget https://hg.prosody.im/prosody-modules/archive/tip.tar.gz
|
wget https://hg.prosody.im/prosody-modules/archive/233691533318.tar.gz -O tip.tar.gz
|
||||||
|
#wget https://hg.prosody.im/prosody-modules/archive/tip.tar.gz
|
||||||
tar -xzf tip.tar.gz -C "${dir}" --strip-components=1
|
tar -xzf tip.tar.gz -C "${dir}" --strip-components=1
|
||||||
rm tip.tar.gz
|
rm tip.tar.gz
|
||||||
|
|||||||
+7
-6
@@ -3,15 +3,16 @@
|
|||||||
|
|
||||||
local stringy = require "stringy"
|
local stringy = require "stringy"
|
||||||
|
|
||||||
admins = stringy.split(os.getenv("PROSODY_ADMINS"), ", ");
|
local prosody_admins = os.getenv("PROSODY_ADMINS") or "";
|
||||||
|
admins = stringy.split(prosody_admins, ", ");
|
||||||
|
|
||||||
pidfile = "/var/run/prosody/prosody.pid"
|
pidfile = "/var/run/prosody/prosody.pid"
|
||||||
|
|
||||||
allow_registration = os.getenv("ALLOW_REGISTRATION");
|
allow_registration = os.getenv("ALLOW_REGISTRATION") or "true";
|
||||||
|
|
||||||
c2s_require_encryption = os.getenv("C2S_REQUIRE_ENCRYPTION");
|
c2s_require_encryption = os.getenv("C2S_REQUIRE_ENCRYPTION") or "true";
|
||||||
s2s_require_encryption = os.getenv("S2S_REQUIRE_ENCRYPTION");
|
s2s_require_encryption = os.getenv("S2S_REQUIRE_ENCRYPTION") or "true";
|
||||||
s2s_secure_auth = os.getenv("S2S_SECURE_AUTH");
|
s2s_secure_auth = os.getenv("S2S_SECURE_AUTH") or "true";
|
||||||
|
|
||||||
authentication = os.getenv("AUTHENTICATION") or "internal_hashed";
|
authentication = os.getenv("AUTHENTICATION") or "internal_hashed";
|
||||||
|
|
||||||
@@ -26,7 +27,7 @@ ldap_mode = os.getenv("LDAP_MODE") or "bind";
|
|||||||
ldap_admin_filter = os.getenv("LDAP_ADMIN_FILTER") or "";
|
ldap_admin_filter = os.getenv("LDAP_ADMIN_FILTER") or "";
|
||||||
|
|
||||||
log = {
|
log = {
|
||||||
{levels = {min = os.getenv("LOG_LEVEL")}, to = "console"};
|
{levels = {min = os.getenv("LOG_LEVEL") or "info"}, to = "console"};
|
||||||
};
|
};
|
||||||
|
|
||||||
Include "conf.d/*.cfg.lua";
|
Include "conf.d/*.cfg.lua";
|
||||||
|
|||||||
+17
-14
@@ -19,7 +19,8 @@ registerTestUser() {
|
|||||||
local userName="$1"
|
local userName="$1"
|
||||||
local containerName="$2"
|
local containerName="$2"
|
||||||
echo "Registering TestUser '$userName' in container '$containerName'"
|
echo "Registering TestUser '$userName' in container '$containerName'"
|
||||||
sudo docker compose exec "$containerName" /bin/bash -c "/entrypoint.bash register $userName example.com 12345678"
|
sudo docker compose exec "$containerName" /bin/bash -c "prosodyctl register $userName example.com 12345678"
|
||||||
|
#sudo docker compose exec -e DOMAIN=example.com "$containerName" prosodyctl register "$userName" example.com 12345678
|
||||||
}
|
}
|
||||||
|
|
||||||
registerTestUsers() {
|
registerTestUsers() {
|
||||||
@@ -32,8 +33,7 @@ registerTestUsers() {
|
|||||||
|
|
||||||
runTests() {
|
runTests() {
|
||||||
local containerName="$1"
|
local containerName="$1"
|
||||||
python --version \
|
python3 --version \
|
||||||
&& python3 --version \
|
|
||||||
&& python3 -m venv venv \
|
&& python3 -m venv venv \
|
||||||
&& source venv/bin/activate \
|
&& source venv/bin/activate \
|
||||||
&& python --version \
|
&& python --version \
|
||||||
@@ -42,7 +42,7 @@ runTests() {
|
|||||||
&& pytest \
|
&& pytest \
|
||||||
&& deactivate \
|
&& deactivate \
|
||||||
&& sleep 5 \
|
&& sleep 5 \
|
||||||
&& sudo docker-compose logs "$containerName" \
|
&& sudo docker compose logs "$containerName" \
|
||||||
&& export batsContainerName="$containerName" \
|
&& export batsContainerName="$containerName" \
|
||||||
&& ./bats/bats-core/bin/bats tests.bats \
|
&& ./bats/bats-core/bin/bats tests.bats \
|
||||||
&& ./bats/bats-core/bin/bats tests-"$containerName".bats
|
&& ./bats/bats-core/bin/bats tests-"$containerName".bats
|
||||||
@@ -56,22 +56,25 @@ generateCert "upload.example.com"
|
|||||||
|
|
||||||
# Run tests for first container with postgres
|
# Run tests for first container with postgres
|
||||||
# Start postgres first and wait for 10 seconds before starting prosody.
|
# Start postgres first and wait for 10 seconds before starting prosody.
|
||||||
sudo docker-compose down
|
docker compose down
|
||||||
sudo docker-compose up -d postgres
|
echo "1"
|
||||||
|
docker compose up -d postgres
|
||||||
|
echo "2"
|
||||||
sleep 10
|
sleep 10
|
||||||
sudo docker-compose up -d prosody_postgres
|
docker compose up -d prosody_postgres
|
||||||
|
echo "3"
|
||||||
registerTestUsers prosody_postgres
|
registerTestUsers prosody_postgres
|
||||||
runTests prosody_postgres
|
runTests prosody_postgres
|
||||||
sudo docker-compose down
|
docker compose down
|
||||||
|
|
||||||
|
echo "HELLO"
|
||||||
# Run tests for second container with SQLite
|
# Run tests for second container with SQLite
|
||||||
sudo docker-compose up -d prosody
|
docker compose up -d prosody
|
||||||
registerTestUsers prosody
|
registerTestUsers prosody
|
||||||
runTests prosody
|
runTests prosody
|
||||||
sudo docker-compose down
|
docker compose down
|
||||||
|
echo "WORLD"
|
||||||
# Run tests for prosody with ldap
|
# Run tests for prosody with ldap
|
||||||
sudo docker-compose up -d prosody_ldap
|
docker compose up -d prosody_ldap
|
||||||
runTests prosody_ldap
|
runTests prosody_ldap
|
||||||
sudo docker-compose down
|
docker compose down
|
||||||
|
|||||||
Reference in New Issue
Block a user