Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 09-04-2016 17:17:00

Switch
Membre
(G)UI : XFCE !
Inscription : 17-06-2012
Site Web

Agendav - client WEb de calendriers CalDAV - installation

Bonjour,
je souhaite installer "agendav" , un client web pour afficher des calendriers utilisant caldav.
Merci d'avance pour ton aide !

PS : je suis OK pour abandonner agendav si il existe une autre solution debian pour afficher un agenda sur un site web apache2.

http://agendav.org/
Doc officielle :
http://docs.agendav.org/en/2.0.0-beta1/

Je bloque à l'étape "Create AgenDAV tables" de la doc :
http://docs.agendav.org/en/2.0.0-beta1/ … dav-tables
Mais je ne comprend rien à ces histoirs de création de tables de base de données et aux termes de "doctrine DBAL etc"

AgenDAV tables are created by running the provided agendavcli script.

Before being able to run it, you will have to configure at least your database connection details. Have a look at the db.options parameter (http://docs.agendav.org/en/2.0.0-beta1/ … db.options).

After configuring your database connection, just run the script like this:
$ cd bin/
$ php agendavcli migrations:migrate



Voila ou j'en suis sur un VPS debian-i386-7.7 hébergé par free-H.org :


#installation apache PHP
install  apache2 php5 php5-mysql libapache2-mod-php5
install php5-mcrypt php5-curl #  modules php demandés par agendav
install postgresql postgresql-client #install BDD
#création du dossier www/agenda/
#téléchargement de agendav2
sudo tar xvf agendav-2.0.0-beta1.tar.gz
#je vois donc ca dans le dossier
"
switch@vps-87295:/var/www/agenda$ ls
agendav  agendav-2.0.0-beta1.tar.gz
"

#création des tables posgres
sudo su postgres
psql
"
CREATE USER agendav WITH PASSWORD 'jevousdiraispasmonmotdepasse!!!!';
CREATE DATABASE agendav ENCODING 'UTF8';
GRANT ALL PRIVILEGES ON DATABASE agendav TO agendav;
\q
"

#éditer la conf de PG
sudo vim.tiny /etc/postgresql/9.1/main/pg_hba.conf  # je suis pas certain du chemin pour debian
#j'ajoute les valeurs à la ligne
"
# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   agendav     agendav                           md5
"

#NOTE sur le tuto http://www.rezine.org/documentation/auto-hebergement/services/agenda-contact/clients-cal/#index1h1 il utilise pas la meme methode et il manque peu-etre une tabulation

#NOTE sur le tuto rezine , il ajoute cette étape que je ne fais pas
"Ensuite, comme avec Mysql, chargez le schéma initial après vous être placé dans le répertoire d'Agendav :
cd /var/www/mon-site/agendav
psql -U agendav agendav < sql/pgsql.schema.sql
"

#Create AgenDAV tables
"
AgenDAV tables are created by running the provided agendavcli script.

Before being able to run it, you will have to configure at least your database connection details. Have a look at the db.options parameter.

After configuring your database connection, just run the script like this:
$ cd bin/
$ php agendavcli migrations:migrate
"

#mais ca donne une erreur, car je ne connais pas cette histoire de DOctrine DBAL
"
switch@vps-87295:/var/www/agenda/agendav/bin$ php agendavcli migrations:migrate
settings.php file not found
"

#alors je teste la manip du tuto de rézine:
"
Ensuite, comme avec Mysql, chargez le schéma initial après vous être placé dans le répertoire d'Agendav :
cd /var/www/mon-site/agendav
psql -U agendav agendav < sql/pgsql.schema.sql
"

# ca merde aussi :
"
switch@vps-87295:/var/www/agenda/agendav$ psql -U agendav agendav < sql/pgsql.schema.sql
-bash: sql/pgsql.schema.sql: Aucun fichier ou dossier de ce type
"

Dernière modification par Switch (10-04-2016 21:08:19)

Hors ligne

#2 10-04-2016 09:59:57

Lunatic
Membre
Lieu : Lyon
Distrib. : Fedora 24
Noyau : Linux 4.6.5-300.fc24.x86_64
(G)UI : Gnome
Inscription : 03-08-2013
Site Web

Re : Agendav - client WEb de calendriers CalDAV - installation

Bonjour,

Il faut purement et simplement oublier le tuto de rezine.org qui fait référence à la version 1 de Agendav, alors que tu essaies d'installer la version 2. Le tout dernier message d'erreur dit simplement que le fichier « pgsql.schema.sql » n'existe pas et pour cause, les deux versions d'Agendav n'ont plus la même arborescence.

Le problème essentiel est là :

switch@vps-87295:/var/www/agenda/agendav/bin$ php agendavcli migrations:migrate
settings.php file not found



Le fichier settings.php est introuvable, car tu ne l'as pas créé. Comme l'indique cette page, le dossier web/config doit contenir un fichier settings.php ; heureusement tu n'as pas à le créer de toute pièce : il te faut partir du fichier default.settings.php, situé dans le même dossier.

Donc pour être clair :

- tu te rends dans le dossier web/config
- tu copies le fichier default.settings.php pour créer le fichier settings.php
- tu modifies le fichier settings.php, en particulier le bloc « db.options » qui doit contenir les paramètres de connexion à ta base de données (nom de la base, nom de l'utilisateur, son mot de passe…). Le « driver » indique quel type de base tu utilises. Comme c'est du postgresql, tu doit indiquer pdo_pgsql (comme indiqué ici)


Je suis aussi sur Twitter et nouvellement sur Diaspora*
Mon blog de geekeries : HAL-9000

(J'applique la règle de proximité)

Hors ligne

#3 10-04-2016 14:57:42

Switch
Membre
(G)UI : XFCE !
Inscription : 17-06-2012
Site Web

Re : Agendav - client WEb de calendriers CalDAV - installation

Merci Lunatic , tu avais raison.
Du coup j'ai avancé smile

Je reprend donc la suite de mon premier POST :

Pour ca d'après les expliquations de "Lunatic", je comence par créer le fichier de config :

"
- tu te rends dans le dossier web/config
- tu copies le fichier default.settings.php pour créer le fichier settings.php
- tu modifies le fichier settings.php, en particulier le bloc « db.options » qui doit contenir les paramètres de connexion à ta base de données (nom de la base, nom de l'utilisateur, son mot de passe…). Le « driver » indique quel type de base tu utilises. Comme c'est du postgresql, tu doit indiquer pdo_pgsql.
"


Moi j'ai mis ca dans le fichier settings ( en se basant sur les premières manip SQL de la doc) :

// Database settings
$app['db.options'] = [
        'dbname' => 'agendav',
        'user' => 'agendav',
        'password' => ' jevoulediraispas:) ',
        'host' => 'localhost',
        'driver' => 'pdo_pgsql'
];



Puis je lance le sript de la doc et obtiens des erreurs du type :
"[PDOException]         
  could not find driver"

#Alors j'installe le paquet "install php5-pgsql" :
Et relance le script et ca va mieux  tongue :


switch@vps-87295:/var/www/agenda/agendav/bin$ php agendavcli migrations:migrate
Loading configuration from file: migrations.yml
                                                         
                    AgenDAV DB schema                    
                                                         

WARNING! You are about to execute a database migration that could result in schema changes and data lost. Are you sure you wish to continue? (y/n)y
Migrating up to 20150811144330 from 0

  ++ migrating 20140812113548


  SS skipped (Reason: This migration only applies to AgenDAV 1.x upgrades)

  ++ migrating 20140812133707

Creating initial schema for AgenDAV
     -> CREATE TABLE sessions (sess_id VARCHAR(255) NOT NULL, sess_data TEXT NOT NULL, sess_time INT NOT NULL, PRIMARY KEY(sess_id))
     -> CREATE TABLE shares (sid SERIAL NOT NULL, grantor VARCHAR(255) NOT NULL, path VARCHAR(255) NOT NULL, grantee VARCHAR(255) NOT NULL, options TEXT NOT NULL, rw BOOLEAN NOT NULL, PRIMARY KEY(sid))
     -> CREATE INDEX IDX_905F717CE5AA78E6B548B0F ON shares (grantor, path)
     -> CREATE INDEX IDX_905F717C9C9615AB ON shares (grantee)
     -> CREATE TABLE prefs (username VARCHAR(255) NOT NULL, options TEXT NOT NULL, PRIMARY KEY(username))

  ++ migrated (0.05s)

  ++ migrating 20140812200547


  SS skipped (Reason: This migration only applies to AgenDAV 1.x upgrades)

  ++ migrating 20140812203419


  SS skipped (Reason: This migration only applies to AgenDAV 1.x upgrades)

  ++ migrating 20150804202842

Creating table principals
     -> CREATE TABLE principals (path VARCHAR(255) NOT NULL, display_name VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, PRIMARY KEY(path))

  ++ migrated (0.05s)

  ++ migrating 20150809122309

     -> DROP INDEX principals_pkey
Migration 20150809122309 failed during Execution. Error An exception occurred while executing 'DROP INDEX principals_pkey':

SQLSTATE[2BP01]: Dependent objects still exist: 7 ERREUR:  n'a pas pu supprimer index principals_pkey car il est requis par contrainte principals_pkey sur table principals
HINT:  Vous pouvez supprimer contrainte principals_pkey sur table principals à la place.

                                                                                                                                                                               
  [Doctrine\DBAL\Exception\DriverException]                                                                                                                                    
  An exception occurred while executing '
DROP INDEX principals_pkey':                                                                                                          
  SQLSTATE[2BP01]: Dependent objects still exist: 7 ERREUR:  n'
a pas pu supprimer index principals_pkey car il est requis par contrainte principals_pkey sur table principals  
  HINT:  Vous pouvez supprimer contrainte principals_pkey sur table principals à la place.                                                                                    
                                                                                                                                                                               
  [Doctrine\DBAL\Driver\PDOException]                                                                                                                                          
  SQLSTATE[2BP01]: Dependent objects still exist: 7 ERREUR:  n'a pas pu supprimer index principals_pkey car il est requis par contrainte principals_pkey sur table principals  
  HINT:  Vous pouvez supprimer contrainte principals_pkey sur table principals à la place.                                                                                    
                                                                                                                                                                               
  [PDOException]                                                                                                                                                              
  SQLSTATE[2BP01]: Dependent objects still exist: 7 ERREUR:  n'
a pas pu supprimer index principals_pkey car il est requis par contrainte principals_pkey sur table principals  
  HINT:  Vous pouvez supprimer contrainte principals_pkey sur table principals à la place.                                                                                    
                                                                                                                                                                               
migrations:migrate [--write-sql] [--dry-run] [--query-time] [--configuration[="..."]] [--db-configuration[="..."]] [version]
 


Bon ca affiche des erreurs . En cherchant sur le net je tombe le github du projet qui parle de ce bug ( je crois en tout cas ) :
https://github.com/adobo/agendav/issues/150
Et ils ont l'air content à la fin, mais j'ai pas compris pourquoi .

Qui pourrait me traduire les retours de la commande, ou les retours de la discution du GIT svp ?

Hors ligne

#4 10-04-2016 23:27:58

Lunatic
Membre
Lieu : Lyon
Distrib. : Fedora 24
Noyau : Linux 4.6.5-300.fc24.x86_64
(G)UI : Gnome
Inscription : 03-08-2013
Site Web

Re : Agendav - client WEb de calendriers CalDAV - installation

Le bug a été résolu mais la correction n'est pour le moment qu'appliquée à la branche « développement » d'Agendav.

Il y a une raison particulière pour laquelle tu préfères utiliser postgresql à mysql ou sqlite ?

Je suis aussi sur Twitter et nouvellement sur Diaspora*
Mon blog de geekeries : HAL-9000

(J'applique la règle de proximité)

Hors ligne

#5 11-04-2016 00:50:06

Switch
Membre
(G)UI : XFCE !
Inscription : 17-06-2012
Site Web

Re : Agendav - client WEb de calendriers CalDAV - installation

OK alors si c'est bien un bug, j'ai plus qu'à abandonner postgres et retenter avec mysql. Si ça fonctionne ça me va.
Merci pour la traduction.

Hors ligne

Pied de page des forums