Vorwort
Eine Möglichkeit, dies zu tun, ist die Verwendung snap try
. Aus seiner --help
Nachricht:
The try command installs an unpacked snap into the system for testing
purposes. The unpacked snap content continues to be used even after
installation, so non-metadata changes there go live instantly. Metadata
changes such as those performed in snap.yaml will require reinstallation
to go live.
Es kommt auch mit einer Option:
--devmode Install in development mode and disable confinement
Dies ist besonders hilfreich, wenn Sie Begrenzungsbits testen und die Verwendung von Schnittstellen richtig gestalten möchten.
Verwendung
Die Verwendung ist einfach. Führen Sie einfach Folgendes aus:
snapcraft prime
snap try prime/
Im ersten Schritt weisen Sie an, das snapcraft
zu tun
Final copy and preparation for the snap.
Und im zweiten Schritt snapd
wird der Inhalt des Verzeichnisses verwendet, um den Snap zu "installieren". Jetzt können Sie mit dem Paket herumspielen und trotzdem Änderungen daran vornehmen.
Beispiel
Lassen Sie uns ein Beispiel aus dem Snappy Playpen verwenden, um zu zeigen, wie dies verwendet wird.
Wir verwenden Consul, da es relativ schnell zu erstellen und zu verwenden ist:
$ git clone https://github.com/ubuntu/snappy-playpen
$ cd snappy-playpen/consul/
snappy-playpen/consul$ snapcraft prime
Preparing to pull consul
[...]
Staging consul
Priming consul
snappy-playpen/consul$
Stellen wir nun sicher, dass keine andere Version installiert ist, und fahren Sie mit der Installation fort.
snappy-playpen/consul$ which consul
snappy-playpen/consul$ snap try prime
Name Version Rev Developer Notes
consul 0.6.4 x1 try
snappy-playpen/consul$ consul --help
usage: consul [--version] [--help] <command> [<args>]
Available commands are:
agent Runs a Consul agent
[...]
snappy-playpen/consul$
So weit, ist es gut. Es scheint gut zu funktionieren. Ersetzen wir es jetzt durch, um /bin/echo
zu sehen, wie die Dinge funktionieren:
snappy-playpen/consul$ cp /bin/echo prime/bin/consul
snappy-playpen/consul$ consul --help
Usage: /snap/consul/x1/bin/consul [SHORT-OPTION]... [STRING]...
or: /snap/consul/x1/bin/consul LONG-OPTION
Echo the STRING(s) to standard output.
[...]
daniel@daydream:/tmp/test/snappy-playpen/consul$
Wie Sie sehen können, können wir Änderungen am Live-System vornehmen, prime
während die Dinge noch unter Beschränkung ausgeführt werden. Dies ist im Allgemeinen ein guter Weg, um den Snap zum Laufen zu bringen und schnell vollständig zu testen.
Hinweis: Mit snapd
vor 2.0.10 (2016.07.09), hatte man das Snap temove vor dem Laufen snapcraft clean
oder snapd
würde in einem schlechten Zustand und Heulen bekommen über nicht in der Lage montiert schnappt zu finden. Für 2.0.11 stehen weitere Korrekturen an, die ebenfalls in wenigen Tagen landen sollten.
snapcraft clean
oder Snapd derzeit in einen schlechten Zustand gerät und darüber jammert, dass gemountete Snaps nicht gefunden werden können. Das Update ist in Bearbeitung, aber noch nicht veröffentlicht.