How to handle conffiles in snaps?

Christian Ehrhardt christian.ehrhardt at canonical.com
Mon Aug 8 20:06:10 UTC 2016


Hi,
I was wondering how conffiles should be handled with snapcraft / snaps in
general.
I understand that for a more "app" style application the configuration is
mostly via some kind of UI/ webserver and it can store that "locally" in
it's data dir.

But for the common pattern of a server application with /etc/something.conf
- how is that supposed to be working for snaps?
That scheme is quite common in the server application world, so I expect
there already was some thought or discussion, but my searches didn't find
something good.
Neither did my IRC request this afternoon so I thought it might be worth to
write to the list.

So in the .deb world one would have:

   1. a package owning the conffile, usually the one with the binary(ies)
   reading the conffile
   2. maintainer scripts to handle upgrade path with e.g. changed formats
   3. a million guides out there in the web that refer to e.g.
   /etc/syslog.conf with their explanation

I wonder how that should be handled when snapping such an app:

   1. ok, it can belong to a snap that has the binaries consuming it.
   It gets a bit weird if there are multiple snaps bundling the same
   binaries thou (relatively rare I hope as libs don't have that much conf)
   2. is there an active element in http://snapcraft.io/docs/core/updates
   that I missed
   3. a new /etc interface being read-only for the snap? - maybe with
   interface-parms defining which files should be accessible?
   Yet how would the snap make the snap the available in /etc oon install?

The only snap-centric artifact about it I found was [1]. But that feels
broken/outdated as there is no "snappy" command anymore (and snap has no
"config" subcommand).

I'd be really happy to get some useful pointers or - if not already defined
and documented - to kick off some discussion about it.

[1]: https://developer.ubuntu.com/en/snappy/guides/config/

-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/snapcraft/attachments/20160808/349313ee/attachment.html>


More information about the Snapcraft mailing list