Prefazione
Un modo per procedere è utilizzare snap try
. Dal suo --help
messaggio:
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.
Viene inoltre fornito con un'opzione:
--devmode Install in development mode and disable confinement
Ciò è particolarmente utile se si desidera testare i bit di confinamento e utilizzare correttamente le interfacce.
uso
Il modo di utilizzare questo è semplice, basta eseguire:
snapcraft prime
snap try prime/
Nel primo passo dici snapcraft
di fare il
Final copy and preparation for the snap.
E nel secondo passaggio si snapd
utilizza il contenuto della directory per "installare" lo snap. Ora puoi giocare con il pacchetto pur essendo in grado di modificarlo.
Esempio
Facciamo un esempio dal box Snappy per mostrare come usarlo.
Stiamo usando console poiché è relativamente veloce da costruire e utilizzare:
$ 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$
Ora assicuriamoci che non ne sia installata un'altra versione e quindi procediamo con l'installazione.
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$
Fin qui tutto bene. Sembra funzionare bene. Ora sostituiamolo con /bin/echo
solo per vedere come funzionano le cose:
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$
Come puoi vedere, possiamo apportare modifiche al sistema live prime
mentre stiamo ancora eseguendo le operazioni in isolamento. Questo è generalmente un buon modo per avviare e far scattare rapidamente lo snap e testarlo completamente.
Nota: con snapd
prima del 2.0.10 (2016-07-09), prima di eseguire, dovevi creare uno schiocco di temute snapcraft clean
o ti snapd
avresti messo in uno stato di cattivo umore e si lamentava di non riuscire a trovare gli snap montati. Altre correzioni sono in fila per 2.0.11, che dovrebbe anche atterrare tra qualche giorno.
snapcraft clean
o che lo snapd attualmente si trovi in uno stato non valido e si lamenta di non essere in grado di trovare gli snap montati. La correzione è in corso per questo, ma non ancora rilasciata.