canonicalwebteam.launchpad
version
Klassen zum Auslösen von Snaps und Ubuntu -Bildern über die Launchpad -API.
Für die lokale Entwicklung ist es am besten, dieses Modul mit einem unserer Website -Projekte wie Ubuntu.com zu testen. Für weitere Informationen folgen Sie diesem Handbuch (nur intern).
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" ]
)Tests überprüfen Anrufe gegen Leuchten, die die Launchpad -API repräsentieren. Diese Vorrichtungen werden mit VCRPY erzeugt, basierend auf realen Aufrufen der API, als der Test zum ersten Mal ausgeführt wurde.
Zu neuen Tests, die sich auf neue API -Antworten verlassen, oder wenn wir vorhandene Vorrichtungen regenerieren müssen, da sich die API geändert hat, müssen die Geheimnisse bereitgestellt werden, um sich wie folgt mit der API zu authentifizieren:
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