Hello,
Je suis en train de bosser sur le packaging d'application java qui nécessitent l'utilisation d'une base de données, qu'il s'agisse de mysql/postgres/... au choix de l'utilisateur.
La question que je me pose c'est de savoir quelle est la bonne pratique concernant le packaging, et plus précisément l'initialisation de la base de données. En effet, il est nécessaire de renseigner l'utilisateur et mot de passe à utiliser pour créer la base nécessaire.
Plusieurs solutions me viennent à l'esprit :
- Installer de base avec une BDD mémoire (type hsql/h2) et laisser l'utilisateur changer de base le cas échéant. (solution que j'ai proposé pour l'instant, ex : XWiki)
- En post-install, demander à l'utilisateur les informations nécessaires et faire le travail à sa place.
La première solution me paraît plus archlinux-like et m'apparaît plus simple à automatiser pour du déploiement massif (puppet/chef). Mais nécessaite une bonne connaissance de l'outil à configurer.
La seconde solution est plus simple pour l'utilisateur mais m'apparaît moins industrielle.
Qu'en pensez vous ?
[PKGBUILD] Bonnes pratiques de packaging d'apps avec BDD
- benjarobin
- Maître du Kyudo
- Messages : 17576
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [PKGBUILD] Bonnes pratiques de packaging d'apps avec BDD
Clairement pas la 2ième solution.
La première solution est raisonnable, mais tu dois impérativement expliquer lors de l'installation via un message ce qu'il faut modifier.
Sinon tu peux faire une 3ième solution : Juste afficher un message indiquant de configurer le tout en pointant vers une doc
La première solution est raisonnable, mais tu dois impérativement expliquer lors de l'installation via un message ce qu'il faut modifier.
Sinon tu peux faire une 3ième solution : Juste afficher un message indiquant de configurer le tout en pointant vers une doc
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [PKGBUILD] Bonnes pratiques de packaging d'apps avec BDD
Merci benjarobin,
Je pensais modifier mon package avec un message explicatif et un lien vers les docs relatives. C'est marrant de voir les différences de philosophies suivant les distributions. Les packages déjà existants pour XWiki sous debian demandent à l'utilisateur quoi faire.
Question subsidiaire : chaque SGBD nécessite un driver (jdbc) différent qu'il est nécessaire d'installer dans les libs du tomcat hébergeant l'application. Vaut-il mieux expliquer où placer ce driver jdbc, ou l'installer automatiquement lorsque la licence le permet via d'autres packages type xwiki-enterprise-mysql et xwiki-enterprise-postgresql ?
Je pensais modifier mon package avec un message explicatif et un lien vers les docs relatives. C'est marrant de voir les différences de philosophies suivant les distributions. Les packages déjà existants pour XWiki sous debian demandent à l'utilisateur quoi faire.
Question subsidiaire : chaque SGBD nécessite un driver (jdbc) différent qu'il est nécessaire d'installer dans les libs du tomcat hébergeant l'application. Vaut-il mieux expliquer où placer ce driver jdbc, ou l'installer automatiquement lorsque la licence le permet via d'autres packages type xwiki-enterprise-mysql et xwiki-enterprise-postgresql ?
- benjarobin
- Maître du Kyudo
- Messages : 17576
- Inscription : sam. 30 mai 2009, 15:48
- Localisation : Lyon
Re: [PKGBUILD] Bonnes pratiques de packaging d'apps avec BDD
Créer des paquets supplémentaire est une bonne idée, voir la seule bonne façon de faire. Et tu rajoutera en dépendance optionnelle ces paquets dans le PKGBUILD de XWiki
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Re: [PKGBUILD] Bonnes pratiques de packaging d'apps avec BDD
Thx, ça confirme la façon dont je pensais procéder 
