diff options
author | José Bollo <jose.bollo@iot.bzh> | 2019-05-15 20:49:14 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2019-06-14 11:17:53 +0200 |
commit | 77bd42075de481ae89f6a5b2bc8a79bf967d95cd (patch) | |
tree | 276904b4bc22397f56a6df883763f87fd68acc27 /conf/unit/macros.inc | |
parent | 3284913fccd1a8b6e9993eb9676d8d28f02c2151 (diff) |
Introduce platform services
The platform services are services that run
at the global platform scope as opposite to
services that run in the context of the user.
Bug-AGL: SPEC-1015
Change-Id: I08c2d47715cbc7436e67781d5e638386be531520
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'conf/unit/macros.inc')
-rw-r--r-- | conf/unit/macros.inc | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/conf/unit/macros.inc b/conf/unit/macros.inc index a764765..ca72b95 100644 --- a/conf/unit/macros.inc +++ b/conf/unit/macros.inc @@ -25,6 +25,7 @@ define( `PERM', `@afm_prefix@permission:$1') define( `REQPERM', `required-permission.PERM($1)') define( `ON_PERM', `MUSTACH_ON(REQPERM($1),$2,$3)') +define( `ON_NOT_PERM', `MUSTACH_ON(REQPERM($1),$3,$2)') define( `IF_PERM', `MUSTACH_IF(REQPERM($1))') define( `IF_NOT_PERM', `MUSTACH_IF_NOT(REQPERM($1))') @@ -43,21 +44,36 @@ define( `IF_NOT_VALUE', `MUSTACH_IF_NOT(value=$1)') -- use TARGET={{:id}}--{{:ver}}--{{:#target}} -- instead of TARGET={{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -------------------------------------------------------------------------------- +define( `SMACKLABEL', `User::App::{{:id}}') define( `TARGET', `{{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}}') define( `NEWTARGET', `{{:id}}--{{:ver}}--{{:#target}}') +define( `UNITSUFFIX', `ON_NOT_PERM(`:partner:scope-platform', `@%i')') define( `UNIT_NAME_BASE', `afm-ON_PERM(`:public:hidden', `service', `appli')-NEWTARGET') -define( `UNIT_NAME_SERVICE', `UNIT_NAME_BASE@%i.service') define( `UNIT_NAME_API_BASE', `afm-api-$1') -define( `UNIT_NAME_API_SERVICE', `UNIT_NAME_API_BASE($1)@$2.service') -define( `UNIT_NAME_API_SOCKET', `UNIT_NAME_API_BASE($1)@$2.socket') +define( `UNIT_NAME_API_SERVICE', `UNIT_NAME_API_BASE($1)UNITSUFFIX.service') +define( `UNIT_NAME_API_SOCKET', `UNIT_NAME_API_BASE($1)UNITSUFFIX.socket') define( `UNIT_NAME_BINDING_BASE', `afm-link-$1') -define( `UNIT_NAME_BINDING_SERVICE', `UNIT_NAME_BINDING_BASE($1)@$2.service') -define( `APP_DATA_DIR', `/home/%i/app-data') +define( `UNIT_NAME_BINDING_SERVICE', `UNIT_NAME_BINDING_BASE($1)UNITSUFFIX.service') + define( `USER_RUN_DIR', `@afm_users_rundir@/%i') define( `DEBUGGING_DIR', `@afm_platform_rundir@/debug') -define( `API_PATH', `USER_RUN_DIR/apis') +define( `PLATFORM_RUN_DIR', `@afm_platform_rundir@') + +define( `APP_DATA_DIR', `ON_PERM(`:partner:scope-platform', `/tmp', `/home/%i/app-data')') +define( `APP_WORK_DIR', `ON_PERM(`:partner:scope-platform', `/tmp', `APP_DATA_DIR/{{:id}}')') +define( `RUN_DIR', `ON_PERM(`:partner:scope-platform', `PLATFORM_RUN_DIR', `USER_RUN_DIR')') + +define( `API_PATH', `RUN_DIR/apis') define( `API_PATH_WS', `API_PATH/ws') define( `API_PATH_LINK', `API_PATH/link') + +define( `PLATFORM_API_PATH', `PLATFORM_RUN_DIR/apis') +define( `PLATFORM_API_PATH_WS', `PLATFORM_API_PATH/ws') +define( `PLATFORM_API_PATH_LINK', `PLATFORM_API_PATH/link') + +define( `USER_API_PATH', `USER_RUN_DIR/apis') +define( `USER_API_PATH_WS', `USER_API_PATH/ws') +define( `USER_API_PATH_LINK', `USER_API_PATH/link') -------------------------------------------------------------------------------- -- AGL_DEVEL SPECIFIC PARTS -------------------------------------------------------------------------------- @@ -65,3 +81,4 @@ define( `ON_AGL_DEVEL', `ifdef(`AGL_DEVEL', $1, $2)') define( `ON_NOT_AGL_DEVEL', `ifdef(`AGL_DEVEL', $2, $1)') define( `IF_AGL_DEVEL', `IF(ON_AGL_DEVEL(1,0))') define( `IF_NOT_AGL_DEVEL', `IF(ON_AGL_DEVEL(0,1))') +-------------------------------------------------------------------------------- |