eolisation

This commit is contained in:
2020-05-11 17:03:33 +02:00
parent b4f9ebf327
commit 59cd54b6d3
10 changed files with 194 additions and 2 deletions

View File

@@ -0,0 +1,5 @@
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
CREATE DATABASE schedule DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

79
dicos/25_schedule.xml Normal file
View File

@@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<creole>
<files>
<file filelist='schedule' name='/etc/eole/eole-db.d/schedule-db.yml' rm='True' mkdir='True'/>
</files>
<containers>
<container name='web'>
<package>schedule-apps</package>
<!-- service de configuration apache -->
<service method="apache" servicelist="schedule">schedule</service>
<!-- template -->
<file filelist='schedule' name='/etc/apache2/sites-available/schedule' source='schedule-apache.conf' />
<file filelist='schedule' name='/var/www/html/schedule/rest/.env.local' source='schedule-env.local' rm='True'/>
<file filelist='schedule' name='/var/www/html/schedule/rest/proxy.sh' source='schedule-proxy.sh' rm='True'/>
</container>
</containers>
<variables>
<family name='applications web'>
<variable name='activer_schedule' type='oui/non' description='Activer schedule'>
<value>oui</value>
</variable>
<variable type='password' name='schedule_api_key' description='Clé API pour les appels API externes' auto_save='True'>
<value>ApiKeyschedule</value>
</variable>
</family>
<family name='schedule' mode='expert'>
<variable type='string' name='schedule_db_mode' description='Serveur de bases de données à utiliser'/>
<variable type='string' name='schedule_dbserver' description='Adresse du serveur de base de données'/>
<variable type='number' name='schedule_dbport' description="Port d'écoute du serveur de base de données"/>
<variable type='string' name='schedule_allow_hosts' description="Hôtes authorisés à utiliser la base de données" multi='True'/>
<variable type='string' name='schedule_dbuser' description='Utilisateur du serveur de base de données'/>
<variable type='string' name='schedule_dbpass' description='Fichier de mot de passe du serveur'/>
</family>
</variables>
<constraints>
<condition name='hidden_if_in' source='activer_apache'>
<param>non</param>
<target type='filelist'>schedule</target>
<target type='servicelist'>schedule</target>
</condition>
<condition name='hidden_if_in' source='activer_schedule'>
<param>non</param>
<target type='filelist'>schedule</target>
<target type='servicelist'>schedule</target>
<target type='variable'>schedule_api_key</target>
</condition>
<check name='valid_enum' target='schedule_db_mode'>
<param>['default', 'externe', 'local']</param>
</check>
<condition name='disabled_if_in' source='schedule_db_mode'>
<param>local</param>
<target type='variable'>schedule_dbserver</target>
<target type='variable'>schedule_dbuser</target>
<target type='variable'>schedule_dbport</target>
<target type='variable'>schedule_dbpass</target>
</condition>
<condition name='disabled_if_in' source='schedule_db_mode'>
<param>default</param>
<target type='variable'>schedule_dbserver</target>
<target type='variable'>schedule_dbuser</target>
<target type='variable'>schedule_dbport</target>
<target type='variable'>schedule_dbpass</target>
<target type='variable'>schedule_allow_hosts</target>
</condition>
<fill name='gen_random' target='schedule_api_key'/>
</constraints>
<help>
<variable name='activer_schedule'>Outils de gestion de Planning</variable>
</help>
</creole>

2
postservice/25-schedule Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
CreoleRun "/var/www/html/ninegate/scripts/reconfigure.sh" web

View File

@@ -2,8 +2,8 @@
cd /var/www/html/schedule
#export HTTP_PROXY="192.168.57.160:8080"
#export HTTPS_PROXY="192.168.57.160:8080"
# Déclaration d'un proxy
. proxy.sh
# Installation des dépendances composer
composer install

14
sso/filtres/schedule.ini Normal file
View File

@@ -0,0 +1,14 @@
[user]
user=uid
[username]
username=uid
[firstname]
firstname=givenName
[lastname]
lastname=sn
[email]
email=mail

View File

@@ -0,0 +1,6 @@
[schedule]
baseurl=/schedule/
scheme=both
addr=0/0
typeaddr=ip
filter=schedule

View File

@@ -0,0 +1,9 @@
Alias /schedule /var/www/html/schedule/public
<Directory "/var/www/html/schedule/public" >
AllowOverride All
Order Allow,Deny
Allow from All
Options Indexes FollowSymLinks MultiViews
php_admin_flag allow_url_fopen On
</Directory>

39
tmpl/schedule-db.yml Normal file
View File

@@ -0,0 +1,39 @@
---
%set dmode = %%getVar('schedule_db_mode','non')
%if %%dmode == "externe"
dbhost: %%schedule_dbserver
dbport: %%schedule_dbport
dbroot: %%schedule_dbuser
dbrootpwd: %%schedule_dbpass
%else if %%dmode == "local"
dbhost: 127.0.0.1
%end if
dbtype: mysql
dbname: schedule
dbuser: schedule
dbpass: "changeme"
%set allow_hosts = %%getVar('schedule_allow_hosts', '')
%if %%dmode == "local"
client_hosts: ["127.0.0.1", "localhost" %slurp
%else if %%dmode == "externe"
client_hosts: ["%%adresse_ip_eth0" %slurp
%end if
%if %%dmode != "default"
%if %%is_empty(%%allow_hosts)
]
%else
%for %%hst in %%allow_hosts
,"%%hst" %slurp
%end for
]
%end if
%end if
createscript: "/usr/share/eole/db/schedule/gen/schedule-create-0.sql"
%set cnt_prefix = %%getVar('container_path_reseau', '')
pwd_files:
- {file: '%%cnt_prefix/var/www/html/schedule/.env.local',
pattern: 'DATABASE_PASSWORD=',
owner: 'root:www-data',
mod: '660' }

32
tmpl/schedule-env.local Normal file
View File

@@ -0,0 +1,32 @@
# Basic = Redefine local
APP_ENV=prod
APP_SECRET=%%schedule_api_key
APP_AUTH=CAS
# Bdd = Redefine local
DATABASE_NAME=schedule
DATABASE_USER=schedule
DATABASE_PASSWORD=tochange
%if %%getVar("ninegate_db_mode", 'non') == "externe"
DATABASE_HOST=%%ninegate_dbserver
%else if %%getVar("ninegate_db_mode", 'non') == "default"
%set dbhost = %%getVar('edb_host', 'non')
%if %%dbhost == 'non' and %%mode_conteneur_actif == 'oui':
DATABASE_HOST=%%adresse_ip_mysql
%else
%if %%dbhost == 'non'
DATABASE_HOST=localhost
%else
DATABASE_HOST=localhost
%end if
%end if
%else
DATABASE_HOST=%%adresse_ip_mysql
%end if
# CAS = Redefine local
CAS_HOST=%%eolesso_adresse
CAS_PORT=%%eolesso_port
CAS_PATH=%%eolesso_cas_folder

6
tmpl/schedule-proxy.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
# Si besoin export des valeurs de HTTP_PROXY et HTTPS_PROXY
%if %%activer_proxy_client == 'oui'
export HTTP_PROXY="%%proxy_client_adresse:%%proxy_client_port"
export HTTPS_PROXY="%%proxy_client_adresse:%%proxy_client_port"
%end if