diff options
author | José Bollo <jose.bollo@iot.bzh> | 2018-07-19 11:29:36 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2018-07-19 15:38:29 +0200 |
commit | 8c7132a146aa744f167ea2fc45dcd8d53018ecc0 (patch) | |
tree | 62bb28dc2831417d2406a30b4c8b38bd133b45bb /conf/unit/generate-unit-conf/provided.inc | |
parent | d8d819bcde18c8b4b5dfbdf610a6fc5e04fa54bf (diff) |
Creates systemd service for APIs
Before this change, APIs were only provided as binder's
exported websockets. This forbade ability to use symbolic
links.
Allowing links is interesting for having platform sockets
and for linked api (not using socket).
The API afm-main is a platform API. It must run at system level
and must be available for all user clients. To achieve it, we
use a link.
Bug-AGL: SPEC-1592
Change-Id: I8753f83373755eb7fc2d2cc50251b8f738b61b03
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'conf/unit/generate-unit-conf/provided.inc')
-rw-r--r-- | conf/unit/generate-unit-conf/provided.inc | 62 |
1 files changed, 50 insertions, 12 deletions
diff --git a/conf/unit/generate-unit-conf/provided.inc b/conf/unit/generate-unit-conf/provided.inc index ead1983..267e2ed 100644 --- a/conf/unit/generate-unit-conf/provided.inc +++ b/conf/unit/generate-unit-conf/provided.inc @@ -1,19 +1,63 @@ dnl vim: set filetype=sysctl.conf.m4 syntax=sysctl.conf.m4: -;--------------------------------------------------------------------------------- -;---- P R O V I D E D A P I S ---- -;--------------------------------------------------------------------------------- +;------------------------------------------------------------------------------- +;---- P R O V I D E D A P I S ---- +;------------------------------------------------------------------------------- {{#provided-api}} -{{#value=ws|auto}} +;------------------------------------------------------------------------------- +;---- T H E S E R V I C E O F T H E A P I ---- +;------------------------------------------------------------------------------- %begin systemd-unit # auto generated by wgtpkg-unit for {{:id}} version {{:version}} target {{:#target}} of {{:idaver}} %systemd-unit system -%systemd-unit socket afm-api-ws-{{name}}@ +%systemd-unit service UNIT_NAME_API_BASE({{name}})@ + [Unit] Description=Provides api {{name}} for user %i +X-AFM-API-TYPE={{value}} + +Requires=afm-user-setup@%i.service +After=afm-user-setup@%i.service + +{{#value=ws|auto}} +Requires=UNIT_NAME_API_BASE({{name}})@%i.socket +After=UNIT_NAME_API_BASE({{name}})@%i.socket +{{/value=ws|auto}} + +[Service] +Type=oneshot +RemainAfterExit=yes +{{#value=ws|auto}} +ExecStart=/bin/true +{{/value=ws|auto}} +dnl {{#value=link}} +dnl ExecStart=/bin/ln -s {{:#metadata.install-dir}}/ USER_RUN_DIR/apis/link/{{name}} +dnl {{/value=link}} + +dnl %nl +dnl [Install] +dnl WantedBy=afm-user-session@.target +dnl %systemd-unit wanted-by afm-user-session@.target + +%end systemd-unit + + +;------------------------------------------------------------------------------- +;---- T H E S O C K E T O F T H E A P I ---- +;------------------------------------------------------------------------------- +{{#value=ws|auto}} + +%begin systemd-unit + +# auto generated by wgtpkg-unit for {{:id}} version {{:version}} target {{:#target}} of {{:idaver}} + +%systemd-unit system +%systemd-unit socket UNIT_NAME_API_BASE({{name}})@ +[Unit] +Description=Provides websocket api {{name}} for user %i Requires=afm-user-setup@%i.service After=afm-user-setup@%i.service DefaultDependencies=no @@ -24,19 +68,13 @@ SmackLabelIPIn=System SmackLabelIPOut=System ListenStream=USER_RUN_DIR/apis/ws/{{name}} FileDescriptorName={{name}} - Service=UNIT_NAME_SERVICE -%nl -[Install] -WantedBy=afm-user-session@.target -%systemd-unit wanted-by afm-user-session@.target - %end systemd-unit - {{/value=ws|auto}} + {{/provided-api}} |