This charm deploys ampache media streaming server. https://github.com/ampache/ampache.
This is the base layer for all charms built using layers. It
provides all of the standard Juju hooks and runs the
charms.reactive.main loop for them. It also bootstraps the
charm-helpers and charms.reactive libraries and all of their
dependencies for use by the charm.
To create a charm layer using this base layer, you need only include it in
a layer.yaml file:
This will fetch this layer from interfaces.juju.solutions and incorporate
it into your charm layer. You can then add handlers under the reactive/
directory. Note that any file under reactive/ will be expected to
contain handlers, whether as Python decorated functions or executables
using the external handler protocol.
You can also define Python libraries under lib/charms/X where X is a
package under the charms. namespace for your charm. See PyPI
for what packages already exist under the charms. namespace.
This layer provides hooks that other layers can react to using the decorators
of the charms.reactive library:
Other hooks are not implemented at this time. A new layer can implement storage
or relation hooks in their own layer by putting them in the hooks directory.
Note: Because update-status is invoked every 5 minutes, you should take
care to ensure that your reactive handlers only invoke expensive operations
when absolutely necessary. It is recommended that you use helpers like
[@only_once], [@when_file_changed], and [data_changed] to ensure
that handlers run only when necessary.
This layer does not currently support any configuration.
This layer currently does not set any reactive states.
This layer currently does not define any actions.