Labinvent nouvelle version
Version 53 (Alexandre Cases, 04/20/2016 01:56 pm)
1 | 38 | Etienne Pallier | h1. Labinvent 2.0 (cakephp3) |
---|---|---|---|
2 | 2 | Alexandre Cases | |
3 | 41 | Etienne Pallier | |
4 | 42 | Etienne Pallier | {{toc}} |
5 | 42 | Etienne Pallier | |
6 | 41 | Etienne Pallier | h2. RECUPERATION DU LOGICIEL |
7 | 41 | Etienne Pallier | |
8 | 41 | Etienne Pallier | h3. Authenticate to https://gitlab.irap.omp.eu/epallier/labinvent |
9 | 41 | Etienne Pallier | |
10 | 41 | Etienne Pallier | In order to get this software, you must first authenticate on the IRAP gitlab. |
11 | 41 | Etienne Pallier | |
12 | 41 | Etienne Pallier | For this, just go to https://gitlab.irap.omp.eu/epallier/labinvent |
13 | 41 | Etienne Pallier | and either sign in with your LDAP account (if you are from IRAP), |
14 | 41 | Etienne Pallier | or register via the "Sign up" form (then, confirm your registration by answering an email sent by gitlab, |
15 | 41 | Etienne Pallier | and wait for the "SI" to authorize your registration) |
16 | 41 | Etienne Pallier | |
17 | 41 | Etienne Pallier | h3. Browse the code (from gitlab) |
18 | 41 | Etienne Pallier | |
19 | 41 | Etienne Pallier | https://gitlab.irap.omp.eu/epallier/labinvent/tree/master |
20 | 41 | Etienne Pallier | |
21 | 41 | Etienne Pallier | h3. Download it (static version, not synchronized) |
22 | 41 | Etienne Pallier | |
23 | 41 | Etienne Pallier | You can download the current version of the software. |
24 | 41 | Etienne Pallier | |
25 | 41 | Etienne Pallier | Go to https://gitlab.irap.omp.eu/epallier/labinvent/tree/master |
26 | 41 | Etienne Pallier | |
27 | 41 | Etienne Pallier | Click on "Download zip" on the up right hand corner. |
28 | 41 | Etienne Pallier | |
29 | 41 | Etienne Pallier | Double-click on it to unzip it. |
30 | 41 | Etienne Pallier | |
31 | 41 | Etienne Pallier | You should get a "labinvent.git" folder. |
32 | 41 | Etienne Pallier | |
33 | 41 | Etienne Pallier | In this documentation, this software folder will be referenced as "labinvent". |
34 | 41 | Etienne Pallier | |
35 | 41 | Etienne Pallier | (you can rename "labinvent.git" as "labinvent" if you want : "mv labinvent.git labinvent") |
36 | 41 | Etienne Pallier | |
37 | 41 | Etienne Pallier | h3. Get it from GIT (dynamic version, synchronized) |
38 | 41 | Etienne Pallier | |
39 | 41 | Etienne Pallier | (If you are using Windows, you must first get the git software, see below "Get git for Windows") |
40 | 41 | Etienne Pallier | |
41 | 41 | Etienne Pallier | By getting the software from git, you will get a dynamically synchronized version, |
42 | 41 | Etienne Pallier | which means that you will be able to update your version as soon as a new version is available |
43 | 41 | Etienne Pallier | (with the command : "git pull"). |
44 | 41 | Etienne Pallier | |
45 | 41 | Etienne Pallier | * From Eclipse : See below, section "NOTES FOR ECLIPSE USERS" |
46 | 41 | Etienne Pallier | |
47 | 41 | Etienne Pallier | * From the terminal |
48 | 41 | Etienne Pallier | |
49 | 41 | Etienne Pallier | <pre> |
50 | 41 | Etienne Pallier | git clone https://gitlab.irap.omp.eu/epallier/labinvent.git labinvent |
51 | 41 | Etienne Pallier | </pre> |
52 | 41 | Etienne Pallier | |
53 | 41 | Etienne Pallier | _(or also : git clone git@gitlab.irap.omp.eu:epallier/labinvent.git labinvent)_ |
54 | 41 | Etienne Pallier | |
55 | 41 | Etienne Pallier | If you ever get this error message... : |
56 | 41 | Etienne Pallier | <pre> |
57 | 41 | Etienne Pallier | fatal: unable to access 'https://gitlab.irap.omp.eu/epallier/labinvent.git/': Peer's certificate issuer has been marked as not trusted by the user. |
58 | 41 | Etienne Pallier | </pre> |
59 | 41 | Etienne Pallier | |
60 | 41 | Etienne Pallier | ...then, type this command (and then run again the "git clone" command): |
61 | 41 | Etienne Pallier | <pre> |
62 | 41 | Etienne Pallier | $ git config --global http.sslVerify false |
63 | 41 | Etienne Pallier | |
64 | 41 | Etienne Pallier | Then check that your config is ok: |
65 | 41 | Etienne Pallier | |
66 | 41 | Etienne Pallier | $ cat ~/.gitconfig |
67 | 41 | Etienne Pallier | [user] |
68 | 41 | Etienne Pallier | name = Etienne Pallier |
69 | 41 | Etienne Pallier | email = epallier@irap.omp.eu |
70 | 41 | Etienne Pallier | [http] |
71 | 41 | Etienne Pallier | sslVerify = false |
72 | 41 | Etienne Pallier | [push] |
73 | 41 | Etienne Pallier | default = simple |
74 | 41 | Etienne Pallier | </pre> |
75 | 41 | Etienne Pallier | |
76 | 41 | Etienne Pallier | |
77 | 41 | Etienne Pallier | (Also, the first time you get the project, git will ask you for a login and password) |
78 | 41 | Etienne Pallier | |
79 | 41 | Etienne Pallier | This creates a labinvent/ folder containing the project (with a .git/ subfolder for synchronization with the git repository) |
80 | 41 | Etienne Pallier | |
81 | 41 | Etienne Pallier | |
82 | 41 | Etienne Pallier | h4. (Windows only) : Get git for Windows |
83 | 41 | Etienne Pallier | |
84 | 41 | Etienne Pallier | * Download git at https://git-scm.com/download/win |
85 | 41 | Etienne Pallier | * Run setup (keep default configurations) |
86 | 41 | Etienne Pallier | * Once installed, open cmd |
87 | 41 | Etienne Pallier | <pre> |
88 | 41 | Etienne Pallier | $ git config --global http.sslVerify false |
89 | 41 | Etienne Pallier | </pre> |
90 | 41 | Etienne Pallier | |
91 | 41 | Etienne Pallier | You can now use your git from the cmd or the graphic client ! |
92 | 41 | Etienne Pallier | |
93 | 41 | Etienne Pallier | --- |
94 | 41 | Etienne Pallier | |
95 | 43 | Etienne Pallier | h2. INSTALLATION |
96 | 7 | Alexandre Cases | |
97 | 17 | Alexandre Cases | h3. A/ PREREQUIS |
98 | 8 | Alexandre Cases | |
99 | 50 | Alexandre Cases | Les commandes effectuer pour les prérequis ont été effectuer sur UBuntu 14.04.4 |
100 | 50 | Alexandre Cases | |
101 | 50 | Alexandre Cases | * Pour commencer il faut mettre à jour les "repository" de apt : |
102 | 50 | Alexandre Cases | > sudo apt-get update && sudo apt-get upgrade |
103 | 50 | Alexandre Cases | |
104 | 18 | Alexandre Cases | * Un serveur web (apache avec le mod_rewrite actif) |
105 | 50 | Alexandre Cases | > sudo apt-get install apache2 |
106 | 50 | Alexandre Cases | |
107 | 51 | Alexandre Cases | > Editer le fichier /etc/apache2/apache2.conf et mettre le paramêtre "KeepAlive" à "Off" : |
108 | 50 | Alexandre Cases | > > "KeepAlive Off" |
109 | 50 | Alexandre Cases | |
110 | 52 | Alexandre Cases | > Par défaut Apache utilise un "event module" et PHP utilise un "prefork module" par défaut. |
111 | 50 | Alexandre Cases | > Il faut désactiver le 1er module et activer le second : |
112 | 1 | Etienne Pallier | > > sudo a2dismod mpm_event |
113 | 1 | Etienne Pallier | > > sudo a2enmod mpm_prefork |
114 | 51 | Alexandre Cases | |
115 | 51 | Alexandre Cases | > Vous pouvez redémarrer Apache : |
116 | 51 | Alexandre Cases | > > sudo service apache2 restart |
117 | 50 | Alexandre Cases | |
118 | 18 | Alexandre Cases | * Un serveur de base de données (MySQL) |
119 | 52 | Alexandre Cases | > sudo apt-get install mysql-server |
120 | 1 | Etienne Pallier | |
121 | 50 | Alexandre Cases | * PHP 5.5.9 ou plus |
122 | 52 | Alexandre Cases | > sudo apt-get install php5 php-pear |
123 | 52 | Alexandre Cases | > sudo apt-get install php5-mysql |
124 | 1 | Etienne Pallier | |
125 | 52 | Alexandre Cases | > Dans le fichier /etc/php/apache2/php.ini, vous devez positionner votre répertoire de log : |
126 | 52 | Alexandre Cases | > > error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR |
127 | 52 | Alexandre Cases | > > error_log = /var/log/php/error.log |
128 | 52 | Alexandre Cases | > > max_input_time = 30 |
129 | 52 | Alexandre Cases | |
130 | 52 | Alexandre Cases | > Ensuire il faut créer le dossier en question et donner au groupe d'apache (ici www-data) les droits sur ce dossier : |
131 | 52 | Alexandre Cases | > > sudo mkdir /var/log/php |
132 | 52 | Alexandre Cases | > > sudo chown www-data /var/log/php |
133 | 52 | Alexandre Cases | |
134 | 52 | Alexandre Cases | > Vous pouvez recharger Apache : |
135 | 52 | Alexandre Cases | > > sudo service apache2 reload |
136 | 52 | Alexandre Cases | |
137 | 19 | Alexandre Cases | * Extension PHP "mbstring" |
138 | 52 | Alexandre Cases | > |
139 | 50 | Alexandre Cases | |
140 | 1 | Etienne Pallier | * Extension PHP "intl" |
141 | 52 | Alexandre Cases | > |
142 | 1 | Etienne Pallier | |
143 | 19 | Alexandre Cases | * Librairie "gd" |
144 | 52 | Alexandre Cases | > |
145 | 1 | Etienne Pallier | |
146 | 50 | Alexandre Cases | * Librairie PHP "php-gd" (même version que PHP) |
147 | 52 | Alexandre Cases | > |
148 | 50 | Alexandre Cases | |
149 | 50 | Alexandre Cases | * Librairie "zlib" |
150 | 52 | Alexandre Cases | > |
151 | 50 | Alexandre Cases | |
152 | 53 | Alexandre Cases | * Pour vérifier la configuration d'apache et de ses modules : |
153 | 53 | Alexandre Cases | > Il faut créer une page info.php dans le dossier public_html contenant les lignes suivantes : |
154 | 53 | Alexandre Cases | > > <?php |
155 | 53 | Alexandre Cases | > > phpinfo(); |
156 | 53 | Alexandre Cases | > > ?> |
157 | 53 | Alexandre Cases | > La page d'info devrait être accessible : http://localhost/info.php |
158 | 53 | Alexandre Cases | |
159 | 18 | Alexandre Cases | Il est aussi conseillé d'avoir un "phpmyadmin" installé pour pouvoir gérer manuellement la base de données. |
160 | 52 | Alexandre Cases | > |
161 | 8 | Alexandre Cases | |
162 | 40 | Etienne Pallier | * Après avoir installé tous les prérequis, récupérer l'archive "labinvent.tar.gz". |
163 | 22 | Alexandre Cases | |
164 | 24 | Alexandre Cases | * Placer cette archive à l'endroit voulu, 2 possibilités : |
165 | 23 | Alexandre Cases | - (1) soit vous placez cette archive directement dans le repertoire des sites webs du serveur web (par exemple /var/www/html/localhost/public_html/) |
166 | 22 | Alexandre Cases | - (2) soit vous la placez n'importe où ailleurs (par exemple dans votre repertoire home), et ensuite vous indiquerez au serveur web où trouver ce projet |
167 | 22 | Alexandre Cases | |
168 | 24 | Alexandre Cases | * Dézipper l'archive : |
169 | 22 | Alexandre Cases | "tar xvfz labinvent.tar.gz" |
170 | 31 | Alexandre Cases | > cela crée un dossier labinvent.git/ |
171 | 22 | Alexandre Cases | |
172 | 8 | Alexandre Cases | h3. B/ INSTALLATION |
173 | 1 | Etienne Pallier | |
174 | 23 | Alexandre Cases | Nous vous préconisons d'installer le logiciel en mode "SANS LDAP", et d'activer le mode "AVEC LDAP" par la suite, si vous en avez besoin. |
175 | 23 | Alexandre Cases | |
176 | 23 | Alexandre Cases | |
177 | 24 | Alexandre Cases | * Aller dans le repertoire d'installation : |
178 | 23 | Alexandre Cases | cd labinvent/install/ |
179 | 23 | Alexandre Cases | |
180 | 23 | Alexandre Cases | |
181 | 24 | Alexandre Cases | * Exécuter le script d'installation : |
182 | 23 | Alexandre Cases | ./installation.sh |
183 | 23 | Alexandre Cases | (vous pouvez le faire en tant qu'administrateur "root", mais ça n'est pas nécessaire, le script fera quelques petits "sudo" seulement quand nécessaire). |
184 | 23 | Alexandre Cases | (Conseil : à la plupart des questions, laissez les réponses par défaut) |
185 | 23 | Alexandre Cases | (Comme expliqué au début, faites une installation en mode "sans LDAP") |
186 | 23 | Alexandre Cases | |
187 | 23 | Alexandre Cases | |
188 | 37 | Alexandre Cases | * Configuration BD |
189 | 37 | Alexandre Cases | - Après avoir terminé le script d'installation, ouvrir le fichier ./config/app.php |
190 | 37 | Alexandre Cases | - Aller à la section Datasources |
191 | 37 | Alexandre Cases | - Modifier les attributs "host", "username", "password" et "database" pour qu'ils correspondent à votre base de données. |
192 | 37 | Alexandre Cases | |
193 | 24 | Alexandre Cases | * Autoriser les fichiers .htaccess sur le site : |
194 | 32 | Alexandre Cases | (cf http://book.cakephp.org/3.0/fr/installation.html#url-rewriting) |
195 | 32 | Alexandre Cases | |
196 | 28 | Alexandre Cases | Dans le fichier apache2.conf de Apache, si vous avez déja quelque chose comme ceci, cela suffit : |
197 | 23 | Alexandre Cases | |
198 | 23 | Alexandre Cases | > <Directory /> |
199 | 23 | Alexandre Cases | > Options FollowSymLinks |
200 | 23 | Alexandre Cases | > AllowOverride All |
201 | 23 | Alexandre Cases | > Order deny,allow |
202 | 23 | Alexandre Cases | > Deny from all |
203 | 23 | Alexandre Cases | > </Directory> |
204 | 23 | Alexandre Cases | |
205 | 23 | Alexandre Cases | Sinon, vous pouvez ajouter ceci, uniquement pour Labinvent : |
206 | 23 | Alexandre Cases | |
207 | 23 | Alexandre Cases | > <Directory /labinvent> |
208 | 23 | Alexandre Cases | > Options FollowSymLinks |
209 | 23 | Alexandre Cases | > AllowOverride All |
210 | 23 | Alexandre Cases | > </Directory> |
211 | 23 | Alexandre Cases | |
212 | 23 | Alexandre Cases | NB : si labinvent n'est pas dans le repertoire des sites webs, il faut mettre son chemin absolu a la place de /labinvent : |
213 | 23 | Alexandre Cases | > <Directory /chemin/abosolu/vers/labinvent> |
214 | 8 | Alexandre Cases | |
215 | 35 | Alexandre Cases | * Tester l'accès web à l'application : http://localhost/labinvent.git/ |
216 | 33 | Alexandre Cases | |
217 | 33 | Alexandre Cases | > Remarques : |
218 | 33 | Alexandre Cases | > > Dans CakePHP3 un serveur de développement est disponible, il faut se placer à la racine du projet faire la commande "bin/cake server". |
219 | 33 | Alexandre Cases | > > L'application devrait être accessible à l'adresse suivante par défaut : http://localhost:8765/ |
220 | 33 | Alexandre Cases | |
221 | 44 | Etienne Pallier | h2. (DEV ONLY) Installation from scratch (Sous UBuntu) |
222 | 7 | Alexandre Cases | |
223 | 7 | Alexandre Cases | h3. Création projet avec Composer |
224 | 2 | Alexandre Cases | |
225 | 2 | Alexandre Cases | * Télécharger composer.phar : |
226 | 2 | Alexandre Cases | "curl -s https://getcomposer.org/installer | php" |
227 | 2 | Alexandre Cases | |
228 | 2 | Alexandre Cases | * Avec le Composer créer un nouveau projet : |
229 | 2 | Alexandre Cases | "php composer.phar create-project --prefer-dist cakephp/app labinvent_2.0" |
230 | 2 | Alexandre Cases | |
231 | 4 | Alexandre Cases | > Voir structure projet : http://book.cakephp.org/3.0/fr/intro/cakephp-folder-structure.html |
232 | 2 | Alexandre Cases | |
233 | 2 | Alexandre Cases | * On rempli la base de données avec le fichier sql |
234 | 2 | Alexandre Cases | |
235 | 2 | Alexandre Cases | * On indique la BD utilisé à CakePHP dans le fichier config/app.php, propriété "Datasources". |
236 | 2 | Alexandre Cases | |
237 | 5 | Alexandre Cases | * On se place à la racine du projet |
238 | 5 | Alexandre Cases | |
239 | 2 | Alexandre Cases | * On génère le code Scaffold : |
240 | 2 | Alexandre Cases | "bin/cake bake all nom_table" --> ça génére les modeles, les vues, et les controlleurs. |
241 | 2 | Alexandre Cases | |
242 | 4 | Alexandre Cases | > Commande (en une fois) : |
243 | 11 | Alexandre Cases | > > bin/cake bake all categories && bin/cake bake all emprunts && bin/cake bake all groupes_metiers && bin/cake bake all groupes_thematiques && bin/cake bake all organismes && bin/cake bake all sites && bin/cake bake all sous_categories && bin/cake bake all suivis && bin/cake bake all sur_categories && bin/cake bake all type_suivis && bin/cake bake all documents && bin/cake bake all utilisateurs && bin/cake bake all materiels |
244 | 6 | Alexandre Cases | |
245 | 6 | Alexandre Cases | h3. Modification de la base de données |
246 | 13 | Alexandre Cases | > Une version du sql corrigée au fur et à mesure est disponible dans le git : |
247 | 26 | Alexandre Cases | > > Dans database/, le fichier labinvent_2.0_19-04-16 correspond à la création de la base. |
248 | 27 | Alexandre Cases | > > Dans database/, le fichier labinvent_2.0_insert-irap_19-04-16 correspond aux insertions. |
249 | 6 | Alexandre Cases | |
250 | 12 | Etienne Pallier | * Table "fichiers" en doublon de "documents" => supprimer |
251 | 12 | Etienne Pallier | * Attribut organisme inutile dans la table matériel => supprimer |
252 | 13 | Alexandre Cases | |
253 | 20 | Alexandre Cases | h3. Autres remarques lors du dévellopement |
254 | 13 | Alexandre Cases | |
255 | 13 | Alexandre Cases | h4. instalation.sh |
256 | 13 | Alexandre Cases | |
257 | 36 | Alexandre Cases | * "phpqrcode" et "fpdf" dans dossier vendor |
258 | 30 | Alexandre Cases | |
259 | 30 | Alexandre Cases | * CakePHP oblige à changer le grain de sel (security.salt) par rapport a la config par défaut |
260 | 30 | Alexandre Cases | |
261 | 30 | Alexandre Cases | * Remplisage du fichier config app.php par l'utilisateur (BD, grain de sel, ...) ? |
262 | 45 | Etienne Pallier | |
263 | 45 | Etienne Pallier | |
264 | 45 | Etienne Pallier | |
265 | 45 | Etienne Pallier | --- |
266 | 45 | Etienne Pallier | |
267 | 46 | Etienne Pallier | h2. (DEV ONLY) INSTALLATION DEPUIS ECLIPSE |
268 | 45 | Etienne Pallier | |
269 | 45 | Etienne Pallier | 1) Préparation d'Eclipse |
270 | 45 | Etienne Pallier | |
271 | 45 | Etienne Pallier | Download Eclipse pour Php (plugin PDT déjà inclus) : |
272 | 45 | Etienne Pallier | http://www.eclipse.org/downloads |
273 | 45 | Etienne Pallier | (sinon, éventuellement http://www.eclipse.org/downloads/index-developer.php) |
274 | 45 | Etienne Pallier | (on peut aussi télécharger un eclipse standard, et lui ajouter ensuite le plugin PDT) |
275 | 45 | Etienne Pallier | Choisir "Eclipse for PHP Developpers" |
276 | 45 | Etienne Pallier | Fin 2014, j'ai téléchargé la version Luna 4.4.1 SR1 |
277 | 45 | Etienne Pallier | Workspace proposé par défaut : /Users/pallier/Documents/workspace |
278 | 45 | Etienne Pallier | (==> remplacé par /Users/pallier/projects/Eclipse/eclipse_luna_php_workspace) |
279 | 45 | Etienne Pallier | |
280 | 45 | Etienne Pallier | Cliquer sur "Workbench" |
281 | 45 | Etienne Pallier | |
282 | 45 | Etienne Pallier | Se placer dans la perspective PHP |
283 | 45 | Etienne Pallier | |
284 | 45 | Etienne Pallier | Installer un client svn avec le plugin subversive : |
285 | 45 | Etienne Pallier | Help/Eclipse Marketplace, chercher "subversive" |
286 | 45 | Etienne Pallier | Installer Subversive (pour moi, c'était version 2.0.1) |
287 | 45 | Etienne Pallier | Restart Eclipse |
288 | 45 | Etienne Pallier | |
289 | 45 | Etienne Pallier | File/Import/From svn |
290 | 45 | Etienne Pallier | ==> demande à installer un connecteur svn |
291 | 45 | Etienne Pallier | J'ai choisi le plus récent, soit "svn kit 1.8.7" (compatible avec svn 1.7 et 1.8) |
292 | 45 | Etienne Pallier | (il contient Subversive svn connectors 4.1.2) |
293 | 45 | Etienne Pallier | |
294 | 45 | Etienne Pallier | Restart Eclipse |
295 | 45 | Etienne Pallier | |
296 | 45 | Etienne Pallier | 2) Recupération du projet |
297 | 45 | Etienne Pallier | |
298 | 45 | Etienne Pallier | File/Import/From svn (2ème fois) |
299 | 45 | Etienne Pallier | URL : https://usvn-inventirap.irap.omp.eu/repo/inventirap/trunk |
300 | 45 | Etienne Pallier | (répondre Non à la proposition de normaliser l'arborescence) |
301 | 45 | Etienne Pallier | donner un nom, par exemple : labinvent2015 |
302 | 45 | Etienne Pallier | Utiliser emplacement : |
303 | 45 | Etienne Pallier | - par défaut (directement dans le dossier d'Eclipse, c'est plus simple) |
304 | 45 | Etienne Pallier | ou bien |
305 | 45 | Etienne Pallier | - /Applications/XAMPP/xamppfiles/htdocs (si on veut que le projet s'execute directement dans le dossier web apache htdocs, mais ca n'est pas obligatoire...) |
306 | 45 | Etienne Pallier | |
307 | 45 | Etienne Pallier | S'assurer que le projet est bien reconnu comme un projet PHP (il doit y avoir un petit "P" sur le dossier racine du projet) |
308 | 45 | Etienne Pallier | Si ça n'est pas le cas, vérifier que le fichier .project (à la racine) contient bien |
309 | 45 | Etienne Pallier | <natures> |
310 | 45 | Etienne Pallier | <nature>org.eclipse.php.core.PHPNature</nature> |
311 | 45 | Etienne Pallier | </natures> |
312 | 45 | Etienne Pallier | NB : Le fichier .project est normalement versionné et donc le projet labinvent devrait être reconnu automatiquement comme projet PHP |
313 | 45 | Etienne Pallier | |
314 | 45 | Etienne Pallier | S'assurer que les fichiers de vue de cakephp (*.ctp) sont bien reconnus comme des fichiers PHP. |
315 | 45 | Etienne Pallier | Pour tester cela, ouvrir le fichier de vue cakephp/app/View/Categories/get_all.ctp |
316 | 45 | Etienne Pallier | Si ce fichier s'ouvre comme un simple fichier texte, c'est qu'il n'est pas reconnu par Eclipse comme un fichier Php. |
317 | 45 | Etienne Pallier | Il faut donc associer l'editeur Php a l'extension de fichier "*.ctp" : |
318 | 45 | Etienne Pallier | - Preferences/General/Content types |
319 | 45 | Etienne Pallier | - Dans la liste "Content types", ouvrir la section "Text", selectionner PHP |
320 | 45 | Etienne Pallier | - Ajouter l'extension "*.ctp" |
321 | 45 | Etienne Pallier | |
322 | 45 | Etienne Pallier | Vérifier la version de php utilisée (il serait préférable d'utiliser la meme version que celle du serveur officiel, début 2015 c'est toujours php 5.3) : |
323 | 45 | Etienne Pallier | - Clic-droit sur le projet, Propriétés |
324 | 45 | Etienne Pallier | - PHP |
325 | 45 | Etienne Pallier | - Interpreter |
326 | 45 | Etienne Pallier | - Enable project specific settings, PHP Version : "PHP 5.3" |
327 | 45 | Etienne Pallier | |
328 | 45 | Etienne Pallier | S'assurer que le texte est bien encodé en UTF-8 par défaut : |
329 | 45 | Etienne Pallier | clic-droit sur le dossier racine du projet (dans PHP Explorer), Properties, Resource : dans la zone "Text file encoding" cocher "Other" et sélectionner UTF-8 |
330 | 45 | Etienne Pallier | ( |
331 | 45 | Etienne Pallier | Il faudrait commiter ça mais je ne sais pas trop si c'est risqué ou pas. |
332 | 45 | Etienne Pallier | Les fichiers concernés sont : |
333 | 45 | Etienne Pallier | - .project (déjà versionné) : car il commence par la ligne "<?xml version="1.0" encoding="UTF-8"?>" |
334 | 45 | Etienne Pallier | - mais c'est surtout celui-ci qui compte (actuellement ignoré de svn) : .settings/org.eclipse.core.resources.prefs : car sa 2eme ligne est "encoding/<project>=UTF-8" |
335 | 45 | Etienne Pallier | ) |
336 | 45 | Etienne Pallier | |
337 | 45 | Etienne Pallier | Les éléments suivants sont normalement DEJA ignorés par svn (svn:ignore), à vérifier : |
338 | 45 | Etienne Pallier | - .settings/ |
339 | 45 | Etienne Pallier | - cakephp/app/tmp/ : tout sauf |
340 | 45 | Etienne Pallier | - documents/ |
341 | 45 | Etienne Pallier | - cakephp/app/Config/ : |
342 | 45 | Etienne Pallier | - database.php |
343 | 45 | Etienne Pallier | - labinvent.php |
344 | 45 | Etienne Pallier | |
345 | 45 | Etienne Pallier | |
346 | 45 | Etienne Pallier | |
347 | 45 | Etienne Pallier | |
348 | 45 | Etienne Pallier | ********************************************************* |
349 | 45 | Etienne Pallier | REMARQUES INTERRESSANTES (MAIS VOUS POUVEZ LES IGNORER) |
350 | 45 | Etienne Pallier | |
351 | 45 | Etienne Pallier | // DEBUT DES REMARQUES |
352 | 45 | Etienne Pallier | |
353 | 45 | Etienne Pallier | A la racine du projet, j'ai plusieurs éléments cachés de configuration Eclipse : |
354 | 45 | Etienne Pallier | |
355 | 45 | Etienne Pallier | 1) fichier .buildpath |
356 | 45 | Etienne Pallier | Il est versionné puisque "svn status .buildpath" (depuis la console) ne donne rien |
357 | 45 | Etienne Pallier | Il contient : |
358 | 45 | Etienne Pallier | |
359 | 45 | Etienne Pallier | <?xml version="1.0" encoding="UTF-8"?> |
360 | 45 | Etienne Pallier | <buildpath> |
361 | 45 | Etienne Pallier | <buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/> |
362 | 45 | Etienne Pallier | <buildpathentry kind="lib" path="docs/mockup/mockup_html.zip"/> |
363 | 45 | Etienne Pallier | <buildpathentry kind="src" path="cakephp"/> |
364 | 45 | Etienne Pallier | </buildpath> |
365 | 45 | Etienne Pallier | |
366 | 45 | Etienne Pallier | 2) fichier .project |
367 | 45 | Etienne Pallier | Il est déjà versionné |
368 | 45 | Etienne Pallier | Il contient : |
369 | 45 | Etienne Pallier | <?xml version="1.0" encoding="UTF-8"?> |
370 | 45 | Etienne Pallier | <projectDescription> |
371 | 45 | Etienne Pallier | <name>invirap</name> |
372 | 45 | Etienne Pallier | <comment></comment> |
373 | 45 | Etienne Pallier | <projects> |
374 | 45 | Etienne Pallier | </projects> |
375 | 45 | Etienne Pallier | <buildSpec> |
376 | 45 | Etienne Pallier | <buildCommand> |
377 | 45 | Etienne Pallier | <name>org.eclipse.wst.common.project.facet.core.builder</name> |
378 | 45 | Etienne Pallier | <arguments> |
379 | 45 | Etienne Pallier | </arguments> |
380 | 45 | Etienne Pallier | </buildCommand> |
381 | 45 | Etienne Pallier | <buildCommand> |
382 | 45 | Etienne Pallier | <name>org.eclipse.wst.validation.validationbuilder</name> |
383 | 45 | Etienne Pallier | <arguments> |
384 | 45 | Etienne Pallier | </arguments> |
385 | 45 | Etienne Pallier | </buildCommand> |
386 | 45 | Etienne Pallier | <buildCommand> |
387 | 45 | Etienne Pallier | <name>org.eclipse.dltk.core.scriptbuilder</name> |
388 | 45 | Etienne Pallier | <arguments> |
389 | 45 | Etienne Pallier | </arguments> |
390 | 45 | Etienne Pallier | </buildCommand> |
391 | 45 | Etienne Pallier | </buildSpec> |
392 | 45 | Etienne Pallier | <natures> |
393 | 45 | Etienne Pallier | <nature>org.eclipse.php.core.PHPNature</nature> |
394 | 45 | Etienne Pallier | <nature>org.eclipse.wst.common.project.facet.core.nature</nature> |
395 | 45 | Etienne Pallier | </natures> |
396 | 45 | Etienne Pallier | </projectDescription> |
397 | 45 | Etienne Pallier | |
398 | 45 | Etienne Pallier | 3) dossier .settings/ (exclus de svn) |
399 | 45 | Etienne Pallier | Il contient 3 fichiers : |
400 | 45 | Etienne Pallier | |
401 | 45 | Etienne Pallier | - org.eclipse.core.resources.prefs : bizarrement, il ne contient que quelques références seulement : |
402 | 45 | Etienne Pallier | eclipse.preferences.version=1 |
403 | 45 | Etienne Pallier | encoding//cakephp/app/Controller/MaterielsController.php=UTF-8 |
404 | 45 | Etienne Pallier | encoding//cakephp/app/View/Elements/menu_view.ctp=UTF-8 |
405 | 45 | Etienne Pallier | encoding//cakephp/app/View/Layouts/default.ctp=UTF-8 |
406 | 45 | Etienne Pallier | encoding//cakephp/app/View/Materiels/index.ctp=UTF-8 |
407 | 45 | Etienne Pallier | encoding//cakephp/app/View/Materiels/scaffold.view.ctp=UTF-8 |
408 | 45 | Etienne Pallier | encoding//database/Upd_TableConstraints.sql=UTF-8 |
409 | 45 | Etienne Pallier | encoding//database/update/README.txt=UTF-8 |
410 | 45 | Etienne Pallier | encoding//docs/HOWTO.txt=UTF-8 |
411 | 45 | Etienne Pallier | encoding//install/HOWTO.txt=UTF-8 |
412 | 45 | Etienne Pallier | encoding/<project>=UTF-8 |
413 | 45 | Etienne Pallier | |
414 | 45 | Etienne Pallier | - org.eclipse.php.core.prefs |
415 | 45 | Etienne Pallier | eclipse.preferences.version=1 |
416 | 45 | Etienne Pallier | include_path=0;/invirap\u00051;/invirap/docs/mockup/mockup_html.zip |
417 | 45 | Etienne Pallier | |
418 | 45 | Etienne Pallier | - org.eclipse.wst.common.project.facet.core.xml : sans doute inutile ? (lié à "Faceted Project Validation Builder" dans Properties/Builders) |
419 | 45 | Etienne Pallier | <?xml version="1.0" encoding="UTF-8"?> |
420 | 45 | Etienne Pallier | <faceted-project> |
421 | 45 | Etienne Pallier | <fixed facet="php.core.component"/> |
422 | 45 | Etienne Pallier | <fixed facet="php.component"/> |
423 | 45 | Etienne Pallier | <installed facet="php.core.component" version="1"/> |
424 | 45 | Etienne Pallier | <installed facet="php.component" version="5.4"/> |
425 | 45 | Etienne Pallier | </faceted-project> |
426 | 45 | Etienne Pallier | |
427 | 45 | Etienne Pallier | // FIN DES REMARQUES |
428 | 45 | Etienne Pallier | ********************************************************* |
429 | 45 | Etienne Pallier | |
430 | 45 | Etienne Pallier | |
431 | 45 | Etienne Pallier | II - Configuration du projet LABINVENT |
432 | 45 | Etienne Pallier | ************************************************** |
433 | 45 | Etienne Pallier | |
434 | 1 | Etienne Pallier | Aller maintenant dans la section INSTALLATION ci-dessue, à partir du point "B/ Installation" |
435 | 46 | Etienne Pallier | |
436 | 47 | Etienne Pallier | h2. %{margin-left:0px; font-weight:bold; font-size:25px; display:block; color:red;}(DEV ONLY) NOTES FOR ECLIPSE USERS% |
437 | 46 | Etienne Pallier | |
438 | 46 | Etienne Pallier | 0) Install Eclipse (if necessary) |
439 | 46 | Etienne Pallier | |
440 | 46 | Etienne Pallier | Get the Eclipse version for Php |
441 | 46 | Etienne Pallier | |
442 | 46 | Etienne Pallier | Install the plug-in pydev (via install new software, add http://pydev.org/updates) |
443 | 46 | Etienne Pallier | |
444 | 46 | Etienne Pallier | Install the django template editor (via install new software, add http://eclipse.kacprzak.org/updates) |
445 | 46 | Etienne Pallier | |
446 | 46 | Etienne Pallier | 1) Deactivate CA certificate verification |
447 | 46 | Etienne Pallier | |
448 | 46 | Etienne Pallier | Window -> Preferences -> Team -> git -> configuration -> Add entry |
449 | 46 | Etienne Pallier | |
450 | 46 | Etienne Pallier | Key = http.sslVerify |
451 | 46 | Etienne Pallier | Value = false |
452 | 46 | Etienne Pallier | |
453 | 46 | Etienne Pallier | 2) Fetch the project |
454 | 46 | Etienne Pallier | |
455 | 46 | Etienne Pallier | File/Import project from git |
456 | 46 | Etienne Pallier | |
457 | 48 | Etienne Pallier | Select repository source: Clone URI: https://gitlab.irap.omp.eu/epallier/labinvent.git |
458 | 46 | Etienne Pallier | |
459 | 46 | Etienne Pallier | Directory: |
460 | 48 | Etienne Pallier | par défaut, il propose : /Users/epallier/git/labinvent |
461 | 46 | Etienne Pallier | mais on peut le mettre ailleurs (c'est ce que j'ai fait) |
462 | 46 | Etienne Pallier | |
463 | 46 | Etienne Pallier | initial branch: master |
464 | 46 | Etienne Pallier | remote name: origin |
465 | 46 | Etienne Pallier | |
466 | 46 | Etienne Pallier | Import as general project |
467 | 46 | Etienne Pallier | |
468 | 48 | Etienne Pallier | Project name: LABINVENT |
469 | 46 | Etienne Pallier | |
470 | 46 | Etienne Pallier | |
471 | 46 | Etienne Pallier | 3) Configure the project |
472 | 46 | Etienne Pallier | |
473 | 46 | Etienne Pallier | The project is created. Now, you have to set it as a «PyDev » and a « Django » project. |
474 | 46 | Etienne Pallier | |
475 | 46 | Etienne Pallier | clic droit sur le projet / PyDev / set as a PyDev project |
476 | 46 | Etienne Pallier | |
477 | 46 | Etienne Pallier | |
478 | 46 | Etienne Pallier | |
479 | 46 | Etienne Pallier | 4) Set Code style |
480 | 46 | Etienne Pallier | |
481 | 46 | Etienne Pallier | Window/Preferences : Pydev / Editor |
482 | 46 | Etienne Pallier | - Auto Imports : uncheck « Do auto import » |
483 | 46 | Etienne Pallier | - Code style: |
484 | 46 | Etienne Pallier | - Locals … : camelCase |
485 | 46 | Etienne Pallier | - Methods : camelCase() with first lower |
486 | 46 | Etienne Pallier | - Code style / Code Formatter: activer « use autopep8.py for code formatting » |
487 | 46 | Etienne Pallier | - Tabs : Tab length : 4 |
488 | 46 | Etienne Pallier | |
489 | 46 | Etienne Pallier | 5) Now, once the Python3 virtual environment is installed (see above), |
490 | 46 | Etienne Pallier | set it in Eclipse as the project interpreter: |
491 | 46 | Etienne Pallier | |
492 | 46 | Etienne Pallier | Right clic on the project / Properties / PyDev - Interpreter/Grammar : |
493 | 46 | Etienne Pallier | Grammar version : 3 |
494 | 46 | Etienne Pallier | |
495 | 46 | Etienne Pallier | Interpreter : click on « click here to configure an interpreter not listed » |
496 | 46 | Etienne Pallier | |
497 | 46 | Etienne Pallier | click on « New... » : |
498 | 46 | Etienne Pallier | - Interpreter name : venv_py35_pyros |
499 | 46 | Etienne Pallier | - Interpreter executable : click on « Browse » |
500 | 46 | Etienne Pallier | Select your virtualenv python35 executable (private/venv_py35_pyros/bin/python3.5) |
501 | 46 | Etienne Pallier | click OK |
502 | 46 | Etienne Pallier | |
503 | 46 | Etienne Pallier | *Now, a last thing to do so that Pydev finds Django:* |
504 | 46 | Etienne Pallier | |
505 | 46 | Etienne Pallier | In the Python interpreters list, select your virtual env (venv_py35_pyros) |
506 | 46 | Etienne Pallier | |
507 | 46 | Etienne Pallier | Click on the tab "Libraries" |
508 | 46 | Etienne Pallier | |
509 | 46 | Etienne Pallier | clic on 'New folder', then select your virtualenv's lib/python3.5/site-packages folder |
510 | 46 | Etienne Pallier | |
511 | 46 | Etienne Pallier | OK |
512 | 46 | Etienne Pallier | |
513 | 46 | Etienne Pallier | Interpreter: select now venv_py35_pyros from the list |
514 | 46 | Etienne Pallier | |
515 | 46 | Etienne Pallier | OK |
516 | 46 | Etienne Pallier | |
517 | 46 | Etienne Pallier | 6) Test |
518 | 46 | Etienne Pallier | |
519 | 46 | Etienne Pallier | * Right-clic on the project / Django / Run Django tests |
520 | 46 | Etienne Pallier | |
521 | 46 | Etienne Pallier | * Right-clic on the project / Django / Custom command / ... |
522 | 46 | Etienne Pallier | |
523 | 46 | Etienne Pallier | |
524 | 46 | Etienne Pallier | 7) Run |
525 | 46 | Etienne Pallier | |
526 | 46 | Etienne Pallier | Right clic on project -> Django/Custom command/runserver |
527 | 46 | Etienne Pallier | |
528 | 46 | Etienne Pallier | Error on Ubuntu : |
529 | 46 | Etienne Pallier | |
530 | 46 | Etienne Pallier | <pre> |
531 | 46 | Etienne Pallier | |
532 | 46 | Etienne Pallier | Traceback (most recent call last): |
533 | 46 | Etienne Pallier | File "/home/carens_p/git/pyros/src/manage.py", line 8, in <module> |
534 | 46 | Etienne Pallier | from django.core.management import execute_from_command_line |
535 | 46 | Etienne Pallier | ImportError: No module named 'django' |
536 | 46 | Etienne Pallier | |
537 | 46 | Etienne Pallier | </pre> |
538 | 46 | Etienne Pallier | |
539 | 46 | Etienne Pallier | Project -> Properties -> Pydev interpreter -> Clic here to configure an interpreter not listed |
540 | 46 | Etienne Pallier | |
541 | 46 | Etienne Pallier | select venv_py35_pyros |
542 | 46 | Etienne Pallier | |
543 | 46 | Etienne Pallier | In Libraries, clic on 'New folder', then select your virtualenv's lib/python3.5/site-packages folder. |
544 | 46 | Etienne Pallier | |
545 | 46 | Etienne Pallier | OK -> re-select venv_py35_pyros in 'Interpreter' dropdown menu |
546 | 46 | Etienne Pallier | |
547 | 46 | Etienne Pallier | Then right clic on project -> Django/Custom command/runserver |
548 | 46 | Etienne Pallier | |
549 | 46 | Etienne Pallier | check http://localhost:8000/ |