You will need the following:
- a free Snapcraft developer account account
- your own built and tested snap working with strict or classic confinement
To get started, first register a name for your snap in the Snap Store.
Return to the terminal and the location of your
.snap file. You now need to authenticate the snapcraft command using your Snapcraft developer account credentials. This can be accomplished with the following:
$ snapcraft login
Next, upload the snap and release it into the stable channel:
$ snapcraft push --release=stable mysnap_latest_amd64.snap
If no errors are detected in the automated review of your upload, your app will be immediately available for installation.
You can now test-install your snap from the Snap Store, ideally from a different testing environment to the one used to build your snap:
$ sudo snap install mysnap
Congratulations, your snap has now been released and is available on the Snap Store!
There are many things you can do to refine your snap and make it more visible to new users. See Getting ready for stable for further details.
Moving snaps between channels
Pushing your snap to a channel other than stable is a good way to manage a user’s expectations of the trade-off between stability and cutting edge features.
To help with this, the
snapcraft release command moves your published snap between channels. This is useful if you wish your beta channel users to test a revision before promoting it to candidate or stable for general release.
You can see which revisions are currently held on the store with the
snapcraft status command:
$ snapcraft status mysnap Track Arch Channel Version Revision latest amd64 stable 0.3.0-6 4 candidate 0.3.0-7 5 beta 0.3.0-9 5 edge 0.3.0-9 7
The release command takes the snap name, the revision you wish to move, and the destination channel (or channels) as its arguments:
$ snapcraft release mysnap 7 beta
You can also move earlier revisions back into a channel:
$ snapcraft release mysnap 5 beta