diff options
author | José Bollo <jose.bollo@iot.bzh> | 2017-04-19 11:32:23 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2017-04-19 18:17:43 +0200 |
commit | 3f6dcaacd7abc85ebed40053a3ce73bc7753ddf9 (patch) | |
tree | 381706b4f6e38094c8af1feec58ac2a98bdad95a /conf/afm-unit.conf | |
parent | 51a86fcd6e4f199009888b5a106bf472f1b7c742 (diff) |
Improve environment setting
Some environment variable were set in the configuration files.
This wasn't a valuable solution. Allowing now system tning to
put environment variables in files of /etc/afm/unit.env.d
is much more flexible.
Change-Id: I1796061c9055a2860f0bbab340aa3a6e7b85dd3d
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'conf/afm-unit.conf')
-rw-r--r-- | conf/afm-unit.conf | 282 |
1 files changed, 0 insertions, 282 deletions
diff --git a/conf/afm-unit.conf b/conf/afm-unit.conf deleted file mode 100644 index 6712424..0000000 --- a/conf/afm-unit.conf +++ /dev/null @@ -1,282 +0,0 @@ -;--------------------------------------------------------------------------------- -; File: -; -; afm-unit.conf -; -; Role: -; -; Configure how installation of widget produces unit files for systemd -; -; Processing and format: -; -; 1. File load -; -; Lines beginning with ; are firstly removed -; -; 2. File instanciation -; -; Mustache (extended) substitutions are applied using JSON -; data deduced from config.xml file of the widget. -; -; 3. Extraction of units -; -; Extract produced units, pack it (remove empty lines and directives) -; -; Directives: -; -; Any directive occupy one whole line starting with % -; -; - %nl -; -; produce an empty line at the end -; -; - %begin systemd-unit -; - %end systemd-unit -; -; delimit the produced unit -; -; - %systemd-unit user -; - %systemd-unit system -; -; tells the kind of unit (user/system) -; -; - %systemd-unit service NAME -; - %systemd-unit socket NAME -; -; gives the name and type of the unit -; -; - %systemd-unit wanted-by NAME -; -; tells to install a link to unit in the wants of NAME -; -; Setting variables: -; -; AFM uses the feature of systemd that completely ignores options prefixed -; with X- -; -; Consequently, options starting with X-AFM- are recorded as public data -; about the application and options starting starting with X-AFM-- are -; recorded as private data. -; -; Examples: -; -; X-AFM-description={{description}} -; -; Records the descritpion of the unit in the field "description" -; of both the public and private object describing the unit. -; -; X-AFM--wgtdir={{:#metadata.install-dir}} -; -; Records the installation directory path in the field "wgtdir" -; of the private object only. -; -;--------------------------------------------------------------------------------- -{{#targets}} - -;--------------------------------------------------------------------------------- -;---- P R O V I D E D U N I T S ---- -;--------------------------------------------------------------------------------- -%begin systemd-unit - -# auto generated by wgtpkg-unit for {{id}} version {{version}} target {{:#target}} of {{idaver}} -%nl - -[Unit] -Description={{description}} -X-AFM-description={{description}} -X-AFM-name={{name.content}} -X-AFM-shortname={{name.short}} -X-AFM-id={{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -X-AFM-version={{version}} -X-AFM-author={{author.content}} -X-AFM-author-email={{author.email}} -X-AFM-width={{width}} -X-AFM-height={{height}} -X-AFM--ID={{id}} -X-AFM--target-name={{:#target}} -X-AFM--content={{content.src}} -X-AFM--type={{content.type}} -X-AFM--wgtdir={{:#metadata.install-dir}} -X-AFM--workdir={{&#metadata.app-data-dir}}/{{id}} -%nl - -# Adds check to smack -ConditionSecurity=smack -%nl - -# Automatic bound to required api -{{#required-api}} -{{#value=auto|ws}} -BindsTo=afm-api-ws-{{name}} -After=afm-api-ws-{{name}} -{{/value=auto|ws}} -{{/required-api}} -%nl - -[Service] -SmackProcessLabel=User::App::{{id}} -SuccessExitStatus=0 SIGKILL - -{{#required-permission}} - {{#urn:AGL:permission::platform:no-oom}} OOMScoreAdjust=-500 {{/urn:AGL:permission::platform:no-oom}} - {{#urn:AGL:permission::partner:real-time}} IOSchedulingClass=realtime {{/urn:AGL:permission::partner:real-time}} -# {{^urn:AGL:permission::partner:real-time}} RestrictRealtime=on {{/urn:AGL:permission::partner:real-time}} - {{#urn:AGL:permission::public:display}} SupplementaryGroups=display {{/urn:AGL:permission::public:display}} - {{^urn:AGL:permission::public:syscall:clock}} SystemCallFilter=~@clock {{/urn:AGL:permission::public:syscall:clock}} -{{/required-permission}} -%nl - -WorkingDirectory=-{{&#metadata.app-data-dir}}/{{id}} -ExecStartPre=/bin/mkdir -p {{&#metadata.app-data-dir}}/{{id}} -Environment=AFM_APP_INSTALL_DIR={{:#metadata.install-dir}} - -%systemd-unit user -{{#required-permission.urn:AGL:permission::public:hidden}}\ -%systemd-unit service afm-service-{{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -{{/required-permission.urn:AGL:permission::public:hidden}}\ -{{^required-permission.urn:AGL:permission::public:hidden}}\ -%systemd-unit service afm-appli-{{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -{{/required-permission.urn:AGL:permission::public:hidden}}\ - -;--------------------------------------------------------------------------------- -;---- text/html application/vnd.agl.native application/vnd.agl.service ---- -;--------------------------------------------------------------------------------- -{{#content.type=text/html|application/vnd.agl.native|application/vnd.agl.service}} - -{{^content.type=application/vnd.agl.service}} -X-AFM--http-port={{:#metadata.http-port}} -{{/content.type=application/vnd.agl.service}} - -ExecStart=/usr/bin/afb-daemon \ - {{^content.type=application/vnd.agl.service}}\ - --port={{:#metadata.http-port}} \ - --random-token \ - {{/content.type=application/vnd.agl.service}}\ - --rootdir={{:#metadata.install-dir}} \ - --workdir={{&#metadata.app-data-dir}}/{{id}} \ - {{#required-permission.urn:AGL:permission::public:no-htdocs}}\ - --roothttp=. \ - {{/required-permission.urn:AGL:permission::public:no-htdocs}}\ - {{^required-permission.urn:AGL:permission::public:no-htdocs}}\ - --roothttp=htdocs \ - {{/required-permission.urn:AGL:permission::public:no-htdocs}}\ - {{#required-permission.urn:AGL:permission::public:applications:read}}\ - --alias=/icons:{{:#metadata.icons-dir}} \ - {{/required-permission.urn:AGL:permission::public:applications:read}}\ - {{#required-api}}\ - {{#value=auto}}\ - --ws-client=unix:%t/apis/ws/{{name}} \ - {{/value=auto}}\ - {{#value=ws}}\ - --ws-client=unix:%t/apis/ws/{{name}} \ - {{/value=ws}}\ - {{#value=dbus}}\ - --dbus-client={{name}} \ - {{/value=dbus}}\ - {{#value=link}}\ - --binding=%t/apis/lib/{{name}} \ - {{/value=link}}\ - {{#value=cloud}}\ - --cloud-client={{name}} \ - {{/value=cloud}}\ - {{#value=local}}\ - --binding={{:#metadata.install-dir}}/{{name}} \ - {{/value=local}}\ - {{/required-api}}\ - {{#provided-api}}\ - {{#value=auto}}\ - {{^required-permission.urn:AGL:permission::partner:service:no-ws}}\ - --ws-server=sd:{{name}} \ - {{/required-permission.urn:AGL:permission::partner:service:no-ws}}\ - {{^required-permission.urn:AGL:permission::partner:service:no-dbus}}\ - --dbus-server={{name}} \ - {{/required-permission.urn:AGL:permission::partner:service:no-dbus}}\ - {{/value=auto}}\ - {{#value=ws}}\ - --ws-server=sd:{{name}} \ - {{/value=ws}}\ - {{#value=dbus}}\ - --dbus-server={{name}} \ - {{/value=dbus}}\ - {{/provided-api}}\ - {{#content.type=text/html}}\ - --exec /usr/bin/web-runtime http://localhost:@p/{{content.src}}?token=@t - {{/content.type=text/html}}\ - {{#content.type=application/vnd.agl.native}}\ - --exec {{:#metadata.install-dir}}/{{content.src}} @p @t - {{/content.type=application/vnd.agl.native}}\ - {{#content.type=application/vnd.agl.service}}\ - --no-httpd - {{/content.type=application/vnd.agl.service}} - -{{/content.type=text/html|application/vnd.agl.native|application/vnd.agl.service}} - - -;--------------------------------------------------------------------------------- -;---- application/x-executable ---- -;--------------------------------------------------------------------------------- -{{#content.type=application/x-executable}} - -Environment=LD_LIBRARY_PATH=$ORIGIN/$LIB - -ExecStart={{:#metadata.install-dir}}/{{content.src}} - -{{/content.type=application/x-executable}} - -;--------------------------------------------------------------------------------- -; auto start -;--------------------------------------------------------------------------------- -{{#required-permission.urn:AGL:permission::system:run-by-default}} -{{^provided-api}} -%nl -[Install] -WantedBy=default.target -%systemd-unit wanted-by default.target -{{/provided-api}} -{{/required-permission.urn:AGL:permission::system:run-by-default}} - -%end systemd-unit - - -;--------------------------------------------------------------------------------- -;---- P R O V I D E D A P I S ---- -;--------------------------------------------------------------------------------- - -{{#provided-api}} -{{#value=ws|auto}} - -%begin systemd-unit - -# auto generated by wgtpkg-unit for {{id}} version {{version}} target {{:#target}} of {{idaver}} -# -%systemd-unit user -%systemd-unit socket afm-api-ws-{{name}} - -[Socket] -SmackLabel=* -ListenStream=%t/bindings/{{name}} -FileDescriptorName={{name}} - -{{#required-permission.urn:AGL:permission::public:hidden}}\ -Service=afm-service-{{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -{{/required-permission.urn:AGL:permission::public:hidden}}\ -{{^required-permission.urn:AGL:permission::public:hidden}}\ -Service=afm-appli-{{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} -{{/required-permission.urn:AGL:permission::public:hidden}}\ - -;--------------------------------------------------------------------------------- -{{#required-permission.urn:AGL:permission::system:run-by-default}} -%nl -[Install] -WantedBy=default.target -%systemd-unit wanted-by default.target -{{/required-permission.urn:AGL:permission::system:run-by-default}} -;--------------------------------------------------------------------------------- - -%end systemd-unit - -{{/value=ws|auto}} -{{/provided-api}} - -{{/targets}} - |