J'ai trouvé la tâche de génération OpenStack sur le site Ubuntu QA, mais je suis un peu confus quant aux étapes de construction.
Voici le lien pour les étapes de construction: https://jenkins.qa.ubuntu.com/view/Openstack_Testing/view/Grizzly/job/precise_grizzly_keystone_stable/275/consoleText
Depuis le journal de construction de jenkins, je connais les étapes de la façon dont Ubuntu construit un paquet Openstack:
- obtenir le code openstack de github, utilisez
git clone
openstack tar.gz
fichier de génération à l'aidepython setup.py sdist
- utiliser
bzr
pour obtenir les fichiers de contrôle debian qui sont maintenus par canonique - utiliser la
dch
commande pour générer une nouvelle version de build et la valider en local - utiliser
bzr builddeb -S -- -sa -us -uc
pour générer le package source et le fichier de contrôle associé, tels quedsc
- signer le colis
- utiliser
mk-build-deps
pour installer la dépendance - utiliser
sbuild
pour générer les vrais packages deb - télécharger vers les dépôts de test
Mes questions sont:
- À l'étape 5, nous pouvons déjà générer les paquets deb sans
-S
, mais pourquoi avons-nous finalement utilisésbuild
pour le générer? Est-ce uniquement pour la signature? - Quelle est la différence entre
bzr builddeb
etsbuild
? J'ai trouvé les scripts de construction utilisés par jenkins ici
~openstack-ubuntu-testing/openstack-ubuntu-testing
, mais quand j'essaye d'exécuter des commandes sousbin
, j'obtiens toujours:root@demo:~/openstack-ubuntu-testing/bin# ./build-package Traceback (most recent call last): File "./build-package", line 14, in <module> from openstack_ubuntu_testing.build.component_build import ComponentBuild File "/home/sysadmin/openstack-ubuntu-testing/bin/openstack_ubuntu_testing/build/component_build.py", line 11, in <module> from schroot.executor import SchrootExecutor ImportError: No module named schroot.executor
J'ai essayé d'utiliser pip pour installer schroot, mais il semble qu'ils n'aient pas d'exécuteur.
Veuillez aider.