canonicalwebteam.launchpad
version
دروس لإطلاق بنيات اللقطات وصور Ubuntu من خلال واجهة برمجة تطبيقات Launchpad.
للتنمية المحلية ، من الأفضل اختبار هذه الوحدة مع أحد مشاريع موقع الويب لدينا مثل ubuntu.com. لمزيد من المعلومات ، اتبع هذا الدليل (داخلي فقط).
from canonicalwebteam . launchpad import SnapBuilder
snap_builder = SnapBuilder (
username = "build.snapcraft.io" ,
token = os . getenv ( "SNAP_BUILDER_TOKEN" ),
secret = os . getenv ( "SNAP_BUILDER_SECRET" ),
)
snap_name = "new-test-snap"
git_repo = "https://github.com/build-staging-snapcraft-io/test1"
snap_builder . create_snap ( snap_name , git_repo )
new_snap = snap_builder . get_snap_by_store_name ( "new-test-snap" ) from canonicalwebteam . launchpad import ImageBuilder
image_builder = ImageBuilder (
username = "image.build" ,
token = os . getenv ( "IMAGE_BUILDER_TOKEN" ),
secret = os . getenv ( "IMAGE_BUILDER_SECRET" ),
)
image_builder . build_image (
board = "cm3" , system = "core16" , snaps = [ "code" , "toto" ]
)الاختبارات تحقق من المكالمات مقابل المباريات التي تمثل واجهة برمجة تطبيقات LaunchPad. يتم إنشاء هذه التركيبات باستخدام VCRPY ، استنادًا إلى مكالمات حقيقية إلى واجهة برمجة التطبيقات عند إجراء الاختبار لأول مرة.
لاختبارات جديدة تعتمد على ردود API الجديدة ، أو إذا كنا بحاجة إلى تجديد التركيبات الحالية لأن واجهة برمجة التطبيقات قد تغيرت ، يجب توفير الأسرار للمصادقة مع واجهة برمجة التطبيقات على النحو التالي:
export SNAP_BUILDER_TOKEN={token}
export SNAP_BUILDER_SECRET={secret}
export IMAGE_BUILDER_TOKEN={token}
export IMAGE_BUILDER_SECRET={secret}
rm tests/cassettes/... # Remove any fixtures you need to regenerate
./setup.py test # Run tests again to regenerate fixtures