From 3f6dcaacd7abc85ebed40053a3ce73bc7753ddf9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Bollo?= Date: Wed, 19 Apr 2017 11:32:23 +0200 Subject: [PATCH] Improve environment setting MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 --- conf/CMakeLists.txt | 10 +++++++--- ...{afm-system-daemon.service => afm-system-daemon.service.in} | 0 conf/{afm-unit.conf => afm-unit.conf.in} | 1 + conf/{afm-user-daemon.service => afm-user-daemon.service.in} | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) rename conf/{afm-system-daemon.service => afm-system-daemon.service.in} (100%) rename conf/{afm-unit.conf => afm-unit.conf.in} (99%) rename conf/{afm-user-daemon.service => afm-user-daemon.service.in} (87%) diff --git a/conf/CMakeLists.txt b/conf/CMakeLists.txt index d8611e0..cf3d3ec 100644 --- a/conf/CMakeLists.txt +++ b/conf/CMakeLists.txt @@ -19,6 +19,9 @@ cmake_minimum_required(VERSION 2.8) configure_file(afm-launch.conf.in afm-launch.conf) +configure_file(afm-unit.conf.in afm-unit.conf) +configure_file(afm-system-daemon.service.in afm-system-daemon.service) +configure_file(afm-user-daemon.service.in afm-user-daemon.service) if(NOT USE_SDK) set(SYSCONFDIR_DBUS_SYSTEM ${CMAKE_INSTALL_SYSCONFDIR}/dbus-1/system.d CACHE STRING "Path to dbus system configuration files") @@ -27,10 +30,11 @@ if(NOT USE_SDK) set(UNITDIR_USER ${CMAKE_INSTALL_LIBDIR}/systemd/user CACHE STRING "Path to systemd system unit files") install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-system-daemon.conf DESTINATION ${SYSCONFDIR_DBUS_SYSTEM}) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-system-daemon.service DESTINATION ${UNITDIR_SYSTEM}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/afm-system-daemon.service DESTINATION ${UNITDIR_SYSTEM}) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-user-daemon.conf DESTINATION ${SYSCONFDIR_DBUS_USER}) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-user-daemon.service DESTINATION ${UNITDIR_USER}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/afm-user-daemon.service DESTINATION ${UNITDIR_USER}) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/afm-launch.conf DESTINATION ${afm_confdir}) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/afm-unit.conf DESTINATION ${afm_confdir}) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/afm-unit.conf DESTINATION ${afm_confdir}) + install(DIRECTORY DESTINATION ${afm_confdir}/unit.env.d) endif() diff --git a/conf/afm-system-daemon.service b/conf/afm-system-daemon.service.in similarity index 100% rename from conf/afm-system-daemon.service rename to conf/afm-system-daemon.service.in diff --git a/conf/afm-unit.conf b/conf/afm-unit.conf.in similarity index 99% rename from conf/afm-unit.conf rename to conf/afm-unit.conf.in index 6712424..fc0c006 100644 --- a/conf/afm-unit.conf +++ b/conf/afm-unit.conf.in @@ -114,6 +114,7 @@ After=afm-api-ws-{{name}} %nl [Service] +EnvironmentFile=-@afm_confdir@/unit.env.d/* SmackProcessLabel=User::App::{{id}} SuccessExitStatus=0 SIGKILL diff --git a/conf/afm-user-daemon.service b/conf/afm-user-daemon.service.in similarity index 87% rename from conf/afm-user-daemon.service rename to conf/afm-user-daemon.service.in index 6b5c1d8..f536c82 100644 --- a/conf/afm-user-daemon.service +++ b/conf/afm-user-daemon.service.in @@ -6,7 +6,7 @@ Type=dbus BusName=org.AGL.afm.user ExecStart=/usr/bin/afm-user-daemon --user-dbus=unix:path=%t/bus Environment=AFM_APP_INSTALL_DIR=%%r -Environment=LD_PRELOAD=/usr/lib/libEGL.so +EnvironmentFile=-@afm_confdir@/unit.env.d/* Restart=on-failure RestartSec=5 -- 2.16.6