flosy.info | Développement Web, Open source …

CAT | Linux

Le déploiement d’un projet est toujours une étape fastidieuse et parfois complexe.
Pour automatiser cela nous pouvons utiliser un outil comme Fabric qui va nous permettre de scripter notre déploiement.
J’ai découvert cet outil dans la présentation Adopt Devops philosophy on your Symfony projects de Fabrice Bernhard lors de la conférence symfony live 2011.

Fabric est un outil écrit en Python et disponible sur le site suivant : http://docs.fabfile.org/en/latest/index.html.

Installation

Il est recommandé de passer par pip pour installer Fabric. Pip n’est pas installé de base sur la Fedora. Il est cependant disponible sous forme de package.

  # yum install python-pip

Pip va nous permettre d’installer Fabric grâce à la commande suivante :

  # pip-python install fabric

Note : Dans mon cas cela n’a pas fonctionné directement. En effet Fabric a comme dépendance la bibliothèque PyCrypto qui va être compilée par pip. Il m’a fallu installer le package python-devel.

Utilisation

À titre d’exemple nous allons créer un fichier fabric qui va nous permettre de créer un projet symfony et de lui associer un dépôt GIT.

Nous créons le fichier fabfile.py dans le dossier parent du futur projet (dans mon cas /var/www/symfony2).

from fabric.api import *
 
version_symfony = 'Symfony_Standard_2.0.12.tgz'
url_symfony = 'http://symfony.com/download?v=' + version_symfony
 
def install_symfony(project_name):
  local("wget " + url_symfony)
  local("tar xzvf " + version_symfony)
  local("rm " + version_symfony)
  local("mv Symfony " + project_name)
  local("cp %s/app/config/parameters.ini %s/app/config/parameters.ini.dist " % (project_name, project_name))
 
def create_repository(project_name):
  local('touch ./%s/.gitignore' % project_name)
  ignore_file = open('./%s/.gitignore' % project_name, 'w')
  ignore_file.write("""/web/bundles/
/app/bootstrap*
/app/cache/*
/app/logs/*
/vendor/
/app/config/parameters.ini""")
  with lcd(project_name):	# Context managers lcd pour local, cd pour remote (run).
    local('git init ')
    local('git add .')
    local('git commit -m  "Initial commit"')
 
def install_vendors(project_name):
  with lcd(project_name):
    local('php bin/vendors install')
 
def install(project_name):
  install_symfony(project_name)
  create_repository(project_name)
  install_vendors(project_name)

Le fichier décompose l’installation en 3 fonctions :

install_symfony
Installe une version donnée de symfony sans les vendors.
create_repository
Gère toutes les opérations nécessaires à la création du dépôt GIT.
install_vendors
Installe les vendors.

La fonction install nous sert de facade.

Nous pouvons donc les appeler successivement ou utiliser la facade.

  $ fab install_symfony:symfabric
  $ fab create_repository:symfabric
  $ fab install_vendors:symfabric

ou

  $ fab install:symfabric

Vous noterez l’utilisation du context manager lcd qui permet de spécifier un dossier de travail pour un groupe d’instructions.
Dans le cas d’un accès distant il convient d’utiliser le context manager cd.

Connexion sur un hôte distant

Nous allons utiliser une connexion ssh par clé. Pour cela nous allons ajouter sur l’hôte distant, la clé publique dans le fichier .ssh/authorized_keys.
Attention à donner les bons droits au fichier :

  $ chmod 600 .ssh/authorized_keys

Pour l’exemple je vous renvoie vers le très bon exemple de la présentation de Fabrice Bernhard disponible sur GitHub.

Related Posts:

  • No Related Posts

No tags

Juin/11

24

Traduc Party KDE (1ère partie)

Voici une transcription de la traduc party KDE organisée par le LUG Alternatives87.

Nous commençons par récupérer les documentations du projet pour gérer leur traduction et alimenter la mémoire de traduction de lokalize.
Pour cela nous allons utiliser le svn anonyme du projet (toutes les explications sont là).

Une version Web du dépôt SVN va nous permettre d’identifier les éléments qui nous intéressent.

Récupération des sources

Tout d’abord nous créons un dossier pour accueillir notre copie de travail.

$ mkdir depot_traductions
$ cd depot_traductions

Nous procédons ensuite à la récupération des documentations en français.
Vous noterez l’utilisation de l’option -N qui permet de passer en mode non récursif. Ceci permet de récupérer uniquement les éléments nécessaires.

$ svn co svn://anonsvn.kde.org/home/kde/trunk -N
A    trunk/.git-checkout
Révision 1238075 extraite.
 
$ cd trunk/
$ svn update l10n-kde4 -N
A    l10n-kde4
A    l10n-kde4/teamnames
A    l10n-kde4/subdirs
A    l10n-kde4/README
Actualisé à la révision 1238075.
 
$ cd l10n-kde4/
$ svn up fr
A    fr
A    fr/messages
....
A    fr/docmessages/playground-games/kbackgammon.po
Actualisé à la révision 1238075.

Compilation d’une documentation

La compilation de la documentation nécessite les éléments présents dans le dossier scripts de l10n-kde4.

$ svn up scripts
A    scripts
A    scripts/posieve_check-tp-kde_results_to_webpage.sh
...

Nous récupérons également les éléments suivants bien qu’ils ne soient pas nécessaires à la compilation de la documentation.

$ svn up templates
A    templates
...
 
cd ..
$ svn up l10n-support -N
A    l10n-support
A    l10n-support/subdirs-w-summit
A    l10n-support/README
A    l10n-support/subdirs
Actualisé à la révision 1238075.

Pour générer la documentation plaçons-nous dans le dossier trunk/l10n-kde4. La commande suivante va nous permettre de générer la documentation en docbook.

$ ./scripts/update_xml fr extragear-graphics kiconedit

Ce script gère la création d’un dossier documentation dans l10n-kde4. Il y place les documentations anglaises à traduire.

Attention sous la Fedora 14 il me manquait md5deep. Voici le package a installer :

# yum install md5deep

Related Posts:

· ·

Récupération de LibreOffice

LibreOffice n’étant pas encore disponible sur la Fedora, il suffit de se rendre sur le site du projet et de télécharger les RPMs
http://www.libreoffice.org/download/.
Il y a 3 archives à récupérer :

  • LibO_3.3.1_Linux_x86_install-rpm_en-US.tar.gz
  • LibO_3.3.1_Linux_x86_langpack-rpm_fr.tar.gz
  • LibO_3.3.1_Linux_x86_helppack-rpm_fr.tar.gz

Installation

Après avoir décompressé les archives, placez-vous dans le dossier qui contient les RPMs.
La commande indiquée dans le fichier README pose un problème de signature dans mon cas :

# yum install *.rpm
...
Le paquet libobasis3.3-ooolinguistic-3.3.1-8.i586.rpm n'est pas signé

J’ai donc désactivé le contrôle :

# yum --nogpgcheck install *.rpm

Les applications devraient être présentes dans le menu « Applications/Bureautique » de KDE mais dans mon cas cela n’a pas fonctionné.
Après quelques recherches les applications se trouvent dans /opt/libreoffice/program/.

Il nous reste à installer les packages de traduction. Il suffit de se placer dans leur dossier RPMS et relancer la commande :

# yum --nogpgcheck install *.rpm

Et voilà vous avez maintenant un LibreOffice opérationnel en français.

Related Posts:

·

Il y a quelques semaines Adobe suspendait son support de la version 64 bits du player flash.
La dernière version du player est de nouveau disponible à l’adresse suivante : http://labs.adobe.com/technologies/flashplayer10/.

Related Posts:

·

Nous utiliserons la version 13 de Fedora comme distribution.
L’installation est relativement simple nous commençons par nous rendre à l’adresse suivante : http://files-source.zend.com/help/Zend-Server-Community-Edition/zend-server-community-edition.htm#rpm_installation.htm.

Nous ajoutons comme indiqué le code suivant dans le fichier /etc/yum.repos.d/zend.repo

[Zend]
name=Zend Server
baseurl=http://repos.zend.com/zend-server/rpm/$basearch
enabled=1
gpgcheck=0
 
[Zend_noarch]
name=Zend Server - noarch
baseurl=http://repos.zend.com/zend-server/rpm/noarch
enabled=1
gpgcheck=0

Nous lançons ensuite l’installation du Zend Server CE.

  # yum install zend-server-ce-php-5.3

Le Zend server est maintenant installé est disponible à l’adresse http://localhost:10081/ ou https://localhost:10082/.

Note sur la CLI

Après l’installation du Zend Server la commande php utilise toujours la CLI du paquet Fedora.

$ php -v
PHP 5.3.3 (cli) (built: Jul 22 2010 15:37:02)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

Éditez le fichier .bash_profile de l’utilisateur pour modifier le PATH.

PATH=/usr/local/zend/bin:$PATH:$HOME/bin:.

La CLI utilise maintenant la version fournie avec le Zend Server.

$ php -v
PHP 5.3.3 (cli) (built: Nov 14 2010 12:02:04) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
    with Zend Extension Manager v5.1, Copyright (c) 2003-2010, by Zend Technologies
    - with Zend Data Cache v4.0, Copyright (c) 2004-2010, by Zend Technologies [loaded] [licensed] [disabled]
    - with Zend Utils v1.0, Copyright (c) 2004-2010, by Zend Technologies [loaded] [licensed] [enabled]
    - with Zend Optimizer+ v4.1, Copyright (c) 1999-2010, by Zend Technologies [loaded] [licensed] [disabled]
    - with Zend Debugger v5.3, Copyright (c) 1999-2010, by Zend Technologies [loaded] [licensed] [enabled]

Related Posts:

· · ·

La nouvelle version d’eclipse PDT est disponible est repose sur la version Helios d’eclipse.
Parmi les petites nouveautés bien pratiques :

  • Le marketplace pour rechercher les différentes plugins.
  • Un nouveau système de coloration syntaxique encore plus personnalisable.
  • Les bulles d’aide contextuelle avec des informations plus pertinentes.
  • Et biens d’autres encore (le détail ici).

Et pour ne rien gâcher une version 64 bits est disponible ;)

Related Posts:

· · ·

Juin/10

28

Plus de player flash pour linux

Adobe annonce la suspension « temporaire » de la version 64 bits de son player flash (page de l’annonce).

Des alternatives libres du player existent comme gnash ou encore swfdec

Related Posts:

· · ·

Ce logiciel centralise les podcasts et les vidéocasts à la façon iTunes mais avec un gros avantage c’est un logiciel libre. Il est ainsi disponible sous Linux, Mac et Windows.
Coté technique il est écrit en python GTK et embarque un client BitTorrent pour récupérer les contenus.

Voici un petit aperçu.

Accueil du logiciel Miro

En terme de contenu le catalogue est assez riche et même si l’essentiel est en anglais des contenus en français sont disponibles (plusieurs shows de nowatch.tv, des émissions de france inter …).

Pour la fedora j’ai du installer les plugins de gstreamer présents sur le dépôt RPM-Fusion.

# yum install gstreamer-ffmpeg gstreamer-plugins-bad gstreamer-plugins-ugly

Related Posts:

· ·

Juin/10

19

Ajouter des polices de caractères

La version 1.2 de l’outil de sketching Pencil propose une bibliothèque de widgets « crayonnés ». Je souhaite l’utiliser pour la réalisation de maquettes d’applications mais ma Fedora ne dispose pas en l’état de police adéquate.

Après une petite exploration de la bibliothèque elle semble utiliser la police « Comic sans MS ». Cette police est soumise à licence aussi je suis parti à la recherche d’autres polices.

Voici 3 sources qui m’ont été particulièrement utiles :

  • CTAN que les adeptes de Latex connaissent bien.
  • le wiki de Scribus.
  • dafont.com bien faire attention aux licences.

Related Posts:

  • No Related Posts

· · · ·

Theme Design by devolux.nh2.me