(mOSAIC) mOS -- Guide

Important

This document is a draft!

1   Overview

Error

FIXME: To be written!

2   Concepts

Error

FIXME: To be written!

3   Technicalities

Error

FIXME: To be written!

3.1   Environment variables

Error

FIXME: To be written!

3.1.1   mOSAIC application variables
mosaic_application_identifier
<identifier>
mosaic_application_domain_public_fqdn
<identifier>.apps.cloud.mosaic-apps.eu
mosaic_application_domain_private_fqdn
<identifier>.apps-private.cloud.mosaic-apps.eu
3.1.2   mOS cluster variables
mos_cluster_identifier
<identifier>
mos_cluster_domain_public_fqdn
<identifier>.clusters.cloud.mosaic-apps.eu
mos_cluster_domain_private_fqdn
<identifier>.clusters-private.cloud.mosaic-apps.eu
mos_cluster_nodes_public_fqdn
nodes.<identifier>.clusters.cloud.mosaic-apps.eu
mos_cluster_nodes_private_fqdn
nodes.<identifier>.clusters-private.cloud.mosaic-apps.eu
mos_cluster_node_public_fqdn
<node>.nodes.<identifier>.clusters.cloud.mosaic-apps.eu
mos_cluster_node_private_fqdn
<node>.nodes.<identifier>.clusters-private.cloud.mosaic-apps.eu
3.1.3   mOS node variables
mos_node_public_ip
x.y.z.w
mos_node_private_ip
x.y.z.w
mos_node_public_fqdn
<node>.nodes.cloud.mosaic-apps.eu
mos_node_private_fqdn
<node>.nodes-private.cloud.mosaic-apps.eu
mos_node_public_dns
x.y.z.w
mos_node_private_dns
x.y.z.w
3.1.4   mOS file-system variables
mos_fs_etc
/mos/etc
mos_fs_var
/mos/var
mos_fs_log
/mos/log
mos_fs_run
/mos/run
mos_fs_tmp
/mos/tmp
mos_fs_cgi
/mos/cgi
3.1.5   mOS miscellaneous variables
mos_version
2.0.0
mos_env_sh
/mos/etc/mos/environment.sh
mos_env_json
/mos/etc/mos/environment.json
mos_ns_endpoint_ip
...
mos_ns_endpoint_port
...

3.2   File-system layout

Error

FIXME: To be written!

3.2.1   /mos
/mos/etc
...
/mos/var
...
/mos/log
...
/mos/run
...
/mos/tmp
...
/mos/cgi
...
3.2.3   /.mos-rootfs/volumes
/.mos-rootfs/volumes/mos-slash-current and /.mos-rootfs/volumes/mos-slash-base
...
/.mos-rootfs/volumes/mos-slash-current/etc and /.mos-rootfs/volumes/mos-etc-base
...
/.mos-rootfs/volumes/mos-slash-current/var and /.mos-rootfs/volumes/mos-var-base
...
/.mos-rootfs/volumes/mos-slash-current/var/cache and /.mos-rootfs/volumes/mos-var-cache-base
...
/.mos-rootfs/volumes/mos-slash-current/mos and /.mos-rootfs/volumes/mos-mos-base
...
/.mos-rootfs/volumes/mos-slash-current/me2 and /.mos-rootfs/volumes/mos-me2-base
...
/.mos-rootfs/volumes/mos-swaps
...

3.3   Tools

Error

FIXME: To be written!

3.3.1   mos-operator
mos-operator shell
...
mos-operator systemd (start | stop | restart) <service>
...
mos-operator systemd log <service>
...
3.3.2   mos-packages
mos-packages refresh
...
mos-packages update
...
mos-packages install <package>
...
mos-packages execute <package> <command> <arguments>*
...
mos-packages systemd register <package>
...

3.6   Bootstrap descriptor

3.6.1   Syntax
<descriptor> ::= #!<mode>:<package-specifier>(:<command-specifier>)?
<mode> ::=
    | cluster:<identifier>
    | standalone
<package-specifier> ::=
    | <package-name>
    | <package-name>=<package-version>
<cammand-specifier> ::= (<command-name> | <executable-path>)(:<command-arguments>)?

<command-name> ::= "a single word (maybe with `-`)"
<executable-path> ::= "a path, starting with `/` or `./`"
    // if it starts with `./` it is relative to the package root
    // if it starts with `/` it is absolute

<command-arguments> ::= "any string without white-spaces or `:`"
3.6.2   Examples
#!cluster:test-1:mosaic-platform-core:bootstrap
#!cluster:test-1:mosaic-platform-core=0.8
#!cluster:test-1:mosaic-platform-core
#!standalone:mosaic-artifact-repository:bootstrap
#!standalone:mosaic-artifact-repository:bootstrap:use-https
#!standalone:mosaic-artifact-repository

4   References

Error

FIXME: To be written!