Un-revert a snap

Gustavo Niemeyer gustavo.niemeyer at canonical.com
Thu Oct 27 12:42:40 UTC 2016


We actually have that already in the upcoming version. You'll be able to
say "snap refresh --revison=N <snap>", similarly to how we can revert.

That said, I think the expectation exposed in the first message is a
reasonable one. We should probably not blacklist the current revision if
the snap name was explicitly selected in the command line.

On Oct 27, 2016 4:39 AM, "Didier Roche" <didrocks at ubuntu.com> wrote:

> Le 27/10/2016 à 08:32, YC Cheng a écrit :
>
> I think we need a way to just Un-revert from rev 20 to rev 29 without
> remove rev 29.
>
> Shall we fire a bug for that if we don't have such method exists now ?
>
>
> I think it's not that easy considering the associated data. You need to
> swap them to restart from the latest version of data from rev 20 to copy to
> 29. Explicitely removing that version makes sense in that context. Have an
> unrevert command won't convey that notion.
>
> Didier
>
>
>
> 2016-10-27 14:13 GMT+08:00 Didier Roche <didrocks at ubuntu.com>:
>
>> Le 27/10/2016 à 03:01, Marcos Alano a écrit :
>> > Hello guys,
>>
>> Hey Marcos,
>> >
>> >
>> > Sorry if I'm in the wrong mailing list. That's the only one about snap i
>> > could found. The question is: how I revert-revert (un-revert) a snap? I
>> > can install a snap:
>> >
>> > (sudo snap install hello) after thatr I can upgrade a snap (snap refresh
>> > hello --channel=beta hello) and finally revert (sudo snap revert hello).
>> > But after that if I try to re-upgrade I just can't:
>> >
>> > $ sudo snap refresh --beta hello
>> >
>> > error: cannot refresh "hello": snap "hello" has no updates available
>> >
>> > I'm doing something wrong?
>>
>> You are not doing it wrong :) The revert command "blacklists" this
>> particular snap revisions on purpose, so that you don't reupdate to it.
>> However, there is a way to get back to it! You can remove explicitely
>> that revision (without removing the current snap). Data associated to
>> the reverted revision will be cleaned up as well.
>> Then, you can refresh.
>>
>> In a concrete example with the hello snap:
>> 20 is the revision in the stable channel, 29 corresponds to the revision
>> in the beta channel.
>>
>> # Install and update
>> $ snap install hello
>> $ snap list hello
>> Name   Version  Rev  Developer  Notes
>> hello         2.10     20   canonical  -
>> $ snap refresh hello --beta
>> $ snap list hello
>> Name   Version  Rev  Developer  Notes
>> hello         2.10.1   29   canonical  -
>>
>> # Revert
>> $ snap revert hello
>> $ snap list hello
>> Name   Version  Rev  Developer  Notes
>> hello         2.10     20   canonical  -
>>
>> # Remove reverted version (and associated data)
>> $ snap remove hello --revision=29
>> hello removed
>> $ snap list hello
>> Name   Version  Rev  Developer  Notes
>> hello         2.10     20   canonical  -
>>
>> # Reupdate
>> $ snap refresh hello --beta
>> $ snap list hello
>> Name   Version  Rev  Developer  Notes
>> hello         2.10.1   29   canonical  -
>>
>> I hope that answer your questions :)
>> Cheers,
>> Didier
>>
>>
>> --
>> Snapcraft mailing list
>> Snapcraft at lists.snapcraft.io
>> Modify settings or unsubscribe at: https://lists.ubuntu.com/mailm
>> an/listinfo/snapcraft
>>
>
>
>
>
>
> --
> Snapcraft mailing list
> Snapcraft at lists.snapcraft.io
> Modify settings or unsubscribe at: https://lists.ubuntu.com/
> mailman/listinfo/snapcraft
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/snapcraft/attachments/20161027/e214c695/attachment.html>


More information about the Snapcraft mailing list