Browse Source
chg: updated the README and changed to ``org`` format
chg: updated the README and changed to ``org`` format
Signed-off-by: Valentin Lab <valentin.lab@kalysto.org>pull/6/head
Valentin Lab
4 years ago
2 changed files with 78 additions and 26 deletions
-
78README.org
-
26README.rst
@ -0,0 +1,78 @@ |
|||
* 0k-charms |
|||
|
|||
This package provides charms, which are special system recipes, that are |
|||
meant to be executable and mangled together to allow managing a wide set |
|||
of services. |
|||
|
|||
Inspired by [[https://discourse.juju.is/t/introduction-to-juju-charms/1188][juju charms]], these are mostly bash scripts organized by |
|||
service and meant to automate all administration tasks, from |
|||
installation, to connection with other services, or any other task a |
|||
service would need. |
|||
|
|||
Several tools are able to read the current state of this repository to |
|||
effectively deploy full production grade services on different type of |
|||
platform. |
|||
|
|||
The only real fully functional implementation is =0k-compose=. It will |
|||
use these charms to drive, prepare, and build in =docker=, complete sets |
|||
of services. |
|||
|
|||
Another old solution called =lxc-deploy= was used actively before to deploy |
|||
services on LXC tool set until 2016 using these charms. |
|||
|
|||
Bare hosts can also replay some recipes to install services directly |
|||
on them via the =0k-charm= project using the =charm apply= |
|||
command. Note that actually, as most recipes are bash executable, it |
|||
is still a viable option to copy-paste parts of source-code of these |
|||
scripts. These last two options are still used very often to bootstrap |
|||
installs of =docker-hosts= for instance. |
|||
|
|||
|
|||
* Maturity |
|||
|
|||
Charms in these repository are in a wide set of maturity, from simple note |
|||
taking of shell commands, not even executable, to full charm allowing to |
|||
deploy services and manage the full life cycle of the service. |
|||
|
|||
The repository in a whole is thus NOT considered as mature at all, and will |
|||
require some thorough cleaning and decisions to furthermore structure to reach |
|||
a state where it'll make sense to go full public. |
|||
|
|||
* Usage |
|||
|
|||
** TODO Through =compose= for full deployment of sets of services |
|||
|
|||
Requires =0k-compose= package that contains the =compose= command line tool. |
|||
|
|||
TBD |
|||
|
|||
** TODO Through =lxc-deploy= for full install and deployment of services |
|||
|
|||
Requires =lxc-scripts= package that holds several tools for LXC |
|||
management, amongst them is =lxc-deploy=. |
|||
|
|||
TBD |
|||
|
|||
** TODO Through =docker-build-charm= for docker image creation |
|||
|
|||
Requires =0k-docker= package that holds several tools for docker |
|||
management, amongst them is =docker-build-charm=. |
|||
|
|||
=docker-build-charm= will use the =install= recipes in a charm to |
|||
basically mimic the =Dockerfile= purpose and create a docker image for |
|||
a specific service. |
|||
|
|||
TBD |
|||
|
|||
** TODO Through =0k-charm= for bare hosts installs |
|||
|
|||
Requires =0k-charm= package to get the =charm= command line util. |
|||
|
|||
TBD |
|||
|
|||
|
|||
* Installation |
|||
|
|||
Most tools should check the =CHARM_STORE= bash environment variable |
|||
that should be the path to reach the root of this repository. If not |
|||
defined, most tools will look in =/srv/charm-store= by default. |
@ -1,26 +0,0 @@ |
|||
0k-charms |
|||
========= |
|||
|
|||
This package provides charms for the ``lxc-deploy`` and |
|||
``docker-build-charm`` commands respectively from ``lxc-scripts`` and |
|||
``0k-docker`` packages. |
|||
|
|||
A charm is basically a set of metadata and a shell script that will be |
|||
executed to create an image for lxc or docker. |
|||
|
|||
|
|||
Installation |
|||
============ |
|||
|
|||
Be sure to install ``lxc-scripts`` and ``0k-docker`` packages and that |
|||
their binaries are accessible to user 'root'. |
|||
|
|||
By default, ``lxc-deploy`` and ``docker-build-charm`` will look for the |
|||
charm store to be located in ``/srv/charm-store``. This can be a symbolic |
|||
link. |
|||
|
|||
For instance, if ``0k-charms`` is installed in ``/opt/apps/0k-charms``, |
|||
you would do:: |
|||
|
|||
ln -sf /opt/apps/0k-charms/precise /srv/charm-store |
|||
|
Write
Preview
Loading…
Cancel
Save
Reference in new issue