Projet

Général

Profil

PrepareEOLE24 » Historique » Version 7

Emmanuel GARETTE, 27/11/2013 10:48

1 6 Daniel Dehennin
{{toc}}
2 6 Daniel Dehennin
3 2 Lionel Morin
h1. Préparer un dépôt pour EOLE 2.4
4 1 Daniel Dehennin
5 1 Daniel Dehennin
h2. Créer une branche pour EOLE 2.3
6 1 Daniel Dehennin
7 1 Daniel Dehennin
La branche master devient la branche de développement pour EOLE 2.4, il faut donc conserver une branche pour EOLE 2.3 :
8 1 Daniel Dehennin
9 1 Daniel Dehennin
<pre>
10 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git branch 2.3 master
11 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git push origin 2.3
12 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git branch -a
13 1 Daniel Dehennin
  2.3
14 1 Daniel Dehennin
* master
15 1 Daniel Dehennin
  dist/ubuntu/lucid/master
16 1 Daniel Dehennin
  remotes/origin/2.3
17 1 Daniel Dehennin
  remotes/origin/master
18 1 Daniel Dehennin
  remotes/origin/dist/ubuntu/lucid/master
19 1 Daniel Dehennin
</pre>
20 1 Daniel Dehennin
21 1 Daniel Dehennin
*NB: ne jamais fusionner la branche master dans la branche 2.3.*
22 1 Daniel Dehennin
23 1 Daniel Dehennin
h2. Mettre à jour le code pour EOLE 2.4
24 1 Daniel Dehennin
25 1 Daniel Dehennin
Voir la [[modules-eole:24|page dédiée]].
26 1 Daniel Dehennin
27 1 Daniel Dehennin
h2. Créer une branche pour le packaging 2.4
28 1 Daniel Dehennin
29 1 Daniel Dehennin
<pre>
30 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git branch dist/ubuntu/precise/master dist/ubuntu/lucid/master
31 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git push origin dist/ubuntu/precise/master
32 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git branch -a
33 1 Daniel Dehennin
  2.3
34 1 Daniel Dehennin
* master
35 1 Daniel Dehennin
  dist/ubuntu/lucid/master
36 1 Daniel Dehennin
  dist/ubuntu/precise/master
37 1 Daniel Dehennin
  remotes/origin/2.3
38 1 Daniel Dehennin
  remotes/origin/master
39 1 Daniel Dehennin
  remotes/origin/dist/ubuntu/lucid/master
40 1 Daniel Dehennin
  remotes/origin/dist/ubuntu/precise/master
41 1 Daniel Dehennin
</pre>
42 1 Daniel Dehennin
43 1 Daniel Dehennin
h2. Créer un tag afin de déterminer la version du paquet
44 1 Daniel Dehennin
45 1 Daniel Dehennin
<pre>
46 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git tag -s -m "First EOLE 2.4.0" release/2.4.0 master
47 1 Daniel Dehennin
</pre>
48 1 Daniel Dehennin
49 5 Daniel Dehennin
h2. Créer un fichier debian/gbp.conf
50 5 Daniel Dehennin
51 5 Daniel Dehennin
Fichier de configuration de "git-buildpackage":http://honk.sigxcpu.org/projects/git-buildpackage/manual-html/gbp.html afin de déterminer le format des tags de version debian:
52 5 Daniel Dehennin
53 5 Daniel Dehennin
<pre>
54 5 Daniel Dehennin
[DEFAULT]
55 5 Daniel Dehennin
debian-tag = debian/eole/2.4/%(version)s
56 5 Daniel Dehennin
</pre>
57 5 Daniel Dehennin
58 5 Daniel Dehennin
Cela évite qu’une même version upstream compilée pour plusieurs distributions se marche sur les pieds.
59 5 Daniel Dehennin
60 1 Daniel Dehennin
h2. Mettre à jour le packaging
61 1 Daniel Dehennin
62 1 Daniel Dehennin
Voir la [[EoleDebianPackaging24|page dédiée]].
63 1 Daniel Dehennin
64 1 Daniel Dehennin
h2. Compiler le premier paquet EOLE 2.4
65 1 Daniel Dehennin
66 1 Daniel Dehennin
La première compilation devrait être faite sur un [[GitPackaging#Environnement-de-compilation-personnel|environnement de compilation personnel]].
67 1 Daniel Dehennin
68 3 Daniel Dehennin
Pour compiler des paquets EOLE 2.4, vous avez besoin :
69 1 Daniel Dehennin
70 3 Daniel Dehennin
# de l’outil project:git-package que vous pouvez installer :
71 3 Daniel Dehennin
** manuellement avec ce [[git-package:|guide d’installation]]
72 3 Daniel Dehennin
** avec un "paquet debian":http://eole.ac-dijon.fr/eole/pool/main/g/git-package/
73 4 Daniel Dehennin
# de "demander l’activation de votre projet pour le système de compilation 2.4":http://dev-eole.ac-dijon.fr/projects/dev-tools/issues/new
74 1 Daniel Dehennin
75 1 Daniel Dehennin
Une fois project:git-package installé, vous devez recharger le complètement automatique de bash afin d’en profiter pour project:git-package :
76 1 Daniel Dehennin
77 1 Daniel Dehennin
<pre>
78 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ source /etc/bash_completion
79 1 Daniel Dehennin
</pre>
80 1 Daniel Dehennin
81 1 Daniel Dehennin
Il est possible d’utiliser la distribution @eole-2.4-experimental@ à cet effet :
82 1 Daniel Dehennin
83 1 Daniel Dehennin
# Intégrer les modifications de master dans la branche de packaging :
84 1 Daniel Dehennin
<pre>
85 1 Daniel Dehennin
moi@work:~/src/$PAQUET (master)$ git package dist/ubuntu/precise/master
86 1 Daniel Dehennin
Do you want to merge 'master' into 'dist/ubuntu/precise/master'?: y
87 1 Daniel Dehennin
Checkout distribution branch 'dist/ubuntu/precise/master': Switched to branch 'dist/ubuntu/precise/master'
88 1 Daniel Dehennin
Pull from default remote: Already up-to-date.
89 1 Daniel Dehennin
Merge developpement from 'master': Waiting for Emacs...
90 1 Daniel Dehennin
Merge made by the 'recursive' strategy.
91 1 Daniel Dehennin
[...]
92 1 Daniel Dehennin
Switch back to your developpement branch 'master'... Switched to branch 'master'
93 1 Daniel Dehennin
Push is not automatically done to avoid publishing possible errors.
94 1 Daniel Dehennin
95 1 Daniel Dehennin
You can push with the following command:
96 1 Daniel Dehennin
97 1 Daniel Dehennin
    git push dev-eole dist/ubuntu/precise/master
98 1 Daniel Dehennin
Do you want me to push it automatically? [No]: n
99 1 Daniel Dehennin
No push
100 1 Daniel Dehennin
</pre>
101 1 Daniel Dehennin
# Demander la compilation d’un paquet pour *@eole-2.4-experimental@* depuis la branche de packaging *@dist/ubuntu/precise/master@*
102 1 Daniel Dehennin
<pre>
103 7 Emmanuel GARETTE
moi@work:~/src/$PAQUET (master)$ git package -b -d eole-2.4/experimental dist/ubuntu/precise/master
104 1 Daniel Dehennin
Found upstream version 'release/2.4.0'
105 7 Emmanuel GARETTE
Moi request 'dist/ubuntu/precise/master' to build for 'eole-2.4/experimental'
106 1 Daniel Dehennin
Are you sure to proceed? [No]: y
107 7 Emmanuel GARETTE
Tag request 'build/eole/eole-2.4/experimental' created.
108 7 Emmanuel GARETTE
The tag request 'build/eole/eole-2.4/experimental' is not pushed to 'origin'
109 1 Daniel Dehennin
110 7 Emmanuel GARETTE
You can push it with 'git push dev-eole build/eole/eole-2.4/experimental'
111 1 Daniel Dehennin
112 1 Daniel Dehennin
Do you want me to push it automatically? [No]: N
113 1 Daniel Dehennin
</pre>
114 1 Daniel Dehennin
115 1 Daniel Dehennin
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.
116 1 Daniel Dehennin
117 1 Daniel Dehennin
Des listes de diffusions sont disponibles pour suivre la compilation de tous les paquets EOLE 2.4 :
118 1 Daniel Dehennin
# Liste des compilations : http://diff-eole.ac-dijon.fr/listes/info/buildd
119 1 Daniel Dehennin
# Liste d’installation sur les dépôts de paquets deb : http://diff-eole.ac-dijon.fr/listes/info/repository