Differenze tra le versioni di "Framadate/Technical documentation"

Da Wikimedia Italia.
Jump to navigation Jump to search
(→‎Filesystem: +notes)
(more info)
Riga 6: Riga 6:
 
ssh fabula.wikimedia.it
 
ssh fabula.wikimedia.it
 
</pre>
 
</pre>
 +
 +
To request access:
 +
 +
* [[Infrastruttura#Contatti]]
  
 
== Overview ==
 
== Overview ==
Riga 123: Riga 127:
 
  nano [[phabricator:diffusion/WIIN/browse/master/servers/fabula/conf/rh-php73/php-fpm.d/9001-framadate.conf|/etc/opt/rh/rh-php73/php-fpm.d/9001-framadate.conf]]
 
  nano [[phabricator:diffusion/WIIN/browse/master/servers/fabula/conf/rh-php73/php-fpm.d/9001-framadate.conf|/etc/opt/rh/rh-php73/php-fpm.d/9001-framadate.conf]]
  
To publish whatever in Wikimedia Phabricator change please run this:
+
To publish whatever change in Wikimedia Phabricator change please run this:
  
 
<pre>
 
<pre>
Riga 130: Riga 134:
  
 
== Log ==
 
== Log ==
 +
 +
Log of the application:
 +
 +
tail -f /var/www/framadate/log/stdout.log
  
 
Log of the PHP-FPM pool:
 
Log of the PHP-FPM pool:

Versione delle 11:10, 25 gen 2021

Brief documentation for system administrators of the Framadate instance in Wikimedia Italia.

Server access

ssh fabula.wikimedia.it

To request access:

Overview

     ┌─────┐          ┌─────────────────┐          ┌───────────────┐
     │Alice│          │Apache (:80 :443)│          │PHP-FPM (:9001)│
     └──┬──┘          └────────┬────────┘          └───────┬───────┘
        │       request        │                           │        
        │<────────────────────>│                           │        
        │                      │                           │        
        │                      │         request           │        
        │                      │<─────────────────────────>│        
     ┌──┴──┐          ┌────────┴────────┐          ┌───────┴───────┐
     │Alice│          │Apache (:80 :443)│          │PHP-FPM (:9001)│
     └─────┘          └─────────────────┘          └───────────────┘

(refresh)

Filesystem

The whole application is in read-only (writable only by root). It seems that only the tpl_c/ directory needs to be writable.

# ls -l /var/www/framadate/production/
total 412
drwxr-xr-x  2 root             root               4096 21 dic 11.50 action
drwxr-xr-x  2 root             root               4096 25 gen 09.59 admin
-rw-r--r--  1 root             root              17997 21 dic 11.50 adminstuds.php
drwxr-xr-x  5 root             root               4096 21 dic 11.50 app
-rw-r--r--  1 root             root                637 21 dic 11.50 AUTHORS.md
-rw-r--r--  1 root             root               3053 21 dic 11.50 bandeaux.php
-rw-r--r--  1 root             root               1439 21 dic 11.50 buildlang.php
-rw-r--r--  1 root             root              13754 21 dic 11.50 CHANGELOG.md
-rw-r--r--  1 root             root               1912 21 dic 11.50 compare.php
-rw-r--r--  1 root             root               2209 21 dic 11.50 composer.json
-rw-r--r--  1 root             root             132735 21 dic 11.50 composer.lock
-rw-r--r--  1 root             root              14340 21 dic 11.50 create_classic_poll.php
-rw-r--r--  1 root             root               9810 25 gen 09.26 create_date_poll.php
-rw-r--r--  1 root             root              12614 21 dic 11.50 create_poll.php
drwxr-xr-x  3 root             root               4096 21 dic 11.50 css
drwxr-xr-x  2 root             root               4096 21 dic 11.50 doc
-rw-r--r--  1 root             root               3948 21 dic 11.50 exportcsv.php
-rw-r--r--  1 root             root               1150 21 dic 11.50 favicon.ico
-rw-r--r--  1 root             root               2103 21 dic 11.50 find_polls.php
drwxr-xr-x  2 root             root               4096 21 dic 11.50 fonts
-rw-r--r--  1 root             root                702 21 dic 11.50 htaccess.txt
drwxr-xr-x  2 root             root               4096 21 dic 11.50 images
-rw-r--r--  1 root             root               1774 21 dic 11.50 index.php
-rw-r--r--  1 root             root                 75 21 dic 11.50 INSTALL.md
drwxr-xr-x  4 root             root               4096 21 dic 11.50 js
-rw-r--r--  1 root             root              22400 21 dic 11.50 LICENCE.fr.txt
-rw-r--r--  1 root             root              21396 21 dic 11.50 LICENSE.en.txt
drwxr-xr-x  2 root             root               4096 21 dic 11.50 locale
-rw-r--r--  1 root             root                317 21 dic 11.50 locale.bat
-rw-r--r--  1 root             root                896 21 dic 11.50 maintenance.php
-rw-r--r--  1 root             root                234 21 dic 11.50 Makefile
-rw-r--r--  1 root             root                230 21 dic 11.50 php.ini
-rw-r--r--  1 root             root                 68 21 dic 11.50 phpunit.bat
-rw-r--r--  1 root             root                 85 21 dic 11.50 phpunit.sh
drwxr-xr-x  2 root             root               4096 21 dic 11.50 po
-rw-r--r--  1 root             root                295 21 dic 11.50 push-trad-to-zanata.sh
-rw-r--r--  1 root             root               2878 21 dic 11.50 README.md
-rw-r--r--  1 root             root                 77 21 dic 11.50 robots.txt
drwxr-xr-x  2 root             root               4096 21 dic 11.50 scripts
-rw-r--r--  1 root             root              10834 21 dic 11.50 studs.php
drwxr-xr-x  6 root             root               4096 21 dic 11.50 tpl
drwxr-xr-x  2 apache-framadate apache-framadate   4096 24 gen 18.38 tpl_c
drwxr-xr-x 12 root             root               4096 21 dic 11.55 vendor
-rw-r--r--  1 root             root                333 21 dic 11.50 zanata.xml

Here an overview of the parent directory.

# ls -l /var/www/framadate
total 28
drwxr-xr-x 16 root             root             4096 24 gen 18.36 framadate-1.1.11
drwxrwx---  2 apache-framadate apache-framadate 4096 25 gen 09.52 log
lrwxrwxrwx  1 root             root               16 25 gen 09.48 production -> framadate-1.1.11
-rw-r--r--  1 root             root               56 20 gen 17.24 README.txt
drwxr-xr-x  2 root             root             4096 20 gen 22.55 secret
drwxrwx---  2 apache-framadate apache-framadate 4096 25 gen 09.10 session
drwxrwx---  2 apache-framadate apache-framadate 4096 24 gen 18.32 tmp
drwxr-xr-x  2 root             root             4096 24 gen 00.17 wmi-images

Admin

This is the admin panel:

The admin credentials are stored in this file:

cat /var/www/framadate/secret/password.clear

The admin credentials can be changed with this command:

htpasswd -c /var/www/framadate/secret/htpasswd admin

Configuration

Framadate configuration:

nano /var/www/framadate/production/app/inc/config.php
nano /var/www/framadate/production/app/inc/config-secret.php

Apache configuration:

nano /etc/httpd/sites-enabled/it-wikimedia-framadate-ssl.conf
nano /etc/httpd/sites-enabled/it-wikimedia-framadate-txt.conf

PHP-FPM configuration:

nano /etc/opt/rh/rh-php73/php-fpm.d/9001-framadate.conf

To publish whatever change in Wikimedia Phabricator change please run this:

/root/scripts/commit.sh

Log

Log of the application:

tail -f /var/www/framadate/log/stdout.log

Log of the PHP-FPM pool:

tail -f /var/log/php-fpm/framadate-error.log

Generic Apache error log:

tail -f /var/log/httpd/error_log

Generic Apache access log:

tail -f /var/log/httpd/access_log

Service

To apply your changes you need to restart the services.

Service of the apache frontend webserver:

apache2ctl configtest
apache2ctl graceful

Service of the PHP-FPM backend webserver:

systemctl status  rh-php73-php-fpm
systemctl restart rh-php73-php-fpm

Database

$ mysql framadate
> SHOW TABLES;
+------------------------+
| Tables_in_framadate    |
+------------------------+
| fd_comment             |
| fd_framadate_migration |
| fd_poll                |
| fd_slot                |
| fd_vote                |
+------------------------+
5 rows in set (0.00 sec)

E-mail

Matomo uses an SMTP account @wikimedia.it with username noreply.

See #Configuration.

See technical addresses.

Update

https://framagit.org/framasoft/framadate/framadate/-/wikis/Maintenance/Updating

Phabricator