From 3e3a29fa49ec494800a4aa866d84fba4eaa8261b Mon Sep 17 00:00:00 2001 From: José Bollo Date: Mon, 26 Feb 2018 18:57:24 +0100 Subject: afs-supervisor: Add systemd service and config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I64bf8de01dbb8cf9581ed0be358d81fa84106520 Signed-off-by: José Bollo --- CMakeLists.txt | 17 +++++++++++++++++ afs-supervisor.service.in | 9 +++++++++ src/CMakeLists.txt | 16 +++++++++------- 3 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 afs-supervisor.service.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 1a6d2184..b784621a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -39,6 +39,11 @@ INCLUDE(CTest) # possible settings set(AGL_DEVEL OFF CACHE BOOL "Activates developping features") set(INCLUDE_MONITORING OFF CACHE BOOL "Activates installation of monitoring") +set(INCLUDE_SUPERVISOR OFF CACHE BOOL "Activates installation of supervisor") +set(AFS_SURPERVISION_SOCKET "@urn:AGL:afs:supervision:socket" CACHE STRING "Internal socket for supervision") +set(AFS_SUPERVISOR_PORT 1619 CACHE STRING "Port of service for the supervisor") +set(AFS_SUPERVISOR_TOKEN HELLO CACHE STRING "Secret token for the supervisor") +set(UNITDIR_SYSTEM ${CMAKE_INSTALL_LIBDIR}/systemd/system CACHE STRING "Path to systemd system unit files") ########################################################################### @@ -80,6 +85,8 @@ PKG_CHECK_MODULES(openssl openssl) PKG_CHECK_MODULES(uuid uuid) PKG_CHECK_MODULES(cynara cynara-client) +ADD_DEFINITIONS("-DAFS_SURPERVISION_SOCKET=\"${AFS_SURPERVISION_SOCKET}\"") + IF(AGL_DEVEL) ADD_DEFINITIONS(-DAGL_DEVEL) endif() @@ -176,3 +183,13 @@ ELSE() ) ENDIF() + +IF(INCLUDE_SUPERVISOR) + CONFIGURE_FILE(afs-supervisor.service.in afs-supervisor.service @ONLY) + INSTALL(FILES + ${CMAKE_CURRENT_BINARY_DIR}/afs-supervisor.service + DESTINATION + ${UNITDIR_SYSTEM} + ) +ENDIF() + diff --git a/afs-supervisor.service.in b/afs-supervisor.service.in new file mode 100644 index 00000000..60b2a313 --- /dev/null +++ b/afs-supervisor.service.in @@ -0,0 +1,9 @@ +[Unit] +Description=Application Framework Supervisor + +[Service] +ExecStart=/usr/bin/afs-supervisor --port @AFS_SUPERVISOR_PORT@ --token @AFS_SUPERVISOR_TOKEN@ + +[Install] +WantedBy=multi-user.target + diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index bfe187f5..d7cde903 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -89,13 +89,15 @@ INSTALL(TARGETS afb-daemon ########################################### # build and install afb-daemon ########################################### -ADD_EXECUTABLE(afs-supervisor afs-main.c afs-supervisor.c afs-discover.c afs-config.c) -TARGET_LINK_LIBRARIES(afs-supervisor - afb-lib - ${link_libraries} -) -INSTALL(TARGETS afs-supervisor - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +IF(INCLUDE_SUPERVISOR) + ADD_EXECUTABLE(afs-supervisor afs-main.c afs-supervisor.c afs-discover.c afs-config.c) + TARGET_LINK_LIBRARIES(afs-supervisor + afb-lib + ${link_libraries} + ) + INSTALL(TARGETS afs-supervisor + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +ENDIF() ########################################### # build and install libafbwsc -- cgit 1.2.3-korg