PreparationEnvole4 » Historique » Version 7
Version 6 (Daniel Dehennin, 06/02/2015 13:47) → Version 7/26 (Daniel Dehennin, 06/02/2015 13:48)
{{toc}}
h1. Preparation Envole 4
h2. S'assurer que git-package n'est pas installé
<pre>
dpkg -l git-package
</pre>
si présent le désinstaller
<pre>
sudo apt-get remove git-pakage
</pre>
h2. Cloner le projet git-pakage
ou le puller si déjà cloné
<pre>
git clone https://afornerot@dev-eole.ac-dijon.fr/git/git-package.git
</pre>
h2. Paramétrage de git-package
Suivre la documentation suivante = https://dev-eole.ac-dijon.fr/projects/git-package/wiki
Bien faire attention dans les commandes ln de mettre le chemin vers le repertoire de stockage du clone de git-package
Pour placer la liste de dépot par défaut sur envole
<pre>
vim ~/.gitconfig
</pre>
et ajouter la section
<pre>
[package]
distribution = envole-4/experimental
distribution = envole-4/unstable
distribution = eole-2.4/experimental
distribution = eole-2.4/unstable
</pre>
En sachant que la commande de compilation utilisera la premiere ligne dans le cas où l'option -d n'est pas spécifiée
h2. Si le projet n’est jamais passé en 2.4
Demander à EOLE qui fasse le nécessaire en terme d'activation de compilation 2.4 sur ce projet.
h3. Créer un tag pour le dernier paquet 2.3
Tagger la branche de compilation 2.3 (la puller avant) pour indiquer le dernier paquet 2.3 en respectant la syntaxe suivante
<pre>
git tag -s -m "Debian package version <version>" pkg/envole/envole-4/<version>
</pre>
<version> = dernier numéro de paquet présent dans le changelog en remplaçant les tild ("~") par des underscore ("_")
*exemple*
<pre>
git checkout dist/ubuntu/lucid/master
git tag -s -m "Debian package 1.0-eole15~3.gbpb922df" pkg/envole/envole-4/1.0-eole15_3.gbpb922df
git push origin pkg/envole/envole-4/1.0-eole15_3.gbpb922df
</pre>
h3. dupliquer la branche de compilation 2.3 en 24
<pre>
git checkout dist/ubuntu/lucid/master
git checkout -b dist/envole/<version majeur envole>/master
</pre>
en ce moment le numéro est 4
h3. Suppression du fichier debian/changelog
<pre>
git rm debian/changelog
git commit -m "Suppression changelog pour builder EOLE"
</pre>
h3. Création du fichier debian/gpb.conf
<pre>
cat > debian/gpb.conf <<EOF
# Set per distribution debian tag
[DEFAULT]
debian-tag = debian/envole/4/%(version)s
EOF
git add debian/gpb.conf
</pre>
h3. Passage du projet en natif
<pre>
mkdir -p debian/source
cat > debian/source/format <<EOF
3.0 (native)
EOF
git add debian/source/format
</pre>
h3. Commit des changements de packaging
<pre>
git commit -m "Configuration pour builder EOLE"
git push -u
</pre>
h3. Tagger la branche master
<pre>
git checkout master
git tag -s -m "New Envole release 4.0" release/4.0
</pre>
h2. Si le projet est déjà compilé pour EOLE 2.4
[[MigrationAppliEnvole4#État-des-lieux-application-par-application|La plupart des préparatifs ont déjà été fait]].
Il faut migrer certains éléments pour l’utilisation des "dépôts Envole":http://eole.ac-dijon.fr/envole.
*@ATTENTION@* : Assurez-vous que les branches soient bien à jour par rapport aux dépôts sur *@dev-eole.ac-dijon.fr@*.
h3. Renommé le tag du dernier paquet EOLE 2.4
h4. Déterminer le tag du dernier paquet EOLE 2.4
Nous stockons la valeur dans une variable pour faciliter les manipulations suivantes :
<pre>
moi@work:~/src/wordpress (master)$ git describe --abbrev=0 dist/ubuntu/precise/master
pkg/eole/eole-2.4/3.6.1-eole3-1
moi@work:~/src/wordpress (master)$ EOLE_TAG=$(git describe --abbrev=0 dist/ubuntu/precise/master)
</pre>
h4. Vérifier le message du tag
Nous allons réutiliser le message du tag du dernier paquet EOLE 2.4, la première ligne non vide doit contenir la chaîne *@New package version@* :
<pre>
moi@work:~/src/wordpress (master)$ git show -s --format="format:" ${EOLE_TAG} | perl -lane 'print if (/New package version/ .. /^-+BEGIN/) =~ /^\d+$/'
moi@work:~/src/wordpress (master)$ EOLE_MESSAGE=$(git show -s --format="format:" ${EOLE_TAG} | perl -lane 'print if (/New package version/ .. /^-+BEGIN/) =~ /^\d+$/')
</pre>
h4. Dupliquer le tag du dernier paquet EOLE 2.4 en premier tag de paquet Envole
<pre>
moi@work:~/src/wordpress (master)$ git tag -s -m "${EOLE_MESSAGE}" pkg/envole/envole-4/${VERSION} ${EOLE_TAG}^{}
</pre>
On vérifie le message:
<pre>
moi@work:~/src/wordpress (master)$ git show pkg/envole/envole-4/${VERSION}
</pre>
h3. Modifier la configuration git-buildpackage
...
h2. Compilation
<pre>
git package -b
</pre>
donc par défaut c'est en expérimental
<pre>
git package -b -d envole-4/unstable
</pre>
pour une compilation en dev
h2. Pour tester un paquet en expérimental
sur environnement de test faire
<pre>
Query-Auto -V test-eole.ac-dijon.fr
</pre>
<pre>
cat > /etc/apt/sources.list.d/envole.list <<EOF
deb http://test-eole.ac-dijon.fr/envole envole-4-experimental main
EOF
</pre>
h2. Installer un paquet expérimental
<pre>
Query-Auto
apt-cache policy "nom du paquet"
</pre>
la commande retourne le numero de version du paquet par dépot
Il faudra faire un apt-get install "nom du paquet"="version du paquet"
exemple
<pre>
apt-get install eole-posh-profil=4.0-1~1.gbpcc1457
</pre>
h2. Installer un paquet non expérimental
C'est comme d'habitude
<pre>
Query-Auto -D -V test-eole.ac-dijon.fr
apt-eole install eole-XXX XXX-apps
</pre>
h2. Adaptation du packaging
Suivre les recommandations du wiki suivant
https://dev-eole.ac-dijon.fr/projects/envole/wiki/MigrationAppliEnvole4
h1. Preparation Envole 4
h2. S'assurer que git-package n'est pas installé
<pre>
dpkg -l git-package
</pre>
si présent le désinstaller
<pre>
sudo apt-get remove git-pakage
</pre>
h2. Cloner le projet git-pakage
ou le puller si déjà cloné
<pre>
git clone https://afornerot@dev-eole.ac-dijon.fr/git/git-package.git
</pre>
h2. Paramétrage de git-package
Suivre la documentation suivante = https://dev-eole.ac-dijon.fr/projects/git-package/wiki
Bien faire attention dans les commandes ln de mettre le chemin vers le repertoire de stockage du clone de git-package
Pour placer la liste de dépot par défaut sur envole
<pre>
vim ~/.gitconfig
</pre>
et ajouter la section
<pre>
[package]
distribution = envole-4/experimental
distribution = envole-4/unstable
distribution = eole-2.4/experimental
distribution = eole-2.4/unstable
</pre>
En sachant que la commande de compilation utilisera la premiere ligne dans le cas où l'option -d n'est pas spécifiée
h2. Si le projet n’est jamais passé en 2.4
Demander à EOLE qui fasse le nécessaire en terme d'activation de compilation 2.4 sur ce projet.
h3. Créer un tag pour le dernier paquet 2.3
Tagger la branche de compilation 2.3 (la puller avant) pour indiquer le dernier paquet 2.3 en respectant la syntaxe suivante
<pre>
git tag -s -m "Debian package version <version>" pkg/envole/envole-4/<version>
</pre>
<version> = dernier numéro de paquet présent dans le changelog en remplaçant les tild ("~") par des underscore ("_")
*exemple*
<pre>
git checkout dist/ubuntu/lucid/master
git tag -s -m "Debian package 1.0-eole15~3.gbpb922df" pkg/envole/envole-4/1.0-eole15_3.gbpb922df
git push origin pkg/envole/envole-4/1.0-eole15_3.gbpb922df
</pre>
h3. dupliquer la branche de compilation 2.3 en 24
<pre>
git checkout dist/ubuntu/lucid/master
git checkout -b dist/envole/<version majeur envole>/master
</pre>
en ce moment le numéro est 4
h3. Suppression du fichier debian/changelog
<pre>
git rm debian/changelog
git commit -m "Suppression changelog pour builder EOLE"
</pre>
h3. Création du fichier debian/gpb.conf
<pre>
cat > debian/gpb.conf <<EOF
# Set per distribution debian tag
[DEFAULT]
debian-tag = debian/envole/4/%(version)s
EOF
git add debian/gpb.conf
</pre>
h3. Passage du projet en natif
<pre>
mkdir -p debian/source
cat > debian/source/format <<EOF
3.0 (native)
EOF
git add debian/source/format
</pre>
h3. Commit des changements de packaging
<pre>
git commit -m "Configuration pour builder EOLE"
git push -u
</pre>
h3. Tagger la branche master
<pre>
git checkout master
git tag -s -m "New Envole release 4.0" release/4.0
</pre>
h2. Si le projet est déjà compilé pour EOLE 2.4
[[MigrationAppliEnvole4#État-des-lieux-application-par-application|La plupart des préparatifs ont déjà été fait]].
Il faut migrer certains éléments pour l’utilisation des "dépôts Envole":http://eole.ac-dijon.fr/envole.
*@ATTENTION@* : Assurez-vous que les branches soient bien à jour par rapport aux dépôts sur *@dev-eole.ac-dijon.fr@*.
h3. Renommé le tag du dernier paquet EOLE 2.4
h4. Déterminer le tag du dernier paquet EOLE 2.4
Nous stockons la valeur dans une variable pour faciliter les manipulations suivantes :
<pre>
moi@work:~/src/wordpress (master)$ git describe --abbrev=0 dist/ubuntu/precise/master
pkg/eole/eole-2.4/3.6.1-eole3-1
moi@work:~/src/wordpress (master)$ EOLE_TAG=$(git describe --abbrev=0 dist/ubuntu/precise/master)
</pre>
h4. Vérifier le message du tag
Nous allons réutiliser le message du tag du dernier paquet EOLE 2.4, la première ligne non vide doit contenir la chaîne *@New package version@* :
<pre>
moi@work:~/src/wordpress (master)$ git show -s --format="format:" ${EOLE_TAG} | perl -lane 'print if (/New package version/ .. /^-+BEGIN/) =~ /^\d+$/'
moi@work:~/src/wordpress (master)$ EOLE_MESSAGE=$(git show -s --format="format:" ${EOLE_TAG} | perl -lane 'print if (/New package version/ .. /^-+BEGIN/) =~ /^\d+$/')
</pre>
h4. Dupliquer le tag du dernier paquet EOLE 2.4 en premier tag de paquet Envole
<pre>
moi@work:~/src/wordpress (master)$ git tag -s -m "${EOLE_MESSAGE}" pkg/envole/envole-4/${VERSION} ${EOLE_TAG}^{}
</pre>
On vérifie le message:
<pre>
moi@work:~/src/wordpress (master)$ git show pkg/envole/envole-4/${VERSION}
</pre>
h3. Modifier la configuration git-buildpackage
...
h2. Compilation
<pre>
git package -b
</pre>
donc par défaut c'est en expérimental
<pre>
git package -b -d envole-4/unstable
</pre>
pour une compilation en dev
h2. Pour tester un paquet en expérimental
sur environnement de test faire
<pre>
Query-Auto -V test-eole.ac-dijon.fr
</pre>
<pre>
cat > /etc/apt/sources.list.d/envole.list <<EOF
deb http://test-eole.ac-dijon.fr/envole envole-4-experimental main
EOF
</pre>
h2. Installer un paquet expérimental
<pre>
Query-Auto
apt-cache policy "nom du paquet"
</pre>
la commande retourne le numero de version du paquet par dépot
Il faudra faire un apt-get install "nom du paquet"="version du paquet"
exemple
<pre>
apt-get install eole-posh-profil=4.0-1~1.gbpcc1457
</pre>
h2. Installer un paquet non expérimental
C'est comme d'habitude
<pre>
Query-Auto -D -V test-eole.ac-dijon.fr
apt-eole install eole-XXX XXX-apps
</pre>
h2. Adaptation du packaging
Suivre les recommandations du wiki suivant
https://dev-eole.ac-dijon.fr/projects/envole/wiki/MigrationAppliEnvole4