<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Je veux devenir mon propre patron &#187; ant</title>
	<atom:link href="http://www.monproprepatron.fr/tag/ant/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.monproprepatron.fr</link>
	<description>Le chemin vers l&#039;indépendance en tant qu&#039;entrepreneur dans le monde d&#039;Internet</description>
	<lastBuildDate>Fri, 06 Aug 2010 10:39:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Script de mise en prod : gestion des magic quotes chez 1and1</title>
		<link>http://www.monproprepatron.fr/2010/03/script-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1/</link>
		<comments>http://www.monproprepatron.fr/2010/03/script-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 08:21:55 +0000</pubDate>
		<dc:creator>monproprepatron</dc:creator>
				<category><![CDATA[Technique]]></category>
		<category><![CDATA[1and1]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[ant-contrib]]></category>
		<category><![CDATA[hébergement mutualisé]]></category>
		<category><![CDATA[magic quotes]]></category>
		<category><![CDATA[mise en production]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[php.ini]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.monproprepatron.fr/?p=585</guid>
		<description><![CDATA[Il me restait encore un dernier point à aborder concernant mon petit script de mise en prod. Celui-ci est spécifique aux hébergements mutualisés chez 1and1, puisqu'il s'agit de la gestion des magic quotes qui sont activées par défaut chez cet hébergeur. Cette partie du script vise donc à les désactiver.]]></description>
			<content:encoded><![CDATA[<p>Il me restait encore un dernier point à aborder concernant mon petit script de mise en prod. Celui-ci est spécifique aux hébergements mutualisés chez 1and1, puisqu&#8217;il s&#8217;agit de la gestion des magic quotes qui sont activées par défaut chez cet hébergeur. Cette partie du script vise donc à les désactiver.</p>
<p>Vu qu&#8217;il s&#8217;agit d&#8217;un hébergement mutualisé, il n&#8217;est pas possible de modifier directement la configuration serveur de Php. Il est possible de faire la modification dans le code des pages Php, mais je préfère  différencier les aspects métiers du code et la configuration. La dernière solution est de faire la modification dans un fichier php.ini.</p>
<p>Contenu du fichier php.ini :<br />
<code>magic_quotes_gpc = Off<br />
magic_quotes_runtime = Off<br />
magic_quotes_sybase = Off</code></p>
<h3>Un fichier?</h3>
<p>Oui et non : <strong>un</strong> fichier php.ini <strong>par</strong> répertoire contenant des fichiers Php.</p>
<p>Ce qui est un peu lourd et c&#8217;est là qu&#8217;intervient le script de mise en prod. C&#8217;est lui qui va se charger de recopier le fichier php.ini dans tous les répertoires concernés dans l&#8217;archive à distribuer. Pour faire cette opération on utilise l&#8217;instruction d&#8217;itération <strong>for</strong>. Elle n&#8217;est pas par défaut dans Ant, il faut ajouter la librairie ant-contrib (pour ma part, la version 1.0beta3 ne fonctionne pas, j&#8217;ai gardé la 0.6). Et il n&#8217;y a plus qu&#8217;à boucler sur les dossiers en excluant ceux qui n&#8217;en n&#8217;ont pas besoin comme les répertoires d&#8217;images, de css, &#8230;<br />
<code>&lt;for param="folder"&gt;<br />
&nbsp;&lt;path&gt;<br />
&nbsp;&nbsp;&lt;dirset dir="${DIST_DIR}"&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;include name="**" /&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;exclude name="*/css/**" /&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;exclude name="*/images/**" /&gt;<br />
&nbsp;&nbsp;&nbsp;&lt;exclude name="*/js/**" /&gt;<br />
&nbsp;&nbsp;&lt;/dirset&gt;<br />
&nbsp;&lt;/path&gt;<br />
&nbsp;&lt;sequential&gt;<br />
&nbsp;&nbsp;&lt;copy file="./php.ini" todir="@{folder}" /&gt;<br />
&nbsp;&lt;/sequential&gt;<br />
&lt;/for&gt;</code><br />
Plus d&#8217;infos sur le comportement des magic quotes chez <a title="Magic quotes chez PhpFrance" href="http://www.phpfrance.com/tutoriaux/index.php/2005/04/17/29-les-magic-quotes/trackback" target="_blank">PhpFrance</a>.</p>
<div id="crp_related"><h3>Continuez votre lecture :</h3><ul><li><a href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-prod-tag-de-sources-dans-cvs/" rel="bookmark" class="crp_title">Script de mise en prod : tag de sources dans CVS</a></li><li><a href="http://www.monproprepatron.fr/2010/02/1-jour-1-bug/" rel="bookmark" class="crp_title">1 jour, 1 bug&#8230;</a></li><li><a href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/" rel="bookmark" class="crp_title">Script de mise en production sur serveur mutualisé</a></li><li><a href="http://www.monproprepatron.fr/2010/01/installation-wordpress-chez-1and1/" rel="bookmark" class="crp_title">Installation WordPress chez 1and1</a></li><li><a href="http://www.monproprepatron.fr/2010/01/jquery-1-4-et-jquery-ui/" rel="bookmark" class="crp_title">jQuery 1.4 et jQuery UI</a></li><li>Powered by <a href="http://ajaydsouza.com/wordpress/plugins/contextual-related-posts/">Contextual Related Posts</a></li></ul></div>
<div class="sociable">
<div class="sociable_tagline">
<em>Faire suivre cet article :</em>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;t=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1" title="Facebook"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://twitter.com/home?status=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1%20-%20http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F" title="Twitter"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;annotation=Il%20me%20restait%20encore%20un%20dernier%20point%20%C3%A0%20aborder%20concernant%20mon%20petit%20script%20de%20mise%20en%20prod.%20Celui-ci%20est%20sp%C3%A9cifique%20aux%20h%C3%A9bergements%20mutualis%C3%A9s%20chez%201and1%2C%20puisqu%27il%20s%27agit%20de%20la%20gestion%20des%20magic%20quotes%20qui%20sont%20activ%C3%A9es%20par%20d%C3%A9faut%20chez%20cet%20h%C3%A9bergeur.%20Cette%20partie%20du%20script%20vise%20donc%20%C3%A0%20les%20d%C3%A9sactiver." title="Google Bookmarks"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;submitHeadline=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;submitSummary=Il%20me%20restait%20encore%20un%20dernier%20point%20%C3%A0%20aborder%20concernant%20mon%20petit%20script%20de%20mise%20en%20prod.%20Celui-ci%20est%20sp%C3%A9cifique%20aux%20h%C3%A9bergements%20mutualis%C3%A9s%20chez%201and1%2C%20puisqu%27il%20s%27agit%20de%20la%20gestion%20des%20magic%20quotes%20qui%20sont%20activ%C3%A9es%20par%20d%C3%A9faut%20chez%20cet%20h%C3%A9bergeur.%20Cette%20partie%20du%20script%20vise%20donc%20%C3%A0%20les%20d%C3%A9sactiver.&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.wikio.fr/vote?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F" title="Wikio FR"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/wikio.png" title="Wikio FR" alt="Wikio FR" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;source=Je+veux+devenir+mon+propre+patron+Le+chemin+vers+l%26%23039%3Bind%C3%A9pendance+en+tant+qu%26%23039%3Bentrepreneur+dans+le+monde+d%26%23039%3BInternet&amp;summary=Il%20me%20restait%20encore%20un%20dernier%20point%20%C3%A0%20aborder%20concernant%20mon%20petit%20script%20de%20mise%20en%20prod.%20Celui-ci%20est%20sp%C3%A9cifique%20aux%20h%C3%A9bergements%20mutualis%C3%A9s%20chez%201and1%2C%20puisqu%27il%20s%27agit%20de%20la%20gestion%20des%20magic%20quotes%20qui%20sont%20activ%C3%A9es%20par%20d%C3%A9faut%20chez%20cet%20h%C3%A9bergeur.%20Cette%20partie%20du%20script%20vise%20donc%20%C3%A0%20les%20d%C3%A9sactiver." title="LinkedIn"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="" title="Viadeo"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/" title="Viadeo" alt="Viadeo" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;notes=Il%20me%20restait%20encore%20un%20dernier%20point%20%C3%A0%20aborder%20concernant%20mon%20petit%20script%20de%20mise%20en%20prod.%20Celui-ci%20est%20sp%C3%A9cifique%20aux%20h%C3%A9bergements%20mutualis%C3%A9s%20chez%201and1%2C%20puisqu%27il%20s%27agit%20de%20la%20gestion%20des%20magic%20quotes%20qui%20sont%20activ%C3%A9es%20par%20d%C3%A9faut%20chez%20cet%20h%C3%A9bergeur.%20Cette%20partie%20du%20script%20vise%20donc%20%C3%A0%20les%20d%C3%A9sactiver." title="del.icio.us"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;bodytext=Il%20me%20restait%20encore%20un%20dernier%20point%20%C3%A0%20aborder%20concernant%20mon%20petit%20script%20de%20mise%20en%20prod.%20Celui-ci%20est%20sp%C3%A9cifique%20aux%20h%C3%A9bergements%20mutualis%C3%A9s%20chez%201and1%2C%20puisqu%27il%20s%27agit%20de%20la%20gestion%20des%20magic%20quotes%20qui%20sont%20activ%C3%A9es%20par%20d%C3%A9faut%20chez%20cet%20h%C3%A9bergeur.%20Cette%20partie%20du%20script%20vise%20donc%20%C3%A0%20les%20d%C3%A9sactiver." title="Digg"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F&amp;t=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1" title="MySpace"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.netvibes.com/share?title=Script%20de%20mise%20en%20prod%20%3A%20gestion%20des%20magic%20quotes%20chez%201and1&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F" title="Netvibes"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F03%2Fscript-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1%2F" title="Technorati"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.monproprepatron.fr/2010/03/script-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Script de mise en prod : tag de sources dans CVS</title>
		<link>http://www.monproprepatron.fr/2010/02/script-de-mise-en-prod-tag-de-sources-dans-cvs/</link>
		<comments>http://www.monproprepatron.fr/2010/02/script-de-mise-en-prod-tag-de-sources-dans-cvs/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 08:28:06 +0000</pubDate>
		<dc:creator>monproprepatron</dc:creator>
				<category><![CDATA[Technique]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[mise en production]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[tag]]></category>

		<guid isPermaLink="false">http://www.monproprepatron.fr/?p=586</guid>
		<description><![CDATA[Complément important de <a title="Script de mise en production sur serveur mutualisé" href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/">mon script de mise en production</a>, le tag des sources dans le repository CVS. CVS est un gestionnaire de sources, qui permet de stocker les différentes versions du code source. Il est donc intéressant de temps en temps, de placer des repères sur toutes ces sources, en particulier, lors d'une mise en prod. Cela permettra de récupérer l'ensemble des sources telles qu'elles étaient lors d'une mise en ligne donnée.]]></description>
			<content:encoded><![CDATA[<p>Complément important de <a title="Script de mise en production sur serveur mutualisé" href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/">mon script de mise en production</a>, le tag des sources dans le repository CVS. CVS est un gestionnaire de sources, qui permet de stocker les différentes versions du code source. Il est donc intéressant de temps en temps, de placer des repères sur toutes ces sources, en particulier, lors d&#8217;une mise en prod. Cela permettra de récupérer l&#8217;ensemble des sources telles qu&#8217;elles étaient lors d&#8217;une mise en ligne donnée.</p>
<p>Rien de bien compliqué avec Ant, on va juste ajouter quelques instructions à la target deploy_end, qui rétablit l&#8217;accès au site une fois la mise à jour de la base (manuelle&#8230;) effectuée.</p>
<p><code>&lt;tstamp&gt;<br />
 &nbsp; &lt;format property="tag_date" pattern="yyyy-MM-dd" /&gt;<br />
&lt;/tstamp&gt;<br />
&lt;echo message="Tag des repository CVS : prod_${tag_date}" /&gt;<br />
&lt;cvspass cvsroot="${CVSROOT}" password="${CVS_PWD}" passfile="./.cvspass" /&gt;<br />
&lt;cvs cvsRoot="${CVSROOT}"<br />
 &nbsp; command="rtag -R prod_${tag_date} ${CVS_MODULE}"<br />
 &nbsp; failonerror="false" quiet="true" reallyquiet="true" /&gt;<br />
&lt;cvs cvsRoot="${CVSROOT}"<br />
 &nbsp; command="rtag -R prod_${tag_date} ${CVS_MODULE_ENV}"<br />
 &nbsp; failonerror="false" quiet="true" reallyquiet="true" /&gt;</code></p>
<p>La directive tstamp permet d&#8217;obtenir la date courante au format spécifié par l&#8217;attribut pattern et la placer dans une propriété tag_date utilisable ensuite, comme ici pour le nom du tag.</p>
<p>La directive cvs exécute la &#8220;command&#8221; spécifié : rtag -R prod_${tag_date} ${CVS_MODULE}. Ce qui veut dire en français : place le tag prod_2010-02-10 sur le projet nommé par la propriété CVS_MODULE. Il y aura donc autant de commande cvs que de projets à tagguer.</p>
<div id="crp_related"><h3>Continuez votre lecture :</h3><ul><li><a href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/" rel="bookmark" class="crp_title">Script de mise en production sur serveur mutualisé</a></li><li><a href="http://www.monproprepatron.fr/2010/03/script-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1/" rel="bookmark" class="crp_title">Script de mise en prod : gestion des magic quotes chez 1and1</a></li><li><a href="http://www.monproprepatron.fr/2010/02/1-jour-1-bug/" rel="bookmark" class="crp_title">1 jour, 1 bug&#8230;</a></li><li><a href="http://www.monproprepatron.fr/2010/01/installation-wordpress-chez-1and1/" rel="bookmark" class="crp_title">Installation WordPress chez 1and1</a></li><li><a href="http://www.monproprepatron.fr/2010/03/ie6-ou-leternel-combat/" rel="bookmark" class="crp_title">IE6 ou l&#8217;éternel combat</a></li><li>Powered by <a href="http://ajaydsouza.com/wordpress/plugins/contextual-related-posts/">Contextual Related Posts</a></li></ul></div>
<div class="sociable">
<div class="sociable_tagline">
<em>Faire suivre cet article :</em>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;t=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS" title="Facebook"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://twitter.com/home?status=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS%20-%20http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F" title="Twitter"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;annotation=Compl%C3%A9ment%20important%20de%20mon%20script%20de%20mise%20en%20production%2C%20le%20tag%20des%20sources%20dans%20le%20repository%20CVS.%20CVS%20est%20un%20gestionnaire%20de%20sources%2C%20qui%20permet%20de%20stocker%20les%20diff%C3%A9rentes%20versions%20du%20code%20source.%20Il%20est%20donc%20int%C3%A9ressant%20de%20temps%20en%20temps%2C%20de%20placer%20des%20rep%C3%A8res%20sur%20toutes%20ces%20sources%2C%20en%20particulier%2C%20lors%20d%27une%20mise%20en%20prod.%20Cela%20permettra%20de%20r%C3%A9cup%C3%A9rer%20l%27ensemble%20des%20sources%20telles%20qu%27elles%20%C3%A9taient%20lors%20d%27une%20mise%20en%20ligne%20donn%C3%A9e." title="Google Bookmarks"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;submitHeadline=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;submitSummary=Compl%C3%A9ment%20important%20de%20mon%20script%20de%20mise%20en%20production%2C%20le%20tag%20des%20sources%20dans%20le%20repository%20CVS.%20CVS%20est%20un%20gestionnaire%20de%20sources%2C%20qui%20permet%20de%20stocker%20les%20diff%C3%A9rentes%20versions%20du%20code%20source.%20Il%20est%20donc%20int%C3%A9ressant%20de%20temps%20en%20temps%2C%20de%20placer%20des%20rep%C3%A8res%20sur%20toutes%20ces%20sources%2C%20en%20particulier%2C%20lors%20d%27une%20mise%20en%20prod.%20Cela%20permettra%20de%20r%C3%A9cup%C3%A9rer%20l%27ensemble%20des%20sources%20telles%20qu%27elles%20%C3%A9taient%20lors%20d%27une%20mise%20en%20ligne%20donn%C3%A9e.&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.wikio.fr/vote?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F" title="Wikio FR"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/wikio.png" title="Wikio FR" alt="Wikio FR" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;source=Je+veux+devenir+mon+propre+patron+Le+chemin+vers+l%26%23039%3Bind%C3%A9pendance+en+tant+qu%26%23039%3Bentrepreneur+dans+le+monde+d%26%23039%3BInternet&amp;summary=Compl%C3%A9ment%20important%20de%20mon%20script%20de%20mise%20en%20production%2C%20le%20tag%20des%20sources%20dans%20le%20repository%20CVS.%20CVS%20est%20un%20gestionnaire%20de%20sources%2C%20qui%20permet%20de%20stocker%20les%20diff%C3%A9rentes%20versions%20du%20code%20source.%20Il%20est%20donc%20int%C3%A9ressant%20de%20temps%20en%20temps%2C%20de%20placer%20des%20rep%C3%A8res%20sur%20toutes%20ces%20sources%2C%20en%20particulier%2C%20lors%20d%27une%20mise%20en%20prod.%20Cela%20permettra%20de%20r%C3%A9cup%C3%A9rer%20l%27ensemble%20des%20sources%20telles%20qu%27elles%20%C3%A9taient%20lors%20d%27une%20mise%20en%20ligne%20donn%C3%A9e." title="LinkedIn"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="" title="Viadeo"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/" title="Viadeo" alt="Viadeo" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;notes=Compl%C3%A9ment%20important%20de%20mon%20script%20de%20mise%20en%20production%2C%20le%20tag%20des%20sources%20dans%20le%20repository%20CVS.%20CVS%20est%20un%20gestionnaire%20de%20sources%2C%20qui%20permet%20de%20stocker%20les%20diff%C3%A9rentes%20versions%20du%20code%20source.%20Il%20est%20donc%20int%C3%A9ressant%20de%20temps%20en%20temps%2C%20de%20placer%20des%20rep%C3%A8res%20sur%20toutes%20ces%20sources%2C%20en%20particulier%2C%20lors%20d%27une%20mise%20en%20prod.%20Cela%20permettra%20de%20r%C3%A9cup%C3%A9rer%20l%27ensemble%20des%20sources%20telles%20qu%27elles%20%C3%A9taient%20lors%20d%27une%20mise%20en%20ligne%20donn%C3%A9e." title="del.icio.us"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;title=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;bodytext=Compl%C3%A9ment%20important%20de%20mon%20script%20de%20mise%20en%20production%2C%20le%20tag%20des%20sources%20dans%20le%20repository%20CVS.%20CVS%20est%20un%20gestionnaire%20de%20sources%2C%20qui%20permet%20de%20stocker%20les%20diff%C3%A9rentes%20versions%20du%20code%20source.%20Il%20est%20donc%20int%C3%A9ressant%20de%20temps%20en%20temps%2C%20de%20placer%20des%20rep%C3%A8res%20sur%20toutes%20ces%20sources%2C%20en%20particulier%2C%20lors%20d%27une%20mise%20en%20prod.%20Cela%20permettra%20de%20r%C3%A9cup%C3%A9rer%20l%27ensemble%20des%20sources%20telles%20qu%27elles%20%C3%A9taient%20lors%20d%27une%20mise%20en%20ligne%20donn%C3%A9e." title="Digg"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F&amp;t=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS" title="MySpace"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.netvibes.com/share?title=Script%20de%20mise%20en%20prod%20%3A%20tag%20de%20sources%20dans%20CVS&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F" title="Netvibes"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-prod-tag-de-sources-dans-cvs%2F" title="Technorati"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.monproprepatron.fr/2010/02/script-de-mise-en-prod-tag-de-sources-dans-cvs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Script de mise en production sur serveur mutualisé</title>
		<link>http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/</link>
		<comments>http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 10:01:45 +0000</pubDate>
		<dc:creator>monproprepatron</dc:creator>
				<category><![CDATA[Technique]]></category>
		<category><![CDATA[1and1]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[cvs]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[hébergement]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[mise en production]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.monproprepatron.fr/?p=551</guid>
		<description><![CDATA[Mon projet étant bientôt prêt, j'ai préparé la semaine dernière un script de mise en production du site, afin d'automatiser au maximum cette procédure pour la rendre plus simple, mais aussi plus sûre. N'ayant qu'un hébergement mutualisé chez 1and1, je ne dispose pas de connexion SSH, ce qui limite un peu les actions disponibles.]]></description>
			<content:encoded><![CDATA[<p>Mon projet étant bientôt prêt, j&#8217;ai préparé la semaine dernière un script de mise en production du site, afin d&#8217;automatiser au maximum cette procédure pour la rendre plus simple, mais aussi plus sûre. N&#8217;ayant qu&#8217;un hébergement mutualisé chez 1and1, je ne dispose pas de connexion SSH, ce qui limite un peu les actions disponibles.</p>
<p>J&#8217;ai choisi de faire ce script avec <a title="Ant Apache" href="http://ant.apache.org/" target="_blank">Ant</a>, tout simplement parce que je le connais pour l&#8217;avoir utilisé dans mes jobs précédents et qu&#8217;il me convient parfaitement. Il s&#8217;intègre de plus très bien dans Eclipse, que j&#8217;utilise pour développer, à condition d&#8217;avoir installé le plugin adéquat, soit l&#8217;environnement JDT (Java Development Tools), si on a choisi comme moi, une installation Eclipse PDT (Php Development Tools) qui n&#8217;inclue pas d&#8217;utilitaires pour Java. Car Ant tourne à l&#8217;aide de Java.</p>
<h2>Que fait ce script?</h2>
<p>Avec ce script, j&#8217;ai voulu automatiser 3 opérations : la sauvegarde, la construction du projet à déployer et le déploiement.</p>
<p><span id="more-551"></span></p>
<h3>La sauvegarde</h3>
<p>Dans cette &#8220;target&#8221;, je fais simplement un export des fichiers sources sur le serveur de production. Etant contraint par mon type d&#8217;hébergement, je ne peux que passer par une tâche ftp pour les récupérer. Ensuite, je créé une archive compressée à la date du jour, puis je supprime les fichiers importés.</p>
<p><code></p>
<div id="_mcePaste">&lt;target name="backup" description="Sauvegarde de la prod"&gt;</div>
<div id="_mcePaste">&lt;echo&gt;Backup des fichiers&lt;/echo&gt;</div>
<div id="_mcePaste">&lt;mkdir dir="${BACKUP_TEMP_DIR}" /&gt;</div>
<div id="_mcePaste">&lt;ftp action="get"</div>
<div>server="${FTP_SERVER}" userid="${FTP_USER}" password="${FTP_PWD}"</div>
<div>depends="false"&gt;</div>
<div id="_mcePaste">&lt;fileset dir="${BACKUP_TEMP_DIR}" /&gt;</div>
<div id="_mcePaste">&lt;/ftp&gt;</div>
<div id="_mcePaste">&lt;echo&gt;Creation de l'archive&lt;/echo&gt;</div>
<div id="_mcePaste">&lt;tstamp /&gt;</div>
<div id="_mcePaste">&lt;tar basedir="${BACKUP_TEMP_DIR}" tarfile="${BACKUP_DIR}/${BACKUP_FILE_PREFIX}-${DSTAMP}.tar" /&gt;</div>
<div id="_mcePaste">&lt;gzip zipfile="${BACKUP_DIR}/${BACKUP_FILE_PREFIX}-${DSTAMP}.tar.gz" src="${BACKUP_DIR}/${BACKUP_FILE_PREFIX}-${DSTAMP}.tar" /&gt;</div>
<div id="_mcePaste">&lt;delete file="${BACKUP_DIR}/${BACKUP_FILE_PREFIX}-${DSTAMP}.tar" /&gt;</div>
<div id="_mcePaste">&lt;delete dir="${BACKUP_TEMP_DIR}" /&gt;</div>
<div id="_mcePaste">&lt;echo&gt;Faire un dump de la base!!!&lt;/echo&gt;</div>
<div id="_mcePaste">&lt;/target&gt;</div>
<p></code></p>
<p>Pour les mêmes contraintes, il n&#8217;est pas possible de se connecter à la base de données. On ne peut donc pas automatiser un dump de la base. Il faut donc le faire à la main&#8230; Ce n&#8217;est ni long, ni compliqué à faire, c&#8217;est juste qu&#8217;il ne faut pas l&#8217;oublier.</p>
<p>Cette étape peut être relativement longue en fonction du nombre de fichiers et de leur taille. Mais on peut le faire un peu à l&#8217;avance.</p>
<h3>La construction du projet</h3>
<p>Cette étape consiste à générer un ensemble de fichiers destinés à être copiés sur le serveur. Ayant plusieurs projets CVS, je récupère le projet avec les sources en environnement de dev, que je surcharge avec celui contenant les fichiers de l&#8217;environnement de production.</p>
<p><code></p>
<div id="_mcePaste">&lt;target name="build_dist" depends="cvs_checkout" description="Préparation des fichiers à distribuer"&gt;</div>
<div id="_mcePaste">&lt;echo&gt;Suppression des fichiers du build precedent&lt;/echo&gt;</div>
<div id="_mcePaste">&lt;delete dir="${CHECKOUT_DIR}" /&gt;</div>
<div id="_mcePaste">&lt;delete dir="${DIST_DIR}" /&gt;</div>
<div id="_mcePaste">&lt;mkdir dir="${CHECKOUT_DIR}"/&gt;</div>
<div id="_mcePaste">&lt;mkdir dir="${DIST_DIR}"/&gt;</div>
<div id="_mcePaste">&lt;echo message="Recuperation du repository CVS"/&gt;</div>
<div id="_mcePaste">&lt;cvspass cvsroot="${CVSROOT}" password="${CVS_PWD}" passfile="./.cvspass" /&gt;</div>
<div id="_mcePaste">&lt;cvs cvsRoot="${CVSROOT}" package="${CVS_MODULE}" dest="${CHECKOUT_DIR}"</div>
<div id="_mcePaste">failonerror="true" quiet="true" reallyquiet="true" /&gt;</div>
<div id="_mcePaste">&lt;cvs cvsRoot="${CVSROOT}" package="${CVS_MODULE_ENV}" dest="${CHECKOUT_DIR}"</div>
<div id="_mcePaste">failonerror="true" quiet="true" reallyquiet="true" /&gt;</div>
<div id="_mcePaste">&lt;echo message="Preparation des fichiers a distribuer" /&gt;</div>
<div id="_mcePaste">&lt;move todir="${DIST_DIR}" preservelastmodified="true"&gt;</div>
<div id="_mcePaste">&lt;fileset dir="${CHECKOUT_DIR}/${CVS_MODULE}" /&gt;</div>
<div id="_mcePaste">&lt;/move&gt;</div>
<div id="_mcePaste">&lt;move todir="${DIST_DIR}" preservelastmodified="false"&gt;</div>
<div id="_mcePaste">&lt;fileset dir="${CHECKOUT_DIR}/${CVS_MODULE_ENV}" /&gt;</div>
<div id="_mcePaste">&lt;/move&gt;</div>
<div id="_mcePaste">&lt;/target&gt;</div>
<p></code></p>
<h3>Le déploiement</h3>
<p>Cette étape s&#8217;effectue en 2 fois, là aussi pour cause d&#8217;impossibilité de connexion à la base de données via le script.</p>
<p>Dans un premier temps, on copie un fichier .htaccess, permettant de renvoyer toutes les requêtes HTTP vers une page d&#8217;attente, et on copie les fichiers construits à l&#8217;étape précédente (sauf le .htaccess) sur le serveur de production.</p>
<p><code></p>
<div id="_mcePaste">&lt;target name="deploy_start" description="Deploiement en prod"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;echo message="Deploiement en prod" /&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;ftp server="${FTP_SERVER}"<span style="white-space: pre;"> </span>userid="${FTP_USER}" password="${FTP_PWD}"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;fileset dir="."&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;include name=".htaccess" /&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/fileset&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/ftp&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;!-- Mettre depends a true pour n'envoyer que les fichiers nouveaux ou modifiés --&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;ftp server="${FTP_SERVER}"<span style="white-space: pre;"> </span>userid="${FTP_USER}" password="${FTP_PWD}" depends="yes"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;fileset dir="${DIST_DIR}"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;exclude name="./.htaccess" /&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/fileset&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/ftp&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;echo&gt;!!! Faire la mise a jour de la base !!!&lt;/echo&gt;</div>
<div id="_mcePaste">&lt;/target&gt;</div>
<p></code></p>
<p>Ensuite, au besoin, il faut faire la mise à jour de la base de données à la main.</p>
<p>Dans un second temps, on copie le .htaccess de l&#8217;environnement de production qui n&#8217;a pas été copié précédemment pour rétablir l&#8217;accès au site.</p>
<p><code></p>
<div id="_mcePaste">&lt;target name="deploy_end" description="Deploiement en prod"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;echo message="Remise de l'acces au site" /&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;ftp server="${FTP_SERVER}"<span style="white-space: pre;"> </span>userid="${FTP_USER}" password="${FTP_PWD}"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;fileset dir="${DIST_DIR}"&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;include name=".htaccess" /&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/fileset&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;"> </span>&lt;/ftp&gt;</div>
<div id="_mcePaste">&lt;/target&gt;</div>
<p></code><br />
Y&#8217;a surement de meilleures méthodes, mais celle-ci fonctionne pour moi pour l&#8217;instant.</p>
<div id="crp_related"><h3>Continuez votre lecture :</h3><ul><li><a href="http://www.monproprepatron.fr/2010/02/script-de-mise-en-prod-tag-de-sources-dans-cvs/" rel="bookmark" class="crp_title">Script de mise en prod : tag de sources dans CVS</a></li><li><a href="http://www.monproprepatron.fr/2009/11/salon-des-entrepreneurs-de-nantes/" rel="bookmark" class="crp_title">Salon des entrepreneurs de Nantes</a></li><li><a href="http://www.monproprepatron.fr/2009/08/vacances-joublie-tout/" rel="bookmark" class="crp_title">Vacances, j&#8217;oublie tout&#8230;</a></li><li><a href="http://www.monproprepatron.fr/2009/09/besoin-dun-editeur-de-texte-riche/" rel="bookmark" class="crp_title">Besoin d&#8217;un éditeur de texte riche</a></li><li><a href="http://www.monproprepatron.fr/2010/03/script-de-mise-en-prod-gestion-des-magic-quotes-chez-1and1/" rel="bookmark" class="crp_title">Script de mise en prod : gestion des magic quotes chez 1and1</a></li><li>Powered by <a href="http://ajaydsouza.com/wordpress/plugins/contextual-related-posts/">Contextual Related Posts</a></li></ul></div>
<div class="sociable">
<div class="sociable_tagline">
<em>Faire suivre cet article :</em>
</div>
<ul>
	<li class="sociablefirst"><a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;t=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9" title="Facebook"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://twitter.com/home?status=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9%20-%20http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F" title="Twitter"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;title=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;annotation=Mon%20projet%20%C3%A9tant%20bient%C3%B4t%20pr%C3%AAt%2C%20j%27ai%20pr%C3%A9par%C3%A9%20la%20semaine%20derni%C3%A8re%20un%20script%20de%20mise%20en%20production%20du%20site%2C%20afin%20d%27automatiser%20au%20maximum%20cette%20proc%C3%A9dure%20pour%20la%20rendre%20plus%20simple%2C%20mais%20aussi%20plus%20s%C3%BBre.%20N%27ayant%20qu%27un%20h%C3%A9bergement%20mutualis%C3%A9%20chez%201and1%2C%20je%20ne%20dispose%20pas%20de%20connexion%20SSH%2C%20ce%20qui%20limite%20un%20peu%20les%20actions%20disponibles." title="Google Bookmarks"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;submitHeadline=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;submitSummary=Mon%20projet%20%C3%A9tant%20bient%C3%B4t%20pr%C3%AAt%2C%20j%27ai%20pr%C3%A9par%C3%A9%20la%20semaine%20derni%C3%A8re%20un%20script%20de%20mise%20en%20production%20du%20site%2C%20afin%20d%27automatiser%20au%20maximum%20cette%20proc%C3%A9dure%20pour%20la%20rendre%20plus%20simple%2C%20mais%20aussi%20plus%20s%C3%BBre.%20N%27ayant%20qu%27un%20h%C3%A9bergement%20mutualis%C3%A9%20chez%201and1%2C%20je%20ne%20dispose%20pas%20de%20connexion%20SSH%2C%20ce%20qui%20limite%20un%20peu%20les%20actions%20disponibles.&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.wikio.fr/vote?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F" title="Wikio FR"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/wikio.png" title="Wikio FR" alt="Wikio FR" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;title=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;source=Je+veux+devenir+mon+propre+patron+Le+chemin+vers+l%26%23039%3Bind%C3%A9pendance+en+tant+qu%26%23039%3Bentrepreneur+dans+le+monde+d%26%23039%3BInternet&amp;summary=Mon%20projet%20%C3%A9tant%20bient%C3%B4t%20pr%C3%AAt%2C%20j%27ai%20pr%C3%A9par%C3%A9%20la%20semaine%20derni%C3%A8re%20un%20script%20de%20mise%20en%20production%20du%20site%2C%20afin%20d%27automatiser%20au%20maximum%20cette%20proc%C3%A9dure%20pour%20la%20rendre%20plus%20simple%2C%20mais%20aussi%20plus%20s%C3%BBre.%20N%27ayant%20qu%27un%20h%C3%A9bergement%20mutualis%C3%A9%20chez%201and1%2C%20je%20ne%20dispose%20pas%20de%20connexion%20SSH%2C%20ce%20qui%20limite%20un%20peu%20les%20actions%20disponibles." title="LinkedIn"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/linkedin.png" title="LinkedIn" alt="LinkedIn" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="" title="Viadeo"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/" title="Viadeo" alt="Viadeo" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;title=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;notes=Mon%20projet%20%C3%A9tant%20bient%C3%B4t%20pr%C3%AAt%2C%20j%27ai%20pr%C3%A9par%C3%A9%20la%20semaine%20derni%C3%A8re%20un%20script%20de%20mise%20en%20production%20du%20site%2C%20afin%20d%27automatiser%20au%20maximum%20cette%20proc%C3%A9dure%20pour%20la%20rendre%20plus%20simple%2C%20mais%20aussi%20plus%20s%C3%BBre.%20N%27ayant%20qu%27un%20h%C3%A9bergement%20mutualis%C3%A9%20chez%201and1%2C%20je%20ne%20dispose%20pas%20de%20connexion%20SSH%2C%20ce%20qui%20limite%20un%20peu%20les%20actions%20disponibles." title="del.icio.us"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;title=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;bodytext=Mon%20projet%20%C3%A9tant%20bient%C3%B4t%20pr%C3%AAt%2C%20j%27ai%20pr%C3%A9par%C3%A9%20la%20semaine%20derni%C3%A8re%20un%20script%20de%20mise%20en%20production%20du%20site%2C%20afin%20d%27automatiser%20au%20maximum%20cette%20proc%C3%A9dure%20pour%20la%20rendre%20plus%20simple%2C%20mais%20aussi%20plus%20s%C3%BBre.%20N%27ayant%20qu%27un%20h%C3%A9bergement%20mutualis%C3%A9%20chez%201and1%2C%20je%20ne%20dispose%20pas%20de%20connexion%20SSH%2C%20ce%20qui%20limite%20un%20peu%20les%20actions%20disponibles." title="Digg"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.myspace.com/Modules/PostTo/Pages/?u=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F&amp;t=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9" title="MySpace"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/myspace.png" title="MySpace" alt="MySpace" class="sociable-hovers" /></a></li>
	<li><a rel="nofollow"  href="http://www.netvibes.com/share?title=Script%20de%20mise%20en%20production%20sur%20serveur%20mutualis%C3%A9&amp;url=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F" title="Netvibes"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/netvibes.png" title="Netvibes" alt="Netvibes" class="sociable-hovers" /></a></li>
	<li class="sociablelast"><a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.monproprepatron.fr%2F2010%2F02%2Fscript-de-mise-en-production-sur-serveur-mutualise%2F" title="Technorati"><img src="http://www.monproprepatron.fr/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a></li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.monproprepatron.fr/2010/02/script-de-mise-en-production-sur-serveur-mutualise/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
