You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
pvincent
ea4da3c270
|
3 years ago | |
---|---|---|
common | 4 years ago | |
data | 4 years ago | |
js | 3 years ago | |
lang/master/tpl | 3 years ago | |
src | 3 years ago | |
www | 4 years ago | |
.gitignore | 3 years ago | |
.semver_git_tag | 3 years ago | |
LICENSE | 4 years ago | |
Makefile | 3 years ago | |
README.md | 3 years ago | |
cagette.hxml | 3 years ago | |
cagetteJs.hxml | 3 years ago | |
config.xml.dist | 3 years ago | |
package.json | 3 years ago | |
potGeneration.hxml | 4 years ago |
README.md
CAGETTE PEI
Fourche du logiciel Cagette.net à partir de la version 0.9.2 Novembre 2018
Certaines portions du code source de Cagette.net n'étant plus disponibles en téléchargement, j'ai repris sur la base d'un existant pour adapter au marché local réunionnais et leurs AMAPéi.
INSTALL FROM SCRATCH (debian-buster)
- apt install -y curl
- curl -L https://deb.nodesource.com/setup_8.x | bash -
- apt install -y nodejs=8.17.0-1nodesource1
- apt install -y sudo haxe apache2 make git imagemagick gettext libapache2-mod-neko mariadb-server
- mysql -u root <<EOF CREATE DATABASE cagettepei; GRANT ALL ON cagettepei.* TO 'cagettepei'@'%' IDENTIFIED BY 'cagettepei'; EOF
- cd /var/www
- git clone https://git.artcode.re/cagetters/cagettepei.git
- cd cagettepei
- make install ENV=dev # first time
- make compile # classes
- make templates # templates + i18n
- make install ENV=dev # first time
- vim /etc/apache2/sites-available/cagettepei.conf
<VirtualHost *:80>
ServerName cagettepei
DirectoryIndex index.n
DocumentRoot /var/www/cagettepei/www/
</VirtualHost>
- sed -i '/<Directory /var/www/>/,/</Directory>/ s/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf
- a2dissite 000-default.conf
- a2ensite cagettepei.conf
- a2enmod neko rewrite
- systemctl restart apache2
CONFIGURATION
- cd /var/www/cagettepei
- vim config.xml
<config
host="<DOMAIN.TLD>"
key="<SECRET_PHRASE>"
name = "CagettePéi"
default_email = "<EMAIL>"
webmaster_email = "<EMAIL>"
database="mysql://cagettepei:cagettepei@localhost/cagettepei"
smtp_host="localhost"
smtp_port="25"
smtp_user=""
smtp_pass=""
lang="fr"
langs="fr"
langnames="Français"
maintain="0"
debug="0"
sqllog="0"
cache="1"
cachetpl="0"
/>
ADMIN RESET PASSWORD
go to http://localhost for ERROR + table regeneration, then
- cd /var/www/cagettepei
- SECRET=$(grep key= config.xml | cut -d= -f2 | cut -d'"' -f2)
- echo "insert into User values (1,'fr',MD5('${SECRET}cagettepei'),1,'Administrateur','Cagette Péi', 'admin', null, null, null, null, null, null, null, null, null, now(), now(),6,null, null)" | mysql -h localhost -u cagettepei -pcagettepei cagettepei
then, connect with admin / cagettepei
change admin password
- echo "update User set pass=MD5('${SECRET}cagettepei') where id=1" | mysql -h localhost -u cagettepei -pcagettepei cagettepei
SYSTEMD-TIMERS
-
vim /var/www/cagettepei-batch
#!/bin/bash case $1 in minute);; daily);; *) echo "expected [minute|daily]" && exit 1;; esac SELECTOR=$1 for i in /var/www/cagettepei-* ; do if [[ -d $i ]]; then cd $i/www echo "cron-$SELECTOR in: $i" neko index.n cron/$SELECTOR echo fi done
-
chmod +x /var/www/cagettepei-batch
-
vim /etc/systemd/system/cagettepei-batch-minute.service
[Unit]
Description=Run batch cagettepei every minute
[Service]
User=www-data
SyslogIdentifier=cagettepei
ExecStart=/var/www/cagettepei-batch minute
[Install]
WantedBy=multi-user.target
- vim /etc/systemd/system/cagettepei-batch-day.service
[Unit]
Description=Run batch cagettepei every day
[Service]
User=www-data
SyslogIdentifier=cagettepei
ExecStart=/var/www/cagettepei-batch daily
[Install]
WantedBy=multi-user.target
- vim /etc/systemd/system/cagettepei-batch-minute.timer
[Unit]
Description=Timer for batch cagettepei every minute
Requires=apache2.service
[Timer]
OnCalendar=minutely
Unit=cagettepei-batch-minute.service
[Install]
WantedBy=timers.target
- vim /etc/systemd/system/cagettepei-batch-day.timer
[Unit]
Description=Timer for batch cagettepei every day
Requires=apache2.service
[Timer]
OnCalendar=daily
Unit=cagettepei-batch-day.service
[Install]
WantedBy=timers.target
- systemctl daemon-reload
- systemctl edit apache2 # bind the 2 timers to apache2 cagette
[Unit]
BindsTo = cagettepei-batch-minute.timer cagettepei-batch-day.timer
- systemctl enable cagettepei-batch-minute.timer cagettepei-batch-day.timer
- systemctl start cagettepei-batch-minute.timer cagettepei-batch-day.timer