Posts Tagged ‘developpement’

Optimiser le développement de modules Prestashop : Industrialiser l’installation de Prestashop et des modules

Cet article fait partie de la série : Optimiser le développement de modules Prestashop

  1. Mise en place de l’environnement de développement
  2. Industrialiser l’installation de Prestashop et des modules
  3. Tester fonctionnellement vos modules avec Phpunit et Selenium
  4. Éviter les régressions avec l’intégration continue

Cet article est la 2ème étape de notre série sur l’optimisation de modules Prestashop.
Merci de prendre connaissance de la partie 1 : mise en place de l’environnement de développement afin de pouvoir suivre cet article.

Notre environnement de développement est à présent en place, nous allons donc passer à l’industrialisation de l’installation de Prestashop, mais également de ces modules.
L’idée de cette étape est d’avoir des outils pour mettre en place rapidement et automatiquement les versions souhaitées de Prestashop sur notre serveur.

Proposition du structure des fichiers sur le serveur.

Le dossier racine de notre installation est /var/www/public/, dans ce dossier nous allons créer un dossier “prestashop” qui va contenir l’ensemble de nos installations Prestashop.

Celles-ci seront installées dans des sous-dossiers “prestashop_1.x.x.x/
Les numéros de versions dans l’url permettront d’accéder facilement à la version souhaitée :  http://192.168.33.10/prestashop/prestashop_1-6-1-1/ par exemple.…

4 commentaires

Optimiser développement de modules Prestashop : Mise en place de l’environnement de développement

Cet article fait partie de la série : Optimiser le développement de modules Prestashop
  1. Mise en place de l’environnement de développement
  2. Industrialiser l’installation de Prestashop et des modules
  3. Tester fonctionnellement vos modules avec Phpunit et Selenium
  4. Éviter les régressions avec l’intégration continue

Pour commencer notre série sur l’optimisation du développement des modules Prestashop, nous allons commencer par la mise en place de l’environnement de développement.

Si vous en avez la possibilité, travailler directement sous Linux apporte directement l’ensemble des fonctions qui sont disponibles sur votre serveur, sur votre poste de travail.
Si c’est déjà votre cas vous pouvez passer directement à la partie sur le versionning de vos sources.

Installer une machine virtuelle en local.

Si vous travaillez avec un environnement Windows vous avez sans doute déjà travaillé avec Wampserver.
Mais pour ma part je trouve que cette solution est à présent trop limitée, d’autant plus que l’installation des outils les plus pratiques actuellement ( git / composer … ) est plus compliquée sous l’ environnement windows.…

Pas de commentaires

Nouvelle série : optimiser le développement de modules Prestashop

Si comme moi vous développez des modules Prestashop vous avez sans doute déjà rencontrés pas mal de difficultés et perdu du temps sur des événements redondants.

Au cours des prochaines semaines, je vais donc partager avec vous les astuces utilisées quotidiennement dans mes développements.

Cette série d’articles devrait donc vous permettre d’optimiser le développement de modules Prestashop.
N’hésitez pas à partager vos astuces pour optimiser encore plus ces articles ! 🙂

Voici les différentes étapes qui seront détaillées :

Étape 1 : mise en place de l’environnement de développement

  • Oubliez wamp, utilisez vagrant
  • Versionnez vos sources ( github / git local / svn )
  • Mettez en place des outils de validation et de corrections des normes

Étape 2 : Industrialiser l’installation de Prestashop et des modules

  • Proposition du structure sur le serveur
  • Installer Prestashop via la ligne de commande
  • Gérer ses modules avec le module eiinstallmodulecli

Étape 3 : Tester fonctionnellement vos modules avec Phpunit et Selenium

  • Configuration de l’environnement pour exécuter les tests
  • Mise en place d’un framework de tests fonctionnels
  • Premiers tests fonctionnels

Étape 4 : Éviter les régressions avec l’intégration continue

  • Mise en place d’une plateforme d’intégration continue avec jenkins

 

Dans le cadre de cette série, les exemples seront liés à la solution Prestashop, mais ces bonnes pratiques peuvent être mises en œuvre sur de nombreux projets 🙂…

Pas de commentaires

Prestashop : installer la dernière version depuis github

Si vous souhaitez tester la dernière version de Prestashop sur votre serveur voici un script qui vous permettra de l’installer via la ligne de commandes depuis github.

Attention , j’insiste bien sur le mot tester, car la version sur github est la version de développement qui ne doit pas être mise en production.
Pour télécharger la dernière version stable rendez-vous sur la page suivante : https://www.prestashop.com/fr/telechargement

Ce script est configuré pour installer prestashop via l’url http://example.com/prestashop/nightly/
Il est basé sur l’article suivant : Installer une version de prestashop en ligne de commande

#chemin d'installation
dir="/home/user/public_html/prestashop/"
nightlyDir="nightly"
domaineName="example.com"
 
#Accès base de données ( Remplacer par les bonnes informations )
dbuser="user"
dbpassword="password"
dbname="prestashop_nigthly"
 
#Accès administration (Remplacer par les bonnes informations
contactEmail="[email protected]"
adminpass="mypassword123"
 
#On se place dans le dossier ou on veut installer le site
cd $dir
 
#Si le dossier existe deja on le supprime
if [ -d "$nightlyDir" ]; then
echo "Le dossier $nightlyDir existe deja suppression des fichiers existants"
rm -rf $nightlyDir
#exit
fi
echo "Creation du dossier $nightlyDir"
mkdir $nightlyDir
 
#On clone la dernière version de la solution
git clone --recursive https://github.com/PrestaShop/PrestaShop.git $nightlyDir/
 
#Suppression de l'ancienne base de données ( si elle existe )
mysql -u $dbuser -p$dbpassword -e "DROP DATABASE IF EXISTS $dbname "
 
#Creation de la nouvelle base de données
mysql -u $dbuser -p$dbpassword -e "CREATE DATABASE $dbname "
 
#Installation de la solution
cd $nightlyDir/install-dev/
php index_cli.php --domain="${domaineName}" --db_name=$dbname --db_user=$dbuser --db_password=$dbpassword --email=$contactEmail --password=$adminpass --newsletter=0 --send_email=0 --base_uri="prestashop/${nightlyDir}"
 
#Pour finir on renomme le dossier d'install et le dossier d'admin
cd ..
Pas de commentaires


Compte Github