Pour éditer le wiki, il faut demander un compte à un Lapin !

Difference between revisions of "Howto:Mise à jour du site web"

From Le L∞p's Wiki
Jump to: navigation, search
(Routine)
(Modifier le code)
Line 26: Line 26:
 
   how.html.mako  what.html.mako  when.html.mako  where.html.mako
 
   how.html.mako  what.html.mako  when.html.mako  where.html.mako
 
   $ ls _templates/*.mako
 
   $ ls _templates/*.mako
   _templates/atom.mako           _templates/footer.mako _templates/permapage.mako     _templates/rss.mako
+
   _templates/atom.mako     _templates/footer.mako       _templates/permapage.mako
  _templates/base.mako           _templates/head.mako    _templates/post.mako         _templates/site.mako
+
  _templates/rss.mako       _templates/base.mako         _templates/head.mako     
  _templates/chronological.mako  _templates/header.mako _templates/post_excerpt.mako
+
  _templates/post.mako     _templates/site.mako         _templates/chronological.mako   
 +
  _templates/header.mako   _templates/post_excerpt.mako
  
 
==== Pages statiques ====
 
==== Pages statiques ====
  
* how.html.mako
+
* how.html.mako : contient le texte de la page "how"
** contient le texte de la page "how"
+
* what.html.mako : contient le texte de la page "what"
* what.html.mako
+
* when.html.mako : contient le texte de la page "when"
** contient le texte de la page "what"
+
* where.html.mako : contient le texte de la page "where"
* when.html.mako
+
** contient le texte de la page "when"
+
* where.html.mako
+
** contient le texte de la page "where"
+
  
 
==== Pages dynamiques ====
 
==== Pages dynamiques ====
  
 
* feeds
 
* feeds
** _templates/atom.mako : contient le feed type atom
+
** '''_templates/atom.mako''' : contient le feed type atom
** _templates/rss.mako : contient le feed type rss
+
** '''_templates/rss.mako''' : contient le feed type rss
  
* _templates/base.mako : permet l'affichage d'une page (à ne pas modifier)
+
* structure des pages
* _templates/head.mako : contient les liens vers les feuilles de styles, les scripts JS etc.. tout ce qui va au milieu de <head></head>
+
* '''_templates/head.mako''' : contient les liens vers les feuilles de styles, les scripts JS etc.. tout ce qui va au milieu de <head></head>
* _templates/header.mako : en-tête de chaque page (contient le titre, l'heisenberg et les bandeaux-menus)
+
* '''_templates/header.mako''' : en-tête de chaque page (contient le titre, l'heisenberg et les bandeaux-menus)
* _templates/footer.mako : contient le pied de page (collé au coin en bas à droite de la page) avec les icones des supports
+
* '''_templates/footer.mako''' : contient le pied de page (collé au coin en bas à droite de la page) avec les icones des supports
* _templates/site.mako : structure de toute page du site (avec l'inclusion des blocks head/header/footer)
+
* '''_templates/site.mako''' : structure de toute page du site (avec l'inclusion des blocks head/header/footer)
* _templates/permapage.mako : structure de la page de consultation d'un post
+
* '''_templates/post.mako''' : structure et affichage d'un post
* _templates/post.mako : structure et affichage d'un post
+
* '''_templates/post_excerpt.mako''' : structure et affichage d'un résumé de post
* _templates/post_excerpt.mako : structure et affichage d'un résumé de post
+
 
* _templates/chronological.mako : affiche tous les posts de blog en format paginé (correspond aussi à l'index du site)  
+
* structure du site
 +
* '''_templates/base.mako''' : permet l'affichage d'une page (à ne pas modifier)
 +
* '''_templates/permapage.mako''' : structure de la page de consultation d'un post
 +
* '''_templates/chronological.mako''' : affiche tous les posts de blog en format paginé (correspond aussi à l'index du site)  
  
 
Il y a aussi du CSS, des images et un chouilla de JS parce qu'Anéfé ;)
 
Il y a aussi du CSS, des images et un chouilla de JS parce qu'Anéfé ;)

Revision as of 11:52, 24 August 2012

La mise à jour du site ouaibe pour les nuls.

Il est important de faire des commit atomiques, et donc de faire un changement, suivi d'une description de ce qui a été fait, chaque changement étant le plus petit possible. (ici faudrait un exemple)

Prérequis

Installer blogofile et git :

 # aptitude install python-setuptools git
 # pip install Blogofile

Obtenir le code source

Clôner le dépôt git depuis Gitorious :

Puis dans un shell :

 $ git clone git://git@gitorious.org/MONBLAZE/le-loop-blog

Ce qui a pour effet de créer votre propre espace de travail sur Gitorious.

Routine

Modifier le code

Les fichiers en .mako sont des fichiers de syntaxe mako.

 $ ls *.mako
 how.html.mako  what.html.mako  when.html.mako  where.html.mako
 $ ls _templates/*.mako
 _templates/atom.mako      _templates/footer.mako       _templates/permapage.mako
 _templates/rss.mako       _templates/base.mako         _templates/head.mako    
 _templates/post.mako      _templates/site.mako         _templates/chronological.mako  
 _templates/header.mako    _templates/post_excerpt.mako

Pages statiques

  • how.html.mako : contient le texte de la page "how"
  • what.html.mako : contient le texte de la page "what"
  • when.html.mako : contient le texte de la page "when"
  • where.html.mako : contient le texte de la page "where"

Pages dynamiques

  • feeds
    • _templates/atom.mako : contient le feed type atom
    • _templates/rss.mako : contient le feed type rss
  • structure des pages
  • _templates/head.mako : contient les liens vers les feuilles de styles, les scripts JS etc.. tout ce qui va au milieu de <head></head>
  • _templates/header.mako : en-tête de chaque page (contient le titre, l'heisenberg et les bandeaux-menus)
  • _templates/footer.mako : contient le pied de page (collé au coin en bas à droite de la page) avec les icones des supports
  • _templates/site.mako : structure de toute page du site (avec l'inclusion des blocks head/header/footer)
  • _templates/post.mako : structure et affichage d'un post
  • _templates/post_excerpt.mako : structure et affichage d'un résumé de post
  • structure du site
  • _templates/base.mako : permet l'affichage d'une page (à ne pas modifier)
  • _templates/permapage.mako : structure de la page de consultation d'un post
  • _templates/chronological.mako : affiche tous les posts de blog en format paginé (correspond aussi à l'index du site)

Il y a aussi du CSS, des images et un chouilla de JS parce qu'Anéfé ;)

 $ ls css/
 site.css
 $ ls js/
 blink.js
 $ ls img/
 88x31.png  adfreebutton.jpg  bg.jpeg  blackboxe.png  lqdn-censortefeux-1.gif  lqdn.png  phack.png  rss.png  tetalab.png  tmplab.png  toile-libre.png  usi.png  vi_powered.gif

Sinon, le code .py est en ... python, en utilisant la bibliothèque blogofile.

Tester en local

Générer le site depuis les sources :

 $ blogofile build
 $ blogofile serve

Vérifier le résultat dans le navigateur sur http://127.0.0.1:8080/

Valider la modification

Une fois qu'un changement a été vérifié et ne casse pas tout, on ajoute les fichiers modifiés :

 $ git add %liste_noms_fichiers%

où %liste_noms_fichiers% est la liste des noms de fichiers modifiés pour ce changement. Voir aussi git status.

Puis on enregistre la modification :

 $ git commit -m "%description de ce qui a été fait dans le commit%"

Par convention :

  • "[ENH] added bla and bla" pour un ajout (enhancement)
  • "[FIX] fixed typo in bla and bla" pour une correction
  • "[DEL] removed ..." pour un retrait

Publier la modification

On envoie le tout sur Gitorious :

 $ git push origin master

Faire valider la mise à jour

Retourner sur Gitorious et cliquer sur Merge request

Puis soumettre un message pour proposer les changements en expliquant le tout.

Version courte

 # aptitude install python-setuptools git
 # easy_install Blogofile
 https://gitorious.org/le-loop-blog/le-loop-blogClone
 $ <éditeur> *.mako css/* js/* img/*
 $ blogofile build
 $ blogofile serve
 <zieute>
 $ firefox http://127.0.0.1:8080/ &
 $ git add %fichiers%
 $ git commit -m "[FIX] changé l'eau en vin"
 $ git push origin master
 https://gitorious.org/le-loop-blog/le-loop-blogMerge request
 $ echo 'debout molasse' | mail webmaster@leloop.org