OpenStackパッケージの構築について混乱していますか?


19

Ubuntu QAサイトでOpenStackビルドタスクを見つけましたが、ビルド手順について少し混乱しています。

ビルド手順のリンクは次のとおりです。https : //jenkins.qa.ubuntu.com/view/Openstack_Testing/view/Grizzly/job/precise_grizzly_keystone_stable/275/consoleText

jenkinsビルドログから、UbuntuがOpenstackパッケージをビルドする手順を知っています。

  1. githubからopenstackコードを取得し、使用 git clone
  2. ビルドopenstack tar.gzファイルを使用してpython setup.py sdist
  3. bzrcanonicalによるメンテナンスであるdebian制御ファイルを取得するために使用します
  4. 使用dch新しいビルドのリリースを生成し、ローカルにそれをコミットするコマンドを
  5. 次のbzr builddeb -S -- -sa -us -ucようなソースパッケージと関連する制御ファイルを生成するために使用しますdsc
  6. パッケージに署名する
  7. mk-build-deps依存関係のインストールに使用
  8. sbuild実際のdebパッケージの生成に使用
  9. テストリポジトリにアップロードする

私の質問は:

  1. ステップ5では、debパッケージをなし-Sですでに生成できますが、最終的にsbuildそれを生成するために使用するのはなぜですか?これは署名専用ですか?
  2. 違いは何だbzr builddebとはsbuild
  3. jenkinsが使用したビルドスクリプトは次の場所にあり~openstack-ubuntu-testing/openstack-ubuntu-testingますがbin、の下でコマンドを実行しようとすると、常に取得されます:

    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
    

schrootをインストールするためにpipを使用しようとしましたが、executorが含まれていないようです。

助けてください。


1
あなたが提供したリンクを開き、次のエラーテキストを受け取りました:HTTPエラー404 / view / Openstack_Testing / view / Grizzly / job / precise_grizzly_keystone_stable / 275 / consoleTextへのアクセスに問題があります。理由:見つかりませんJetty://によって供給
クリスティアナニコラエ

1
彼が提供される同様のリンクがあるjenkins.qa.ubuntu.com/view/Openstack_Testing/view/Grizzly/job/...
ashubuntu

回答:


1

sbuildを使用して、隔離された環境でパッケージをビルドしますschroot。この環境では、ソースパッケージによって宣言されたビルドの依存関係のみがインストールされ、それ以外はインストールされません。これにより、ビルドが実行元の開発者またはCI環境の影響を受けないようになります。たとえば、sbuildがない場合、CI環境にパッケージが存在すると、実際には宣言が未作成のビルド依存関係だったのにビルドが成功したように見えるため、他のすべての場所で失敗します。再現性と安定性の理由から、sbuildを使用することをお勧めします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.