From 8c11ab17b61d52bb7339c70799bc2ee56e62287b Mon Sep 17 00:00:00 2001 From: plabuse Date: Wed, 4 Jan 2023 07:31:19 +0100 Subject: [PATCH] Add files via upload --- LICENSE | 4 + README.md | 89 +++++++ README_fr.md | 89 +++++++ check_process | 34 +++ conf/app.src | 7 + conf/nginx.conf | 28 ++ conf/php-fpm.conf | 430 ++++++++++++++++++++++++++++++ conf/systemd.service | 45 ++++ config_panel.toml.example | 295 ++++++++++++++++++++ doc/DESCRIPTION.md | 9 + doc/DISCLAIMER.md | 12 + doc/screenshots/cultivonsfull.png | Bin 0 -> 249307 bytes doc/screenshots/example.jpg | Bin 0 -> 35451 bytes manifest.json | 71 +++++ scripts/_common.sh | 36 +++ scripts/backup | 114 ++++++++ scripts/change_url | 134 ++++++++++ scripts/install | 191 +++++++++++++ scripts/remove | 88 ++++++ scripts/restore | 187 +++++++++++++ scripts/upgrade | 239 +++++++++++++++++ 21 files changed, 2102 insertions(+) create mode 100644 LICENSE create mode 100644 README.md create mode 100644 README_fr.md create mode 100644 check_process create mode 100644 conf/app.src create mode 100644 conf/nginx.conf create mode 100644 conf/php-fpm.conf create mode 100644 conf/systemd.service create mode 100644 config_panel.toml.example create mode 100644 doc/DESCRIPTION.md create mode 100644 doc/DISCLAIMER.md create mode 100644 doc/screenshots/cultivonsfull.png create mode 100644 doc/screenshots/example.jpg create mode 100644 manifest.json create mode 100644 scripts/_common.sh create mode 100644 scripts/backup create mode 100644 scripts/change_url create mode 100644 scripts/install create mode 100644 scripts/remove create mode 100644 scripts/restore create mode 100644 scripts/upgrade diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..7d1e40b --- /dev/null +++ b/LICENSE @@ -0,0 +1,4 @@ +File containing the license of your package. + +More information here: +https://yunohost.org/packaging_apps_guidelines#yep-1-3 diff --git a/README.md b/README.md new file mode 100644 index 0000000..0e68e51 --- /dev/null +++ b/README.md @@ -0,0 +1,89 @@ + + +# cultivons for YunoHost + +[![Integration level](https://dash.yunohost.org/integration/cultivons.svg)](https://dash.yunohost.org/appci/app/cultivons) ![Working status](https://ci-apps.yunohost.org/ci/badges/cultivons.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/cultivons.maintain.svg) +[![Install cultivons with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=cultivons) + +*[Lire ce readme en français.](./README_fr.md)* + +> *This package allows you to install cultivons quickly and simply on a YunoHost server. +If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* + +## Overview + +Cultivons ! is a software in the form of an internal site aiming at helping the management of a BAD (Sustainable Autonomous Base). + +Cultivons ! est une application Web permettant de gerer votre propre BAD (Base Autonome Durable). +Cultivate ! is a web application that allows you to manage your own BAD (Sustainable Autonomous Base). + +An BAD is a place where one or more people can (over)live a disaster (natural, plague, war, economic collapse ... put here the reason that pleases you or scares you the most), for a more or less long period of time, without needing the outside: supermarkets, hospitals, and other services present in a modern society. + +Cette définition est un peu large, dans les faits une BAD se matérialisera souvent par un endroit à la campagne où on tentera d’être au maximum autonome sur les aspects les plus importants de la survie : + +* la nourriture (potager, verger, animaux … tout ce qui est culture et élevage) ; +* électricité ; +* eau (y compris la potabilisation) ; +* chauffage ; +* premiers soins ; +* stockage de recettes, guides et autres documentations ; +* … + +This definition is a little broad, in fact a BAD will often materialize by a place in the countryside where one will try to be as autonomous as possible on the most important aspects of survival: + +* food (vegetable garden, orchard, animals ... everything that is culture and breeding) ; +* electricity ; +* water (including potabilization) ; +* heating ; +* first aid ; +* storage of recipes, guides and other documentation ; +* ... + +Avec cultivons, vous pouvez gerer +- vos cultures, votre jardin et les tâches associes (semi, recolte) ainsi qu'un plan. +- la meteo, +- les stocks, +- vos documents, +- votre budget. + +### Features + +- +- + +**Shipped version:** 1.6 + +**Demo:** https://cultivons-demo.xulops.net + +## Screenshots + +![Screenshot of cultivons](./doc/screenshots/cultivonsfull.png) + +## Documentation and resources + +* Official app website: +* Official admin documentation: +* Upstream app code repository: +* YunoHost documentation for this app: +* Report a bug: + +## Articles + +* linuxfr + +## Developer info + +Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing). + +To try the testing branch, please proceed like that. + +``` bash +sudo yunohost app install https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing --debug +or +sudo yunohost app upgrade cultivons -u https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing --debug +``` + +**More info regarding app packaging:** diff --git a/README_fr.md b/README_fr.md new file mode 100644 index 0000000..0e68e51 --- /dev/null +++ b/README_fr.md @@ -0,0 +1,89 @@ + + +# cultivons for YunoHost + +[![Integration level](https://dash.yunohost.org/integration/cultivons.svg)](https://dash.yunohost.org/appci/app/cultivons) ![Working status](https://ci-apps.yunohost.org/ci/badges/cultivons.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/cultivons.maintain.svg) +[![Install cultivons with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=cultivons) + +*[Lire ce readme en français.](./README_fr.md)* + +> *This package allows you to install cultivons quickly and simply on a YunoHost server. +If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* + +## Overview + +Cultivons ! is a software in the form of an internal site aiming at helping the management of a BAD (Sustainable Autonomous Base). + +Cultivons ! est une application Web permettant de gerer votre propre BAD (Base Autonome Durable). +Cultivate ! is a web application that allows you to manage your own BAD (Sustainable Autonomous Base). + +An BAD is a place where one or more people can (over)live a disaster (natural, plague, war, economic collapse ... put here the reason that pleases you or scares you the most), for a more or less long period of time, without needing the outside: supermarkets, hospitals, and other services present in a modern society. + +Cette définition est un peu large, dans les faits une BAD se matérialisera souvent par un endroit à la campagne où on tentera d’être au maximum autonome sur les aspects les plus importants de la survie : + +* la nourriture (potager, verger, animaux … tout ce qui est culture et élevage) ; +* électricité ; +* eau (y compris la potabilisation) ; +* chauffage ; +* premiers soins ; +* stockage de recettes, guides et autres documentations ; +* … + +This definition is a little broad, in fact a BAD will often materialize by a place in the countryside where one will try to be as autonomous as possible on the most important aspects of survival: + +* food (vegetable garden, orchard, animals ... everything that is culture and breeding) ; +* electricity ; +* water (including potabilization) ; +* heating ; +* first aid ; +* storage of recipes, guides and other documentation ; +* ... + +Avec cultivons, vous pouvez gerer +- vos cultures, votre jardin et les tâches associes (semi, recolte) ainsi qu'un plan. +- la meteo, +- les stocks, +- vos documents, +- votre budget. + +### Features + +- +- + +**Shipped version:** 1.6 + +**Demo:** https://cultivons-demo.xulops.net + +## Screenshots + +![Screenshot of cultivons](./doc/screenshots/cultivonsfull.png) + +## Documentation and resources + +* Official app website: +* Official admin documentation: +* Upstream app code repository: +* YunoHost documentation for this app: +* Report a bug: + +## Articles + +* linuxfr + +## Developer info + +Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing). + +To try the testing branch, please proceed like that. + +``` bash +sudo yunohost app install https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing --debug +or +sudo yunohost app upgrade cultivons -u https://github.com/YunoHost-Apps/cultivons_ynh/tree/testing --debug +``` + +**More info regarding app packaging:** diff --git a/check_process b/check_process new file mode 100644 index 0000000..f41c4c9 --- /dev/null +++ b/check_process @@ -0,0 +1,34 @@ +# See here for more information +# https://github.com/YunoHost/package_check#syntax-check_process-file + +# Move this file from check_process.default to check_process when you have filled it. + +;; Test complet + ; Manifest + domain="domain.tld" + path="/path" + is_public=1 + language="fr" + admin="john" + password="1Strong-Password" + port="666" + ; Checks + pkg_linter=1 + setup_sub_dir=1 + setup_root=1 + setup_nourl=0 + setup_private=1 + setup_public=1 + upgrade=1 + upgrade=1 from_commit=CommitHash + backup_restore=1 + multi_instance=1 + port_already_use=0 + change_url=1 +;;; Options +Email= +Notification=none +;;; Upgrade options + ; commit=CommitHash + name=Name and date of the commit. + manifest_arg=domain=DOMAIN&path=PATH&is_public=1&language=fr&admin=USER&password=pass&port=666& diff --git a/conf/app.src b/conf/app.src new file mode 100644 index 0000000..13277f5 --- /dev/null +++ b/conf/app.src @@ -0,0 +1,7 @@ +SOURCE_URL=https://xulops.net/forge/cultivons.php?f=download&pk=41&v=15ea580cecfde61259043464c4fff9dd +SOURCE_SUM=380a585db03a328b458eb593037b631084a11c7021eadaacf35b419651914714 +SOURCE_SUM_PRG=sha256sum +SOURCE_FORMAT=zip +SOURCE_IN_SUBDIR=false +SOURCE_FILENAME=cultivons_v1.6.zip +SOURCE_EXTRACT=true diff --git a/conf/nginx.conf b/conf/nginx.conf new file mode 100644 index 0000000..6b738ce --- /dev/null +++ b/conf/nginx.conf @@ -0,0 +1,28 @@ +#sub_path_only rewrite ^__PATH__$ __PATH__/ permanent; +location __PATH__/ { + + # Path to source + alias __FINALPATH__/; + +### Example PHP configuration (remove it if not used) + index index.php; + + # Common parameter to increase upload size limit in conjunction with dedicated php-fpm file + #client_max_body_size 50M; + + try_files $uri $uri/ index.php; + location ~ [^/]\.php(/|$) { + fastcgi_split_path_info ^(.+?\.php)(/.*)$; + fastcgi_pass unix:/var/run/php/php__PHPVERSION__-fpm-__NAME__.sock; + + fastcgi_index index.php; + include fastcgi_params; + fastcgi_param REMOTE_USER $remote_user; + fastcgi_param PATH_INFO $fastcgi_path_info; + fastcgi_param SCRIPT_FILENAME $request_filename; + } +### End of PHP configuration part + + # Include SSOWAT user panel. + include conf.d/yunohost_panel.conf.inc; +} diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf new file mode 100644 index 0000000..8104fa5 --- /dev/null +++ b/conf/php-fpm.conf @@ -0,0 +1,430 @@ +; Start a new pool named 'www'. +; the variable $pool can be used in any directive and will be replaced by the +; pool name ('www' here) +[__NAMETOCHANGE__] + +; Per pool prefix +; It only applies on the following directives: +; - 'access.log' +; - 'slowlog' +; - 'listen' (unixsocket) +; - 'chroot' +; - 'chdir' +; - 'php_values' +; - 'php_admin_values' +; When not set, the global prefix (or /usr) applies instead. +; Note: This directive can also be relative to the global prefix. +; Default Value: none +;prefix = /path/to/pools/$pool + +; Unix user/group of processes +; Note: The user is mandatory. If the group is not set, the default user's group +; will be used. +user = __USER__ +group = __USER__ + +; The address on which to accept FastCGI requests. +; Valid syntaxes are: +; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific IPv4 address on +; a specific port; +; '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on +; a specific port; +; 'port' - to listen on a TCP socket to all addresses +; (IPv6 and IPv4-mapped) on a specific port; +; '/path/to/unix/socket' - to listen on a unix socket. +; Note: This value is mandatory. +listen = /var/run/php/php__PHPVERSION__-fpm-__NAMETOCHANGE__.sock + +; Set listen(2) backlog. +; Default Value: 511 (-1 on FreeBSD and OpenBSD) +;listen.backlog = 511 + +; Set permissions for unix socket, if one is used. In Linux, read/write +; permissions must be set in order to allow connections from a web server. Many +; BSD-derived systems allow connections regardless of permissions. +; Default Values: user and group are set as the running user +; mode is set to 0660 +listen.owner = www-data +listen.group = www-data +;listen.mode = 0660 +; When POSIX Access Control Lists are supported you can set them using +; these options, value is a comma separated list of user/group names. +; When set, listen.owner and listen.group are ignored +;listen.acl_users = +;listen.acl_groups = + +; List of addresses (IPv4/IPv6) of FastCGI clients which are allowed to connect. +; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original +; PHP FCGI (5.2.2+). Makes sense only with a tcp listening socket. Each address +; must be separated by a comma. If this value is left blank, connections will be +; accepted from any ip address. +; Default Value: any +;listen.allowed_clients = 127.0.0.1 + +; Specify the nice(2) priority to apply to the pool processes (only if set) +; The value can vary from -19 (highest priority) to 20 (lower priority) +; Note: - It will only work if the FPM master process is launched as root +; - The pool processes will inherit the master process priority +; unless it specified otherwise +; Default Value: no set +; process.priority = -19 + +; Set the process dumpable flag (PR_SET_DUMPABLE prctl) even if the process user +; or group is differrent than the master process user. It allows to create process +; core dump and ptrace the process for the pool user. +; Default Value: no +; process.dumpable = yes + +; Choose how the process manager will control the number of child processes. +; Possible Values: +; static - a fixed number (pm.max_children) of child processes; +; dynamic - the number of child processes are set dynamically based on the +; following directives. With this process management, there will be +; always at least 1 children. +; pm.max_children - the maximum number of children that can +; be alive at the same time. +; pm.start_servers - the number of children created on startup. +; pm.min_spare_servers - the minimum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is less than this +; number then some children will be created. +; pm.max_spare_servers - the maximum number of children in 'idle' +; state (waiting to process). If the number +; of 'idle' processes is greater than this +; number then some children will be killed. +; ondemand - no children are created at startup. Children will be forked when +; new requests will connect. The following parameter are used: +; pm.max_children - the maximum number of children that +; can be alive at the same time. +; pm.process_idle_timeout - The number of seconds after which +; an idle process will be killed. +; Note: This value is mandatory. +pm = dynamic + +; The number of child processes to be created when pm is set to 'static' and the +; maximum number of child processes when pm is set to 'dynamic' or 'ondemand'. +; This value sets the limit on the number of simultaneous requests that will be +; served. Equivalent to the ApacheMaxClients directive with mpm_prefork. +; Equivalent to the PHP_FCGI_CHILDREN environment variable in the original PHP +; CGI. The below defaults are based on a server without much resources. Don't +; forget to tweak pm.* to fit your needs. +; Note: Used when pm is set to 'static', 'dynamic' or 'ondemand' +; Note: This value is mandatory. +pm.max_children = 5 + +; The number of child processes created on startup. +; Note: Used only when pm is set to 'dynamic' +; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 +pm.start_servers = 2 + +; The desired minimum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.min_spare_servers = 1 + +; The desired maximum number of idle server processes. +; Note: Used only when pm is set to 'dynamic' +; Note: Mandatory when pm is set to 'dynamic' +pm.max_spare_servers = 3 + +; The number of seconds after which an idle process will be killed. +; Note: Used only when pm is set to 'ondemand' +; Default Value: 10s +;pm.process_idle_timeout = 10s; + +; The number of requests each child process should execute before respawning. +; This can be useful to work around memory leaks in 3rd party libraries. For +; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. +; Default Value: 0 +;pm.max_requests = 500 + +; The URI to view the FPM status page. If this value is not set, no URI will be +; recognized as a status page. It shows the following informations: +; pool - the name of the pool; +; process manager - static, dynamic or ondemand; +; start time - the date and time FPM has started; +; start since - number of seconds since FPM has started; +; accepted conn - the number of request accepted by the pool; +; listen queue - the number of request in the queue of pending +; connections (see backlog in listen(2)); +; max listen queue - the maximum number of requests in the queue +; of pending connections since FPM has started; +; listen queue len - the size of the socket queue of pending connections; +; idle processes - the number of idle processes; +; active processes - the number of active processes; +; total processes - the number of idle + active processes; +; max active processes - the maximum number of active processes since FPM +; has started; +; max children reached - number of times, the process limit has been reached, +; when pm tries to start more children (works only for +; pm 'dynamic' and 'ondemand'); +; Value are updated in real time. +; Example output: +; pool: www +; process manager: static +; start time: 01/Jul/2011:17:53:49 +0200 +; start since: 62636 +; accepted conn: 190460 +; listen queue: 0 +; max listen queue: 1 +; listen queue len: 42 +; idle processes: 4 +; active processes: 11 +; total processes: 15 +; max active processes: 12 +; max children reached: 0 +; +; By default the status page output is formatted as text/plain. Passing either +; 'html', 'xml' or 'json' in the query string will return the corresponding +; output syntax. Example: +; http://www.foo.bar/status +; http://www.foo.bar/status?json +; http://www.foo.bar/status?html +; http://www.foo.bar/status?xml +; +; By default the status page only outputs short status. Passing 'full' in the +; query string will also return status for each pool process. +; Example: +; http://www.foo.bar/status?full +; http://www.foo.bar/status?json&full +; http://www.foo.bar/status?html&full +; http://www.foo.bar/status?xml&full +; The Full status returns for each process: +; pid - the PID of the process; +; state - the state of the process (Idle, Running, ...); +; start time - the date and time the process has started; +; start since - the number of seconds since the process has started; +; requests - the number of requests the process has served; +; request duration - the duration in µs of the requests; +; request method - the request method (GET, POST, ...); +; request URI - the request URI with the query string; +; content length - the content length of the request (only with POST); +; user - the user (PHP_AUTH_USER) (or '-' if not set); +; script - the main script called (or '-' if not set); +; last request cpu - the %cpu the last request consumed +; it's always 0 if the process is not in Idle state +; because CPU calculation is done when the request +; processing has terminated; +; last request memory - the max amount of memory the last request consumed +; it's always 0 if the process is not in Idle state +; because memory calculation is done when the request +; processing has terminated; +; If the process is in Idle state, then informations are related to the +; last request the process has served. Otherwise informations are related to +; the current request being served. +; Example output: +; ************************ +; pid: 31330 +; state: Running +; start time: 01/Jul/2011:17:53:49 +0200 +; start since: 63087 +; requests: 12808 +; request duration: 1250261 +; request method: GET +; request URI: /test_mem.php?N=10000 +; content length: 0 +; user: - +; script: /home/fat/web/docs/php/test_mem.php +; last request cpu: 0.00 +; last request memory: 0 +; +; Note: There is a real-time FPM status monitoring sample web page available +; It's available in: /usr/share/php/7.0/fpm/status.html +; +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;pm.status_path = /status + +; The ping URI to call the monitoring page of FPM. If this value is not set, no +; URI will be recognized as a ping page. This could be used to test from outside +; that FPM is alive and responding, or to +; - create a graph of FPM availability (rrd or such); +; - remove a server from a group if it is not responding (load balancing); +; - trigger alerts for the operating team (24/7). +; Note: The value must start with a leading slash (/). The value can be +; anything, but it may not be a good idea to use the .php extension or it +; may conflict with a real PHP file. +; Default Value: not set +;ping.path = /ping + +; This directive may be used to customize the response of a ping request. The +; response is formatted as text/plain with a 200 response code. +; Default Value: pong +;ping.response = pong + +; The access log file +; Default: not set +;access.log = log/$pool.access.log + +; The access log format. +; The following syntax is allowed +; %%: the '%' character +; %C: %CPU used by the request +; it can accept the following format: +; - %{user}C for user CPU only +; - %{system}C for system CPU only +; - %{total}C for user + system CPU (default) +; %d: time taken to serve the request +; it can accept the following format: +; - %{seconds}d (default) +; - %{miliseconds}d +; - %{mili}d +; - %{microseconds}d +; - %{micro}d +; %e: an environment variable (same as $_ENV or $_SERVER) +; it must be associated with embraces to specify the name of the env +; variable. Some exemples: +; - server specifics like: %{REQUEST_METHOD}e or %{SERVER_PROTOCOL}e +; - HTTP headers like: %{HTTP_HOST}e or %{HTTP_USER_AGENT}e +; %f: script filename +; %l: content-length of the request (for POST request only) +; %m: request method +; %M: peak of memory allocated by PHP +; it can accept the following format: +; - %{bytes}M (default) +; - %{kilobytes}M +; - %{kilo}M +; - %{megabytes}M +; - %{mega}M +; %n: pool name +; %o: output header +; it must be associated with embraces to specify the name of the header: +; - %{Content-Type}o +; - %{X-Powered-By}o +; - %{Transfert-Encoding}o +; - .... +; %p: PID of the child that serviced the request +; %P: PID of the parent of the child that serviced the request +; %q: the query string +; %Q: the '?' character if query string exists +; %r: the request URI (without the query string, see %q and %Q) +; %R: remote IP address +; %s: status (response code) +; %t: server time the request was received +; it can accept a strftime(3) format: +; %d/%b/%Y:%H:%M:%S %z (default) +; The strftime(3) format must be encapsuled in a %{}t tag +; e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t +; %T: time the log has been written (the request has finished) +; it can accept a strftime(3) format: +; %d/%b/%Y:%H:%M:%S %z (default) +; The strftime(3) format must be encapsuled in a %{}t tag +; e.g. for a ISO8601 formatted timestring, use: %{%Y-%m-%dT%H:%M:%S%z}t +; %u: remote user +; +; Default: "%R - %u %t \"%m %r\" %s" +;access.format = "%R - %u %t \"%m %r%Q%q\" %s %f %{mili}d %{kilo}M %C%%" + +; The log file for slow requests +; Default Value: not set +; Note: slowlog is mandatory if request_slowlog_timeout is set +;slowlog = log/$pool.log.slow + +; The timeout for serving a single request after which a PHP backtrace will be +; dumped to the 'slowlog' file. A value of '0s' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +;request_slowlog_timeout = 0 + +; The timeout for serving a single request after which the worker process will +; be killed. This option should be used when the 'max_execution_time' ini option +; does not stop script execution for some reason. A value of '0' means 'off'. +; Available units: s(econds)(default), m(inutes), h(ours), or d(ays) +; Default Value: 0 +request_terminate_timeout = 1d + +; Set open file descriptor rlimit. +; Default Value: system defined value +;rlimit_files = 1024 + +; Set max core size rlimit. +; Possible Values: 'unlimited' or an integer greater or equal to 0 +; Default Value: system defined value +;rlimit_core = 0 + +; Chroot to this directory at the start. This value must be defined as an +; absolute path. When this value is not set, chroot is not used. +; Note: you can prefix with '$prefix' to chroot to the pool prefix or one +; of its subdirectories. If the pool prefix is not set, the global prefix +; will be used instead. +; Note: chrooting is a great security feature and should be used whenever +; possible. However, all PHP paths will be relative to the chroot +; (error_log, sessions.save_path, ...). +; Default Value: not set +;chroot = + +; Chdir to this directory at the start. +; Note: relative path can be used. +; Default Value: current directory or / when chroot +chdir = __FINALPATH__ + +; Redirect worker stdout and stderr into main error log. If not set, stdout and +; stderr will be redirected to /dev/null according to FastCGI specs. +; Note: on highloaded environement, this can cause some delay in the page +; process time (several ms). +; Default Value: no +;catch_workers_output = yes + +; Clear environment in FPM workers +; Prevents arbitrary environment variables from reaching FPM worker processes +; by clearing the environment in workers before env vars specified in this +; pool configuration are added. +; Setting to "no" will make all environment variables available to PHP code +; via getenv(), $_ENV and $_SERVER. +; Default Value: yes +;clear_env = no + +; Limits the extensions of the main script FPM will allow to parse. This can +; prevent configuration mistakes on the web server side. You should only limit +; FPM to .php extensions to prevent malicious users to use other extensions to +; execute php code. +; Note: set an empty value to allow all extensions. +; Default Value: .php +;security.limit_extensions = .php .php3 .php4 .php5 .php7 + +; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from +; the current environment. +; Default Value: clean env +;env[HOSTNAME] = $HOSTNAME +;env[PATH] = /usr/local/bin:/usr/bin:/bin +;env[TMP] = /tmp +;env[TMPDIR] = /tmp +;env[TEMP] = /tmp + +; Additional php.ini defines, specific to this pool of workers. These settings +; overwrite the values previously defined in the php.ini. The directives are the +; same as the PHP SAPI: +; php_value/php_flag - you can set classic ini defines which can +; be overwritten from PHP call 'ini_set'. +; php_admin_value/php_admin_flag - these directives won't be overwritten by +; PHP call 'ini_set' +; For php_*flag, valid values are on, off, 1, 0, true, false, yes or no. + +; Defining 'extension' will load the corresponding shared extension from +; extension_dir. Defining 'disable_functions' or 'disable_classes' will not +; overwrite previously defined php.ini values, but will append the new value +; instead. + +; Note: path INI options can be relative and will be expanded with the prefix +; (pool, global or /usr) + +; Default Value: nothing is defined by default except the values in php.ini and +; specified at startup with the -d argument +;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f www@my.domain.com +;php_flag[display_errors] = off +;php_admin_value[error_log] = /var/log/fpm-php.www.log +;php_admin_flag[log_errors] = on +;php_admin_value[memory_limit] = 32M + +; Common values to change to increase file upload limit +; php_admin_value[upload_max_filesize] = 50M +; php_admin_value[post_max_size] = 50M +; php_admin_flag[mail.add_x_header] = Off + +; Other common parameters +; php_admin_value[max_execution_time] = 600 +; php_admin_value[max_input_time] = 300 +; php_admin_value[memory_limit] = 256M +php_admin_flag[short_open_tag] = On diff --git a/conf/systemd.service b/conf/systemd.service new file mode 100644 index 0000000..7bb448e --- /dev/null +++ b/conf/systemd.service @@ -0,0 +1,45 @@ +[Unit] +Description=Small description of the service +After=network.target + +[Service] +Type=simple +User=__APP__ +Group=__APP__ +WorkingDirectory=__FINALPATH__/ +ExecStart=__FINALPATH__/script +StandardOutput=append:/var/log/__APP__/__APP__.log +StandardError=inherit + +# Sandboxing options to harden security +# Depending on specificities of your service/app, you may need to tweak these +# .. but this should be a good baseline +# Details for these options: https://www.freedesktop.org/software/systemd/man/systemd.exec.html +NoNewPrivileges=yes +PrivateTmp=yes +PrivateDevices=yes +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 +RestrictNamespaces=yes +RestrictRealtime=yes +DevicePolicy=closed +ProtectSystem=full +ProtectControlGroups=yes +ProtectKernelModules=yes +ProtectKernelTunables=yes +LockPersonality=yes +SystemCallFilter=~@clock @debug @module @mount @obsolete @reboot @setuid @swap + +# Denying access to capabilities that should not be relevant for webapps +# Doc: https://man7.org/linux/man-pages/man7/capabilities.7.html +CapabilityBoundingSet=~CAP_RAWIO CAP_MKNOD +CapabilityBoundingSet=~CAP_AUDIT_CONTROL CAP_AUDIT_READ CAP_AUDIT_WRITE +CapabilityBoundingSet=~CAP_SYS_BOOT CAP_SYS_TIME CAP_SYS_MODULE CAP_SYS_PACCT +CapabilityBoundingSet=~CAP_LEASE CAP_LINUX_IMMUTABLE CAP_IPC_LOCK +CapabilityBoundingSet=~CAP_BLOCK_SUSPEND CAP_WAKE_ALARM +CapabilityBoundingSet=~CAP_SYS_TTY_CONFIG +CapabilityBoundingSet=~CAP_MAC_ADMIN CAP_MAC_OVERRIDE +CapabilityBoundingSet=~CAP_NET_ADMIN CAP_NET_BROADCAST CAP_NET_RAW +CapabilityBoundingSet=~CAP_SYS_ADMIN CAP_SYS_PTRACE CAP_SYSLOG + +[Install] +WantedBy=multi-user.target diff --git a/config_panel.toml.example b/config_panel.toml.example new file mode 100644 index 0000000..c6bccd8 --- /dev/null +++ b/config_panel.toml.example @@ -0,0 +1,295 @@ + +## Config panel are available from webadmin > Apps > YOUR_APP > Config Panel Button +## Those panels let user configure some params on their apps using a friendly interface, +## and remove the need to manually edit files from the command line. + +## From a packager perspective, this .toml is coupled to the scripts/config script, +## which may be used to define custom getters/setters. However, most use cases +## should be covered automagically by the core, thus it may not be necessary +## to define a scripts/config at all! + +## ----------------------------------------------------------------------------- +## IMPORTANT: In accordance with YunoHost's spirit, please keep things simple and +## do not overwhelm the admin with tons of misunderstandable or advanced settings. +## ----------------------------------------------------------------------------- + +## The top level describe the entire config panels screen. + +## The version is a required property. +## Here a small reminder to associate config panel version with YunoHost version +## | Config | YNH | Config panel small change log | +## | ------ | --- | ------------------------------------------------------- | +## | 0.1 | 3.x | 0.1 config script not compatible with YNH >= 4.3 | +## | 1.0 | 4.3.x | The new config panel system with 'bind' property | +version = "1.0" + +## (optional) i18n property let you internationalize questions, however this feature +## is only available in core configuration panel (like yunohost domain config). +## So in app config panel this key is ignored for now, but you can internationalize +## by using a lang dictionary (see property name bellow) +# i18n = "prefix_translation_key" + +################################################################################ +#### ABOUT PANELS +################################################################################ + +## The next level describes web admin panels +## You have to choose an ID for each panel, in this example the ID is "main" +## Keep in mind this ID will be used in CLI to refer to your question, so choose +## something short and meaningfull. +## In the webadmin, each panel corresponds to a distinct tab / form +[main] + +## Define the label for your panel +## Internationalization works similarly to the 'description' and 'ask' questions in the manifest +# name.en = "Main configuration" +# name.fr = "Configuration principale" + +## (optional) If you need to trigger a service reload-or-restart after the user +## change a question in this panel, you can add your service in the list. +services = ["__APP__"] +# or services = ["nginx", "__APP__"] to also reload-or-restart nginx + +## (optional) This help properties is a short help displayed on the same line +## than the panel title but not displayed in the tab. +# help = "" + + ############################################################################ + #### ABOUT SECTIONS + ############################################################################ + + ## A panel is composed of one or several sections. + ## + ## Sections are meant to group questions together when they correspond to + ## a same subtopic. This impacts the rendering in terms of CLI prompts + ## and HTML forms + ## + ## You should choose an ID for your section, and prefix it with the panel ID + ## (Be sure to not make a typo in the panel ID, which would implicitly create + ## an other entire panel) + ## + ## We use the context of pepettes_ynh as an example, + ## which is a simple donation form app written in python, + ## and for which the admin will want to edit the configuration + [main.customization] + + ## (optional) Defining a proper title for sections is not mandatory + ## and depends on the exact rendering you're aiming for the CLI / webadmin + name = "" + + ## (optional) This help properties is a short help displayed on the same line + ## than the section title, meant to provide additional details + # help = "" + + ## (optional) As for panel, you can specify to trigger a service + ## reload-or-restart after the user change a question in this section. + ## This property is added to the panel property, it doesn't deactivate it. + ## So no need to replicate, the service list from panel services property. + # services = [] + + ## (optional) By default all questions are optionals, but you can specify a + ## default behaviour for question in the section + optional = false + + ## (optional) It's also possible with the 'visible' property to only + ## display the section depending on the user's answers to previous questions. + ## + ## Be careful that the 'visible' property should only refer to **previous** questions + ## Hence, it should not make sense to have a "visible" property on the very first section. + ## + ## Also, keep in mind that this feature only works in the webadmin and not in CLI + ## (therefore a user could be prompted in CLI for a question that may not be relevant) + # visible = true + + ######################################################################## + #### ABOUT QUESTIONS + ######################################################################## + + ## A section is compound of one or several questions. + + ## --------------------------------------------------------------------- + ## IMPORTANT: as for panel and section you have to choose an ID, but this + ## one should be unique in all this document, even if the question is in + ## an other panel. + ## --------------------------------------------------------------------- + + ## You can use same questions types and properties than in manifest.yml + ## install part. However, in YNH 4.3, a lot of change has been made to + ## extend availables questions types list. + ## See: TODO DOC LINK + + [main.customization.project_name] + + ## (required) The ask property is equivalent to the ask property in + ## the manifest. However, in config panels, questions are displayed on the + ## left side and therefore have less space to be rendered. Therefore, + ## it is better to use a short question, and use the "help" property to + ## provide additional details if necessary. + ask.en = "Name of the project" + + ## (required) The type property indicates how the question should be + ## displayed, validated and managed. Some types have specific properties. + ## + ## Types available: string, boolean, number, range, text, password, path + ## email, url, date, time, color, select, domain, user, tags, file. + ## + ## For a complete list with specific properties, see: TODO DOC LINK + type = "string" + + ######################################################################## + #### ABOUT THE BIND PROPERTY + ######################################################################## + + ## (recommended) 'bind' property is a powerful feature that let you + ## configure how and where the data will be read, validated and written. + + ## By default, 'bind property is in "settings" mode, it means it will + ## **only** read and write the value in application settings file. + ## bind = "settings" + + ## However, settings usually correspond to key/values in actual app configurations + ## Hence, a more useful mode is to have bind = ":FILENAME". In that case, YunoHost + ## will automagically find a line with "KEY=VALUE" in FILENAME + ## (with the adequate separator between KEY and VALUE) + ## + ## YunoHost will then use this value for the read/get operation. + ## During write/set operations, YunoHost will overwrite the value + ## in **both** FILENAME and in the app's settings.yml + + ## Configuration file format supported: yaml, toml, json, ini, env, php, + ## python. The feature probably works with others formats, but should be tested carefully. + + ## Note that this feature only works with relatively simple cases + ## such as `KEY: VALUE`, but won't properly work with + ## complex data structures like multilin array/lists or dictionnaries. + ## It also doesn't work with XML format, custom config function call, php define(), ... + + ## More info on TODO + # bind = ":/var/www/__APP__/settings.py" + + + ## By default, bind = ":FILENAME" will use the question ID as KEY + ## ... but the question ID may sometime not be the exact KEY name in the configuration file. + ## + ## In particular, in pepettes, the python variable is 'name' and not 'project_name' + ## (c.f. https://github.com/YunoHost-Apps/pepettes_ynh/blob/5cc2d3ffd6529cc7356ff93af92dbb6785c3ab9a/conf/settings.py##L11 ) + ## + ## In that case, the key name can be specified before the column ':' + + bind = "name:/var/www/__APP__/settings.py" + + ## --------------------------------------------------------------------- + ## IMPORTANT: other 'bind' mode exists: + ## + ## bind = "FILENAME" (with no column character before FILENAME) + ## may be used to bind to the **entire file content** (instead of a single KEY/VALUE) + ## This could be used to expose an entire configuration file, or binary files such as images + ## For example: + ## bind = "/var/www/__APP__/img/logo.png" + ## + ## bind = "null" can be used to disable reading / writing in settings. + ## This creates sort of a "virtual" or "ephemeral" question which is not related to any actual setting + ## In this mode, you are expected to define custom getter/setters/validators in scripts/config: + ## + ## getter: get__QUESTIONID() + ## setter: set__QUESTIONID() + ## validator: validate__QUESTIONID() + ## + ## You can also specify a common getter / setter / validator, with the + ## function 'bind' mode, for example here it will try to run + ## get__array_settings() first. + # bind = "array_settings()" + ## --------------------------------------------------------------------- + + ## --------------------------------------------------------------------- + ## IMPORTANT: with the exception of bind=null questions, + ## question IDs should almost **always** correspond to an app setting + ## initialized / reused during install/upgrade. + ## Not doing so may result in inconsistencies between the config panel mechanism + ## and the use of ynh_add_config + ## --------------------------------------------------------------------- + + ######################################################################## + #### OTHER GENERIC PROPERTY FOR QUESTIONS + ######################################################################## + + ## (optional) An help text for the question + help = "Fill the name of the project which will received donation" + + ## (optional) An example display as placeholder in web form + # example = "YunoHost" + + ## (optional) set to true in order to redact the value in operation logs + # redact = false + + ## (optional) A validation pattern + ## --------------------------------------------------------------------- + ## IMPORTANT: your pattern should be between simple quote, not double. + ## --------------------------------------------------------------------- + pattern.regexp = '^\w{3,30}$' + pattern.error = "The name should be at least 3 chars and less than 30 chars. Alphanumeric chars are accepted" + + ## Note: visible and optional properties are also available for questions + + + [main.customization.contact_url] + ask = "Contact url" + type = "url" + example = "mailto: contact@example.org" + help = "mailto: accepted" + pattern.regexp = '^mailto:[^@]+@[^@]+|https://$' + pattern.error = "Should be https or mailto:" + bind = ":/var/www/__APP__/settings.py" + + [main.customization.logo] + ask = "Logo" + type = "file" + accept = ".png" + help = "Fill with an already resized logo" + bind = "__FINALPATH__/img/logo.png" + + [main.customization.favicon] + ask = "Favicon" + type = "file" + accept = ".png" + help = "Fill with an already sized favicon" + bind = "__FINALPATH__/img/favicon.png" + + + [main.stripe] + name = "Stripe general info" + optional = false + + # The next alert is overwrited with a getter from the config script + [main.stripe.amount] + ask = "Donation in the month : XX € + type = "alert" + style = "success" + + [main.stripe.publishable_key] + ask = "Publishable key" + type = "string" + redact = true + help = "Indicate here the stripe publishable key" + bind = ":/var/www/__APP__/settings.py" + + [main.stripe.secret_key] + ask = "Secret key" + type = "string" + redact = true + help = "Indicate here the stripe secret key" + bind = ":/var/www/__APP__/settings.py" + + [main.stripe.prices] + ask = "Prices ID" + type = "tags" + help = """\ + Indicates here the prices ID of donation products you created in stripe interfaces. \ + Go on [Stripe products](https://dashboard.stripe.com/products) to create those donation products. \ + Fill it tag with 'FREQUENCY/CURRENCY/PRICE_ID' \ + FREQUENCY: 'one_time' or 'recuring' \ + CURRENCY: 'EUR' or 'USD' \ + PRICE_ID: ID from stripe interfaces starting with 'price_' \ + """ + pattern.regexp = '^(one_time|recuring)/(EUR|USD)/price_.*$' + pattern.error = "Please respect the format describe in help text for each price ID" diff --git a/doc/DESCRIPTION.md b/doc/DESCRIPTION.md new file mode 100644 index 0000000..0685205 --- /dev/null +++ b/doc/DESCRIPTION.md @@ -0,0 +1,9 @@ +Some long and extensive description of what the app is and does, lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. + +### Features + +- Ut enim ad minim veniam, quis nostrud exercitation ullamco ; +- Laboris nisi ut aliquip ex ea commodo consequat ; +- Duis aute irure dolor in reprehenderit in voluptate ; +- Velit esse cillum dolore eu fugiat nulla pariatur ; +- Excepteur sint occaecat cupidatat non proident, sunt in culpa." diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md new file mode 100644 index 0000000..aded581 --- /dev/null +++ b/doc/DISCLAIMER.md @@ -0,0 +1,12 @@ +* Any known limitations, constrains or stuff not working, such as (but not limited to): + * requiring a full dedicated domain ? + * architectures not supported ? + * not-working single-sign on or LDAP integration ? + * the app requires an important amount of RAM / disk / .. to install or to work properly + * etc... + +* Other infos that people should be aware of, such as: + * any specific step to perform after installing (such as manually finishing the install, specific admin credentials, ...) + * how to configure / administrate the application if it ain't obvious + * upgrade process / specificities / things to be aware of ? + * security considerations ? diff --git a/doc/screenshots/cultivonsfull.png b/doc/screenshots/cultivonsfull.png new file mode 100644 index 0000000000000000000000000000000000000000..d56d7c1278d39e5b3d88898b6a3ec28803ba36b4 GIT binary patch literal 249307 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�+?Ooe;yfC6fhNCnPYMkqE$5H(29?p##er{@h)KO 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 H_3(cI9Q=Oh literal 0 HcmV?d00001 diff --git a/doc/screenshots/example.jpg b/doc/screenshots/example.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a1efa1a36d593384df59dc13db03fa83b0436d69 GIT binary patch literal 35451 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 UE-)&$xd9C0IsX9d#{5|Pe`qLcKmY&$ literal 0 HcmV?d00001 diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..d023ab4 --- /dev/null +++ b/manifest.json @@ -0,0 +1,71 @@ +{ + "name": "Cultivons", + "id": "cultivons", + "packaging_format": 1, + "description": { + "en": "Explain in *a few (10~15) words* the purpose of the app or what it actually does (it is meant to give a rough idea to users browsing a catalog of 100+ apps)", + "fr": "Expliquez en *quelques* (10~15) mots l'utilité de l'app ou ce qu'elle fait (l'objectif est de donner une idée grossière pour des utilisateurs qui naviguent dans un catalogue de 100+ apps)" + }, + "version": "1.0~ynh1", + "url": "https://xulops.net/forge/cultivons.php", + "upstream": { + "license": "free", + "website": "https://xulops.net/forge/cultivons.php", + "demo": "https://cultivons-demo.xulops.net", + "admindoc": "", + "userdoc": "", + "code": "" + }, + "license": "free", + "maintainer": { + "name": "Pierre Levasseur", + "email": "pierre.levasseur+yunohost@free.fr" + }, + "requirements": { + "yunohost": ">= 11.0.0" + }, + "multi_instance": true, + "services": [ + "nginx", + "php7.4-fpm" + ], + "arguments": { + "install": [ + { + "name": "domain", + "type": "domain" + }, + { + "name": "is_public", + "type": "boolean", + "default": false, + "help" : { + "fr" : "Cette page sera accessible par n'importe qui. En revanche, la configuration reste personnelle", + "en" : "The page will be accessible by anyone." + } + }, + { + "name": "language", + "type": "string", + "ask": { + "en": "Choose the application language", + "fr": "Choisissez la langue de l'application" + }, + "choices": ["fr", "en"], + "default": "fr" + }, + { + "name": "admin", + "type": "user" + }, + { + "name": "password", + "type": "password", + "help": { + "en": "Use the help field to add an information for the admin about this question.", + "fr": "Utilisez le champ aide pour ajouter une information à l'intention de l'administrateur à propos de cette question." + } + } + ] + } +} diff --git a/scripts/_common.sh b/scripts/_common.sh new file mode 100644 index 0000000..fbd94b3 --- /dev/null +++ b/scripts/_common.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +#================================================= +# COMMON VARIABLES +#================================================= +# PHP APP SPECIFIC +#================================================= +# Depending on its version, YunoHost uses different default PHP version: +## YunoHost version "11.X" => PHP 7.4 +## YunoHost version "4.X" => PHP 7.3 +# +# This behaviour can be overridden by setting the YNH_PHP_VERSION variable +#YNH_PHP_VERSION=7.3 +#YNH_PHP_VERSION=7.4 +YNH_PHP_VERSION=8.0 +# For more information, see the PHP application helper: https://github.com/YunoHost/yunohost/blob/dev/helpers/php#L3-L6 +# Or this app package depending on PHP: https://github.com/YunoHost-Apps/grav_ynh/blob/master/scripts/_common.sh +# PHP dependencies used by the app (must be on a single line) +#php_dependencies="php$YNH_PHP_VERSION-deb1 php$YNH_PHP_VERSION-deb2" +# or, if you do not need a custom YNH_PHP_VERSION: +php_dependencies="php$YNH_DEFAULT_PHP_VERSION-sqlite3" + +# dependencies used by the app (must be on a single line) +pkg_dependencies="$php_dependencies" + +#================================================= +# PERSONAL HELPERS +#================================================= + +#================================================= +# EXPERIMENTAL HELPERS +#================================================= + +#================================================= +# FUTURE OFFICIAL HELPERS +#================================================= diff --git a/scripts/backup b/scripts/backup new file mode 100644 index 0000000..f99225d --- /dev/null +++ b/scripts/backup @@ -0,0 +1,114 @@ +#!/bin/bash + +#================================================= +# GENERIC START +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts +source ../settings/scripts/_common.sh +source /usr/share/yunohost/helpers + +#================================================= +# MANAGE SCRIPT FAILURE +#================================================= + +ynh_clean_setup () { + ### Remove this function if there's nothing to clean before calling the remove script. + true +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + +#================================================= +# LOAD SETTINGS +#================================================= +ynh_print_info --message="Loading installation settings..." + +app=$YNH_APP_INSTANCE_NAME + +final_path=$(ynh_app_setting_get --app=$app --key=final_path) +domain=$(ynh_app_setting_get --app=$app --key=domain) +db_name=$(ynh_app_setting_get --app=$app --key=db_name) +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +datadir=$(ynh_app_setting_get --app=$app --key=datadir) + +#================================================= +# DECLARE DATA AND CONF FILES TO BACKUP +#================================================= +ynh_print_info --message="Declaring files to be backed up..." + +### N.B. : the following 'ynh_backup' calls are only a *declaration* of what needs +### to be backuped and not an actual copy of any file. The actual backup that +### creates and fill the archive with the files happens in the core after this +### script is called. Hence ynh_backups calls takes basically 0 seconds to run. + +#================================================= +# BACKUP THE APP MAIN DIR +#================================================= + +ynh_backup --src_path="$final_path" + +#================================================= +# BACKUP THE DATA DIR +#================================================= + +ynh_backup --src_path="$datadir" --is_big + +#================================================= +# BACKUP THE NGINX CONFIGURATION +#================================================= + +ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" + +#================================================= +# BACKUP THE PHP-FPM CONFIGURATION +#================================================= + +ynh_backup --src_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" + +#================================================= +# BACKUP FAIL2BAN CONFIGURATION +#================================================= + +ynh_backup --src_path="/etc/fail2ban/jail.d/$app.conf" +ynh_backup --src_path="/etc/fail2ban/filter.d/$app.conf" + +#================================================= +# SPECIFIC BACKUP +#================================================= +# BACKUP LOGROTATE +#================================================= + +ynh_backup --src_path="/etc/logrotate.d/$app" + +#================================================= +# BACKUP SYSTEMD +#================================================= + +ynh_backup --src_path="/etc/systemd/system/$app.service" + +#================================================= +# BACKUP VARIOUS FILES +#================================================= + +ynh_backup --src_path="/etc/cron.d/$app" + +ynh_backup --src_path="/etc/$app/" + +#================================================= +# BACKUP THE MYSQL DATABASE +#================================================= +ynh_print_info --message="Backing up the MySQL database..." + +### (However, things like MySQL dumps *do* take some time to run, though the +### copy of the generated dump to the archive still happens later) + +ynh_mysql_dump_db --database="$db_name" > db.sql + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_print_info --message="Backup script completed for $app. (YunoHost will then actually copy those files to the archive)." diff --git a/scripts/change_url b/scripts/change_url new file mode 100644 index 0000000..322641b --- /dev/null +++ b/scripts/change_url @@ -0,0 +1,134 @@ +#!/bin/bash + +#================================================= +# GENERIC STARTING +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# RETRIEVE ARGUMENTS +#================================================= + +old_domain=$YNH_APP_OLD_DOMAIN +old_path=$YNH_APP_OLD_PATH + +new_domain=$YNH_APP_NEW_DOMAIN +new_path=$YNH_APP_NEW_PATH + +app=$YNH_APP_INSTANCE_NAME + +#================================================= +# LOAD SETTINGS +#================================================= +ynh_script_progression --message="Loading installation settings..." --weight=1 + +# Needed for helper "ynh_add_nginx_config" +final_path=$(ynh_app_setting_get --app=$app --key=final_path) + +# Add settings here as needed by your application +#db_name=$(ynh_app_setting_get --app=$app --key=db_name) +#db_user=$db_name +#db_pwd=$(ynh_app_setting_get --app=$app --key=db_pwd) + +#================================================= +# BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before changing its URL (may take a while)..." --weight=1 + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # Remove the new domain config file, the remove script won't do it as it doesn't know yet its location. + ynh_secure_remove --file="/etc/nginx/conf.d/$new_domain.d/$app.conf" + + # Restore it if the upgrade fails + ynh_restore_upgradebackup +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + +#================================================= +# CHECK WHICH PARTS SHOULD BE CHANGED +#================================================= + +change_domain=0 +if [ "$old_domain" != "$new_domain" ] +then + change_domain=1 +fi + +change_path=0 +if [ "$old_path" != "$new_path" ] +then + change_path=1 +fi + +#================================================= +# STANDARD MODIFICATIONS +#================================================= +# STOP SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Stopping a systemd service..." --weight=1 + +ynh_systemd_action --service_name=$app --action="stop" --log_path="/var/log/$app/$app.log" + +#================================================= +# MODIFY URL IN NGINX CONF +#================================================= +ynh_script_progression --message="Updating NGINX web server configuration..." --weight=1 + +nginx_conf_path=/etc/nginx/conf.d/$old_domain.d/$app.conf + +# Change the path in the NGINX config file +if [ $change_path -eq 1 ] +then + # Make a backup of the original NGINX config file if modified + ynh_backup_if_checksum_is_different --file="$nginx_conf_path" + # Set global variables for NGINX helper + domain="$old_domain" + path_url="$new_path" + # Create a dedicated NGINX config + ynh_add_nginx_config +fi + +# Change the domain for NGINX +if [ $change_domain -eq 1 ] +then + # Delete file checksum for the old conf file location + ynh_delete_file_checksum --file="$nginx_conf_path" + mv $nginx_conf_path /etc/nginx/conf.d/$new_domain.d/$app.conf + # Store file checksum for the new config file location + ynh_store_file_checksum --file="/etc/nginx/conf.d/$new_domain.d/$app.conf" +fi + +#================================================= +# SPECIFIC MODIFICATIONS +#================================================= +# ... +#================================================= + +#================================================= +# GENERIC FINALISATION +#================================================= +# START SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Starting a systemd service..." --weight=1 + +ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" + +#================================================= +# RELOAD NGINX +#================================================= +ynh_script_progression --message="Reloading NGINX web server..." --weight=1 + +ynh_systemd_action --service_name=nginx --action=reload + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Change of URL completed for $app" --last diff --git a/scripts/install b/scripts/install new file mode 100644 index 0000000..c53f0f1 --- /dev/null +++ b/scripts/install @@ -0,0 +1,191 @@ +#!/bin/bash + +#================================================= +# GENERIC START +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# MANAGE SCRIPT FAILURE +#================================================= + +ynh_clean_setup () { + ### Remove this function if there's nothing to clean before calling the remove script. + true +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + +#================================================= +# RETRIEVE ARGUMENTS FROM THE MANIFEST +#================================================= + +domain=$YNH_APP_ARG_DOMAIN +path_url="/" +is_public=$YNH_APP_ARG_IS_PUBLIC +language=$YNH_APP_ARG_LANGUAGE +admin=$YNH_APP_ARG_ADMIN +password=$YNH_APP_ARG_PASSWORD + +app=$YNH_APP_INSTANCE_NAME + +#================================================= +# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS +#================================================= +ynh_script_progression --message="Validating installation parameters..." --weight=1 + +final_path=/var/www/$app +test ! -e "$final_path" || ynh_die --message="This path already contains a folder" + +# Register (book) web path +ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url + +#================================================= +# STORE SETTINGS FROM MANIFEST +#================================================= +ynh_script_progression --message="Storing installation settings..." --weight=1 + +ynh_app_setting_set --app=$app --key=domain --value=$domain +ynh_app_setting_set --app=$app --key=path --value=$path_url +ynh_app_setting_set --app=$app --key=language --value=$language +ynh_app_setting_set --app=$app --key=admin --value=$admin + +#================================================= +# STANDARD MODIFICATIONS +#================================================= + +#================================================= +# INSTALL DEPENDENCIES +#================================================= +ynh_script_progression --message="Installing dependencies..." --weight=1 + +### `ynh_install_app_dependencies` allows you to add any "apt" dependencies to the package. +### Those deb packages will be installed as dependencies of this package. +### If you're not using this helper: +### - Remove the section "REMOVE DEPENDENCIES" in the remove script +### - Remove the variable "pkg_dependencies" in _common.sh +### - As well as the section "REINSTALL DEPENDENCIES" in the restore script +### - And the section "UPGRADE DEPENDENCIES" in the upgrade script + +ynh_install_app_dependencies $pkg_dependencies + +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Configuring system user..." --weight=1 + +# Create a system user +ynh_system_user_create --username=$app --home_dir="$final_path" + +#================================================= +# DOWNLOAD, CHECK AND UNPACK SOURCE +#================================================= +ynh_script_progression --message="Setting up source files..." --weight=1 + +### `ynh_setup_source` is used to install an app from a zip or tar.gz file, +### downloaded from an upstream source, like a git repository. +### `ynh_setup_source` use the file conf/app.src + +ynh_app_setting_set --app=$app --key=final_path --value=$final_path +# Download, check integrity, uncompress and patch the source from app.src +ynh_setup_source --dest_dir="$final_path" + +# FIXME: this should be managed by the core in the future +# Here, as a packager, you may have to tweak the ownerhsip/permissions +# such that the appropriate users (e.g. maybe www-data) can access +# files in some cases. +# But FOR THE LOVE OF GOD, do not allow r/x for "others" on the entire folder - +# this will be treated as a security issue. +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + +#chmod g+rwx "$final_path/tmp" +#chmod g+rwx "$final_path/log" +#chmod g+rx "$final_path/db" +#chmod g+rx "$final_path/db/cultivons.db" +#chmod g+rx "$final_path/image" +#chmod g+rx "$final_path/image/document" + +#================================================= +# PHP-FPM CONFIGURATION +#================================================= +ynh_script_progression --message="Configuring PHP-FPM..." --weight=1 + +### `ynh_add_fpm_config` is used to set up a PHP config. +### You can remove it if your app doesn't use PHP. +### `ynh_add_fpm_config` will use the files conf/php-fpm.conf +### If you're not using these lines: +### - You can remove these files in conf/. +### - Remove the section "BACKUP THE PHP-FPM CONFIGURATION" in the backup script +### - Remove also the section "REMOVE PHP-FPM CONFIGURATION" in the remove script +### - As well as the section "RESTORE THE PHP-FPM CONFIGURATION" in the restore script +### with the reload at the end of the script. +### - And the section "PHP-FPM CONFIGURATION" in the upgrade script + +# Create a dedicated PHP-FPM config +ynh_add_fpm_config + +#================================================= +# NGINX CONFIGURATION +#================================================= +ynh_script_progression --message="Configuring NGINX web server..." --weight=1 + +### `ynh_add_nginx_config` will use the file conf/nginx.conf + +# Create a dedicated NGINX config +ynh_add_nginx_config + +#================================================= +# SPECIFIC SETUP +#================================================= +# ... +#================================================= + +#================================================= +# GENERIC FINALIZATION +#================================================= +# SETUP LOGROTATE +#================================================= +ynh_script_progression --message="Configuring log rotation..." --weight=1 + +### `ynh_use_logrotate` is used to configure a logrotate configuration for the logs of this app. +### Use this helper only if there is effectively a log file for this app. +### If you're not using this helper: +### - Remove the section "BACKUP LOGROTATE" in the backup script +### - Remove also the section "REMOVE LOGROTATE CONFIGURATION" in the remove script +### - As well as the section "RESTORE THE LOGROTATE CONFIGURATION" in the restore script +### - And the section "SETUP LOGROTATE" in the upgrade script + +# Use logrotate to manage application logfile(s) +ynh_use_logrotate + +#================================================= +# SETUP SSOWAT +#================================================= +ynh_script_progression --message="Configuring permissions..." --weight=1 + +# Make app public if necessary +if [ $is_public -eq 1 ] +then + # Everyone can access the app. + # The "main" permission is automatically created before the install script. + ynh_permission_update --permission="main" --add="visitors" +fi + +#================================================= +# RELOAD NGINX +#================================================= +ynh_script_progression --message="Reloading NGINX web server..." --weight=1 + +ynh_systemd_action --service_name=nginx --action=reload + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Installation of $app completed" --last diff --git a/scripts/remove b/scripts/remove new file mode 100644 index 0000000..9aa843d --- /dev/null +++ b/scripts/remove @@ -0,0 +1,88 @@ +#!/bin/bash + +#================================================= +# GENERIC START +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# LOAD SETTINGS +#================================================= +ynh_script_progression --message="Loading installation settings..." --weight=1 + +app=$YNH_APP_INSTANCE_NAME + +domain=$(ynh_app_setting_get --app=$app --key=domain) +port=$(ynh_app_setting_get --app=$app --key=port) +db_name=$(ynh_app_setting_get --app=$app --key=db_name) +db_user=$db_name +final_path=$(ynh_app_setting_get --app=$app --key=final_path) +datadir=$(ynh_app_setting_get --app=$app --key=datadir) + +#================================================= +# STANDARD REMOVE +#================================================= + +#================================================= +# REMOVE LOGROTATE CONFIGURATION +#================================================= +ynh_script_progression --message="Removing logrotate configuration..." --weight=1 + +# Remove the app-specific logrotate config +ynh_remove_logrotate + +#================================================= +# REMOVE APP MAIN DIR +#================================================= +ynh_script_progression --message="Removing app main directory..." --weight=1 + +# Remove the app directory securely +ynh_secure_remove --file="$final_path" + +#================================================= +# REMOVE NGINX CONFIGURATION +#================================================= +ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1 + +# Remove the dedicated NGINX config +ynh_remove_nginx_config + +#================================================= +# REMOVE PHP-FPM CONFIGURATION +#================================================= +ynh_script_progression --message="Removing PHP-FPM configuration..." --weight=1 + +# Remove the dedicated PHP-FPM config +ynh_remove_fpm_config + +#================================================= +# REMOVE DEPENDENCIES +#================================================= +ynh_script_progression --message="Removing dependencies..." --weight=1 + +# Remove metapackage and its dependencies +#ynh_remove_app_dependencies + +#================================================= +# SPECIFIC REMOVE +#================================================= + +#================================================= +# GENERIC FINALIZATION +#================================================= +# REMOVE DEDICATED USER +#================================================= +ynh_script_progression --message="Removing the dedicated system user..." --weight=1 + +# Delete a system user +ynh_system_user_delete --username=$app + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Removal of $app completed" --last diff --git a/scripts/restore b/scripts/restore new file mode 100644 index 0000000..1be949b --- /dev/null +++ b/scripts/restore @@ -0,0 +1,187 @@ +#!/bin/bash + +#================================================= +# GENERIC START +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +# Keep this path for calling _common.sh inside the execution's context of backup and restore scripts +source ../settings/scripts/_common.sh +source /usr/share/yunohost/helpers + +#================================================= +# MANAGE SCRIPT FAILURE +#================================================= + +ynh_clean_setup () { + #### Remove this function if there's nothing to clean before calling the remove script. + true +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + +#================================================= +# LOAD SETTINGS +#================================================= +ynh_script_progression --message="Loading installation settings..." --weight=1 + +app=$YNH_APP_INSTANCE_NAME + +domain=$(ynh_app_setting_get --app=$app --key=domain) +path_url=$(ynh_app_setting_get --app=$app --key=path) +final_path=$(ynh_app_setting_get --app=$app --key=final_path) +db_name=$(ynh_app_setting_get --app=$app --key=db_name) +db_user=$db_name +phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +datadir=$(ynh_app_setting_get --app=$app --key=datadir) + +#================================================= +# CHECK IF THE APP CAN BE RESTORED +#================================================= +ynh_script_progression --message="Validating restoration parameters..." --weight=1 + +test ! -d $final_path \ + || ynh_die --message="There is already a directory: $final_path " + +#================================================= +# STANDARD RESTORATION STEPS +#================================================= +# RECREATE THE DEDICATED USER +#================================================= +ynh_script_progression --message="Recreating the dedicated system user..." --weight=1 + +# Create the dedicated user (if not existing) +ynh_system_user_create --username=$app --home_dir="$final_path" + +#================================================= +# RESTORE THE APP MAIN DIR +#================================================= +ynh_script_progression --message="Restoring the app main directory..." --weight=1 + +ynh_restore_file --origin_path="$final_path" + +# FIXME: this should be managed by the core in the future +# Here, as a packager, you may have to tweak the ownerhsip/permissions +# such that the appropriate users (e.g. maybe www-data) can access +# files in some cases. +# But FOR THE LOVE OF GOD, do not allow r/x for "others" on the entire folder - +# this will be treated as a security issue. +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + +#================================================= +# RESTORE THE DATA DIRECTORY +#================================================= +ynh_script_progression --message="Restoring the data directory..." --weight=1 + +ynh_restore_file --origin_path="$datadir" --not_mandatory + +mkdir -p $datadir + +# FIXME: this should be managed by the core in the future +# Here, as a packager, you may have to tweak the ownerhsip/permissions +# such that the appropriate users (e.g. maybe www-data) can access +# files in some cases. +# But FOR THE LOVE OF GOD, do not allow r/x for "others" on the entire folder - +# this will be treated as a security issue. +chmod 750 "$datadir" +chmod -R o-rwx "$datadir" +chown -R $app:www-data "$datadir" + +#================================================= +# RESTORE FAIL2BAN CONFIGURATION +#================================================= +ynh_script_progression --message="Restoring the Fail2Ban configuration..." --weight=1 + +ynh_restore_file --origin_path="/etc/fail2ban/jail.d/$app.conf" +ynh_restore_file --origin_path="/etc/fail2ban/filter.d/$app.conf" +ynh_systemd_action --action=restart --service_name=fail2ban + +#================================================= +# SPECIFIC RESTORATION +#================================================= +# REINSTALL DEPENDENCIES +#================================================= +ynh_script_progression --message="Reinstalling dependencies..." --weight=1 + +# Define and install dependencies +ynh_install_app_dependencies $pkg_dependencies + +#================================================= +# RESTORE THE PHP-FPM CONFIGURATION +#================================================= +ynh_script_progression --message="Restoring the PHP-FPM configuration..." --time --weight=1 + +ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" + +#================================================= +# RESTORE THE NGINX CONFIGURATION +#================================================= +ynh_script_progression --message="Restoring the NGINX web server configuration..." --time --weight=1 + +ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" + +#================================================= +# RESTORE THE MYSQL DATABASE +#================================================= +ynh_script_progression --message="Restoring the MySQL database..." --weight=1 + +db_pwd=$(ynh_app_setting_get --app=$app --key=mysqlpwd) +ynh_mysql_setup_db --db_user=$db_user --db_name=$db_name --db_pwd=$db_pwd +ynh_mysql_connect_as --user=$db_user --password=$db_pwd --database=$db_name < ./db.sql + +#================================================= +# RESTORE VARIOUS FILES +#================================================= +ynh_script_progression --message="Restoring various files..." --weight=1 + +ynh_restore_file --origin_path="/etc/cron.d/$app" + +ynh_restore_file --origin_path="/etc/$app/" + +#================================================= +# RESTORE SYSTEMD +#================================================= +ynh_script_progression --message="Restoring the systemd configuration..." --weight=1 + +ynh_restore_file --origin_path="/etc/systemd/system/$app.service" +systemctl enable $app.service --quiet + +#================================================= +# RESTORE THE LOGROTATE CONFIGURATION +#================================================= +ynh_script_progression --message="Restoring the logrotate configuration..." --weight=1 + +ynh_restore_file --origin_path="/etc/logrotate.d/$app" + +#================================================= +# INTEGRATE SERVICE IN YUNOHOST +#================================================= +ynh_script_progression --message="Integrating service in YunoHost..." --weight=1 + +yunohost service add $app --description="A short description of the app" --log="/var/log/$app/$app.log" + +#================================================= +# START SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Starting a systemd service..." --weight=1 + +ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" + +#================================================= +# GENERIC FINALIZATION +#================================================= +# RELOAD NGINX AND PHP-FPM +#================================================= +ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1 + +ynh_systemd_action --service_name=php$phpversion-fpm --action=reload +ynh_systemd_action --service_name=nginx --action=reload + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Restoration completed for $app" --last diff --git a/scripts/upgrade b/scripts/upgrade new file mode 100644 index 0000000..f38c139 --- /dev/null +++ b/scripts/upgrade @@ -0,0 +1,239 @@ +#!/bin/bash + +#================================================= +# GENERIC START +#================================================= +# IMPORT GENERIC HELPERS +#================================================= + +source _common.sh +source /usr/share/yunohost/helpers + +#================================================= +# LOAD SETTINGS +#================================================= +ynh_script_progression --message="Loading installation settings..." --weight=1 + +app=$YNH_APP_INSTANCE_NAME + +domain=$(ynh_app_setting_get --app=$app --key=domain) +path_url=$(ynh_app_setting_get --app=$app --key=path) +language=$(ynh_app_setting_get --app=$app --key=language) +admin=$(ynh_app_setting_get --app=$app --key=admin) +final_path=$(ynh_app_setting_get --app=$app --key=final_path) +db_name=$(ynh_app_setting_get --app=$app --key=db_name) + +#================================================= +# CHECK VERSION +#================================================= + +### This helper will compare the version of the currently installed app and the version of the upstream package. +### $upgrade_type can have 2 different values +### - UPGRADE_APP if the upstream app version has changed +### - UPGRADE_PACKAGE if only the YunoHost package has changed +### ynh_check_app_version_changed will stop the upgrade if the app is up to date. +### UPGRADE_APP should be used to upgrade the core app only if there's an upgrade to do. +upgrade_type=$(ynh_check_app_version_changed) + +#================================================= +# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." --weight=1 + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # Restore it if the upgrade fails + ynh_restore_upgradebackup +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + +#================================================= +# STANDARD UPGRADE STEPS +#================================================= +# STOP SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Stopping a systemd service..." --weight=1 + +ynh_systemd_action --service_name=$app --action="stop" --log_path="/var/log/$app/$app.log" + +#================================================= +# ENSURE DOWNWARD COMPATIBILITY +#================================================= +ynh_script_progression --message="Ensuring downward compatibility..." --weight=1 + +# +# N.B. : the followings setting migrations snippets are provided as *EXAMPLES* +# of what you may want to do in some cases (e.g. a setting was not defined on +# some legacy installs and you therefore want to initiaze stuff during upgrade) +# + +# If db_name doesn't exist, create it +#if [ -z "$db_name" ]; then +# db_name=$(ynh_sanitize_dbid --db_name=$app) +# ynh_app_setting_set --app=$app --key=db_name --value=$db_name +#fi + +# If final_path doesn't exist, create it +#if [ -z "$final_path" ]; then +# final_path=/var/www/$app +# ynh_app_setting_set --app=$app --key=final_path --value=$final_path +#fi + +### If nobody installed your app before 4.1, +### then you may safely remove these lines + +# Cleaning legacy permissions +if ynh_legacy_permissions_exists; then + ynh_legacy_permissions_delete_all + + ynh_app_setting_delete --app=$app --key=is_public +fi + +if ! ynh_permission_exists --permission="admin"; then + # Create the required permissions + ynh_permission_create --permission="admin" --url="/admin" --allowed=$admin +fi + +# Create a permission if needed +if ! ynh_permission_exists --permission="api"; then + ynh_permission_create --permission="api" --url="/api" --allowed="visitors" --show_tile="false" --protected="true" +fi + +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1 + +# Create a dedicated user (if not existing) +ynh_system_user_create --username=$app --home_dir="$final_path" + +#================================================= +# DOWNLOAD, CHECK AND UNPACK SOURCE +#================================================= + +if [ "$upgrade_type" == "UPGRADE_APP" ] +then + ynh_script_progression --message="Upgrading source files..." --weight=1 + + # Download, check integrity, uncompress and patch the source from app.src + ynh_setup_source --dest_dir="$final_path" +fi + +# FIXME: this should be managed by the core in the future +# Here, as a packager, you may have to tweak the ownerhsip/permissions +# such that the appropriate users (e.g. maybe www-data) can access +# files in some cases. +# But FOR THE LOVE OF GOD, do not allow r/x for "others" on the entire folder - +# this will be treated as a security issue. +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + +#================================================= +# UPGRADE DEPENDENCIES +#================================================= +ynh_script_progression --message="Upgrading dependencies..." --weight=1 + +ynh_install_app_dependencies $pkg_dependencies + +#================================================= +# PHP-FPM CONFIGURATION +#================================================= +ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=1 + +# Create a dedicated PHP-FPM config +ynh_add_fpm_config + +#================================================= +# NGINX CONFIGURATION +#================================================= +ynh_script_progression --message="Upgrading NGINX web server configuration..." --time --weight=1 + +# Create a dedicated NGINX config +ynh_add_nginx_config + +#================================================= +# SPECIFIC UPGRADE +#================================================= +# ... +#================================================= + +#================================================= +# UPDATE A CONFIG FILE +#================================================= +ynh_script_progression --message="Updating a configuration file..." --weight=1 + +### Same as during install +### +### The file will automatically be backed-up if it's found to be manually modified (because +### ynh_add_config keeps track of the file's checksum) + +ynh_add_config --template="some_config_file" --destination="$final_path/some_config_file" + +# FIXME: this should be handled by the core in the future +# You may need to use chmod 600 instead of 400, +# for example if the app is expected to be able to modify its own config +chmod 400 "$final_path/some_config_file" +chown $app:$app "$final_path/some_config_file" + +### For more complex cases where you want to replace stuff using regexes, +### you shoud rely on ynh_replace_string (which is basically a wrapper for sed) +### When doing so, you also need to manually call ynh_store_file_checksum +### +### ynh_replace_string --match_string="match_string" --replace_string="replace_string" --target_file="$final_path/some_config_file" +### ynh_store_file_checksum --file="$final_path/some_config_file" + +#================================================= +# SETUP SYSTEMD +#================================================= +ynh_script_progression --message="Upgrading systemd configuration..." --weight=1 + +# Create a dedicated systemd config +ynh_add_systemd_config + +#================================================= +# GENERIC FINALIZATION +#================================================= +# SETUP LOGROTATE +#================================================= +ynh_script_progression --message="Upgrading logrotate configuration..." --weight=1 + +# Use logrotate to manage app-specific logfile(s) +ynh_use_logrotate --non-append + +#================================================= +# INTEGRATE SERVICE IN YUNOHOST +#================================================= +ynh_script_progression --message="Integrating service in YunoHost..." --weight=1 + +yunohost service add $app --description="A short description of the app" --log="/var/log/$app/$app.log" + +#================================================= +# START SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Starting a systemd service..." --weight=1 + +ynh_systemd_action --service_name=$app --action="start" --log_path="/var/log/$app/$app.log" + +#================================================= +# UPGRADE FAIL2BAN +#================================================= +ynh_script_progression --message="Reconfiguring Fail2Ban..." --weight=1 + +# Create a dedicated Fail2Ban config +ynh_add_fail2ban_config --logpath="/var/log/nginx/${domain}-error.log" --failregex="Regex to match into the log for a failed login" + +#================================================= +# RELOAD NGINX +#================================================= +ynh_script_progression --message="Reloading NGINX web server..." --weight=1 + +ynh_systemd_action --service_name=nginx --action=reload + +#================================================= +# END OF SCRIPT +#================================================= + +ynh_script_progression --message="Upgrade of $app completed" --last