Project

General

Profile

Préparer un dépôt pour EOLE 2.4

Créer une branche pour EOLE 2.3

La branche master devient la branche de développement pour EOLE 2.4, il faut donc conserver une branche pour EOLE 2.3 :

moi@work:~/src/$PAQUET (master)$ git branch 2.3 master
moi@work:~/src/$PAQUET (master)$ git push origin 2.3
moi@work:~/src/$PAQUET (master)$ git branch -a
  2.3
* master
  dist/ubuntu/lucid/master
  remotes/origin/2.3
  remotes/origin/master
  remotes/origin/dist/ubuntu/lucid/master

NB: ne jamais fusionner la branche master dans la branche 2.3.

Mettre à jour le code pour EOLE 2.4

Skeletorisation de la branche source.

Voir la page dédiée.

Créer une branche pour le packaging 2.4

moi@work:~/src/$PAQUET (master)$ git branch dist/ubuntu/precise/master dist/ubuntu/lucid/master
moi@work:~/src/$PAQUET (master)$ git push origin dist/ubuntu/precise/master
moi@work:~/src/$PAQUET (master)$ git branch -a
  2.3
* master
  dist/ubuntu/lucid/master
  dist/ubuntu/precise/master
  remotes/origin/2.3
  remotes/origin/master
  remotes/origin/dist/ubuntu/lucid/master
  remotes/origin/dist/ubuntu/precise/master

Créer un tag afin de déterminer la version du paquet

moi@work:~/src/$PAQUET (master)$ git tag -s -m "First EOLE 2.4.0" release/2.4.0 master

Créer un fichier debian/gbp.conf

Fichier de configuration de git-buildpackage afin de déterminer le format des tags de version debian:

[DEFAULT]
debian-tag = debian/eole/2.4/%(version)s

Cela évite qu’une même version upstream compilée pour plusieurs distributions se marche sur les pieds.

Mettre à jour le packaging

Voir la page dédiée.

Compiler le premier paquet EOLE 2.4

La première compilation devrait être faite sur un environnement de compilation personnel.

Pour compiler des paquets EOLE 2.4, vous avez besoin :

  1. de l’outil git-package que vous pouvez installer :
  2. de demander l’activation de votre projet pour le système de compilation 2.4

Une fois git-package installé, vous devez recharger le complètement automatique de bash afin d’en profiter pour git-package :

moi@work:~/src/$PAQUET (master)$ source /etc/bash_completion

Il est possible d’utiliser la distribution eole-2.4-experimental à cet effet :

  1. Intégrer les modifications de master dans la branche de packaging :
    moi@work:~/src/$PAQUET (master)$ git package dist/ubuntu/precise/master
    Using tag 'release/2.4.0' pointing to 'master'
    Checkout distribution branch 'dist/ubuntu/precise/master': Switched to branch 'dist/ubuntu/precise/master'
    Pull from default remote: Already up-to-date.
    List of commits to merge:
          1 384b302 Adaptation du packaging pour EOLE 2.4
          2 cb45891 Suppression du debian/changelog
    Do you want to merge 'release/2.4.0' into 'dist/ubuntu/precise/master'? [No]: y
    Merge developpement from 'release/2.4.0': Waiting for Emacs...
    Merge made by the 'recursive' strategy.
    [...]
    Push is not automatically done to avoid publishing possible errors.
    
    You can push with the following command:
    
        git push dev-eole dist/ubuntu/precise/master
    Do you want me to push it automatically? [No]: n
    No push
    Switch back to your developpement branch 'master'... Switched to branch 'master'
    
  2. Demander la compilation d’un paquet pour la distribution eole-2.4-experimental depuis la branche de packaging dist/ubuntu/precise/master
    moi@work:~/src/$PAQUET (master)$ git package -b -d eole-2.4/experimental dist/ubuntu/precise/master
    Found upstream version 'release/2.4.0'
    Moi request 'dist/ubuntu/precise/master' to build for 'eole-2.4/experimental'
    First package build
    Lists of commits since 'release/2.4.0':
          1 384b302 Adaptation du packaging pour EOLE 2.4
          2 cb45891 Suppression du debian/changelog
    Are you sure to proceed? [No]: y
    Tag request 'build/eole/eole-2.4/experimental' created.
    The tag request 'build/eole/eole-2.4/experimental' is not pushed to 'origin'
    
    You can push it with 'git push dev-eole build/eole/eole-2.4/experimental'
    
    Do you want me to push it automatically? [No]: N
    

Le système de compilation enverra des emails à l’adresse disponible par git config user.email afin de suivre l’évolution de la compilation et la disponibilité des paquets deb.

Des listes de diffusions sont disponibles pour suivre la compilation de tous les paquets EOLE 2.4 :
  1. Liste des compilations : http://diff-eole.ac-dijon.fr/listes/info/buildd
  2. Liste d’installation sur les dépôts de paquets deb : http://diff-eole.ac-dijon.fr/listes/info/repository