From 5aa4d053853caf9d74eba1bbcdb6c7dcfef10b32 Mon Sep 17 00:00:00 2001 From: Manish Rathod Date: Fri, 4 May 2018 10:25:35 +0000 Subject: [PATCH] Revert "service: Reimplement per-profile configuration using snippets" This reverts commit 2ebe44c56750e7be5de2494bba1223d8e970df4f. Change-Id: I82d9da6d12e9e4f1e6900963a1de09ddd213a3c4 --- packaging/emulator.conf | 3 --- packaging/oom-adj-1000.conf | 2 -- packaging/reset-privs.conf | 4 --- packaging/restart-on-fail.conf | 3 --- packaging/sdbd-env-generator | 3 --- packaging/sdbd.service | 3 +-- packaging/sdbd.spec | 55 +++++++++++++++++++++++--------------- packaging/sdbd@.socket | 6 +++++ packaging/sdbd_device.service | 24 +++++++++++++++++ packaging/sdbd_device_tv.service | 23 ++++++++++++++++ packaging/sdbd_emulator.service | 25 +++++++++++++++++ packaging/sdbd_emulator_tv.service | 23 ++++++++++++++++ 12 files changed, 135 insertions(+), 39 deletions(-) delete mode 100644 packaging/emulator.conf delete mode 100644 packaging/oom-adj-1000.conf delete mode 100644 packaging/reset-privs.conf delete mode 100644 packaging/restart-on-fail.conf delete mode 100755 packaging/sdbd-env-generator create mode 100644 packaging/sdbd@.socket create mode 100644 packaging/sdbd_device.service create mode 100644 packaging/sdbd_device_tv.service create mode 100644 packaging/sdbd_emulator.service create mode 100644 packaging/sdbd_emulator_tv.service diff --git a/packaging/emulator.conf b/packaging/emulator.conf deleted file mode 100644 index c2f6bc0..0000000 --- a/packaging/emulator.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Unit] -After=dbus.service -Before=sensord.service diff --git a/packaging/oom-adj-1000.conf b/packaging/oom-adj-1000.conf deleted file mode 100644 index bac841b..0000000 --- a/packaging/oom-adj-1000.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -OOMScoreAdjust=-1000 diff --git a/packaging/reset-privs.conf b/packaging/reset-privs.conf deleted file mode 100644 index c1af7ed..0000000 --- a/packaging/reset-privs.conf +++ /dev/null @@ -1,4 +0,0 @@ -[Service] -User= -Group= -SmackProcessLabel= diff --git a/packaging/restart-on-fail.conf b/packaging/restart-on-fail.conf deleted file mode 100644 index 0e97dcb..0000000 --- a/packaging/restart-on-fail.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Service] -RemainAfterExit=no -Restart=on-failure diff --git a/packaging/sdbd-env-generator b/packaging/sdbd-env-generator deleted file mode 100755 index c7f7aa6..0000000 --- a/packaging/sdbd-env-generator +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -awk '{match($0, /sdb_port=([0-9]+)/,port_match); match($0, /vm_name=([^, ]*)/,vm_match); print "SDBD_CMDLINE=\"--emulator=" vm_match[1] ":" port_match[1] " --connect-to=10.0.2.2:26099" " --sensors=10.0.2.2:"port_match[1]+3"\"" }' /proc/cmdline > /run/sdbd-env diff --git a/packaging/sdbd.service b/packaging/sdbd.service index e9b1047..3ec4efc 100644 --- a/packaging/sdbd.service +++ b/packaging/sdbd.service @@ -6,7 +6,6 @@ After=tmp.mount User=sdk Group=sdk SmackProcessLabel=System -EnvironmentFile=-/run/sdbd-env #If necessary, Put Environment variable settings in a file like below #ExecStartPre=/bin/bash -c "/bin/echo 'SDB_TRACE=all SDBD_LOG_PATH=/tmp' >> /tmp/.sdbdlog.conf" Type=simple @@ -14,6 +13,6 @@ Capabilities=cap_dac_override,cap_setgid,cap_setuid,cap_sys_admin=i SecureBits=keep-caps PIDFile=/tmp/.sdbd.pid RemainAfterExit=yes -ExecStart=/usr/sbin/sdbd $SDBD_CMDLINE +ExecStart=/usr/sbin/sdbd USBFunctionDescriptors=/etc/sdbd/descs USBFunctionStrings=/etc/sdbd/strs diff --git a/packaging/sdbd.spec b/packaging/sdbd.spec index baa5f86..a114dd8 100644 --- a/packaging/sdbd.spec +++ b/packaging/sdbd.spec @@ -8,15 +8,13 @@ License: Apache-2.0 Summary: SDB daemon Group: System/Utilities Source0: %{name}-%{version}.tar.gz -Source10: %{name}.manifest -Source1000: sdbd.service +Source1001: sdbd_device.service +Source1002: sdbd_emulator.service +Source1003: %{name}.manifest Source1004: sdbd_tcp.socket +Source1005: sdbd_device_tv.service +Source1006: sdbd_emulator_tv.service Source1007: sdbd.socket -Source1010: reset-privs.conf -Source1011: oom-adj-1000.conf -Source1012: emulator.conf -Source1013: restart-on-fail.conf -Source1020: sdbd-env-generator BuildRequires: capi-system-info-devel >= 0.2.0 BuildRequires: cmake >= 2.8.3 @@ -57,7 +55,6 @@ SDB daemon for emulator %package extension-tv-emulator Summary: SDB daemon for tv emulator Requires: %{name}-profile_tv = %{version}-%{release} -Requires: %{name}-extension-emulator = %{version}-%{release} %description extension-tv-emulator SDB daemon for tv emulator %endif // ifarch %{ix86} x86_64 @@ -71,7 +68,7 @@ SDBD plugin API library %prep %setup -q -cp %{SOURCE10} . +cp %{SOURCE1003} . %build cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} %{?asan:-DCMAKE_EXE_LINKER_FLAGS="-pthread"} @@ -79,24 +76,22 @@ cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} %{?asan:-DCMAKE_EXE_LINKER_FLAGS="-pth make %{?jobs:-j%jobs} %install -mkdir -p %{buildroot}%{_unitdir}/sdbd.service.d/ +mkdir -p %{buildroot}%{_unitdir} # extension-*-emulator %ifarch %{ix86} x86_64 -install -m 0644 %SOURCE1010 %{buildroot}%{_unitdir}/sdbd.service.d/ -install -m 0644 %SOURCE1011 %{buildroot}%{_unitdir}/sdbd.service.d/ -install -m 0644 %SOURCE1012 %{buildroot}%{_unitdir}/sdbd.service.d/ -mkdir -p %{buildroot}%{_prefix}/lib/systemd/system-generators/ -install -m 0755 %SOURCE1020 %{buildroot}%{_prefix}/lib/systemd/system-generators/ +install -m 0644 %SOURCE1006 %{buildroot}%{_unitdir}/sdbd.service.tv.emulator +install -m 0644 %SOURCE1002 %{buildroot}%{_unitdir}/sdbd.service.emulator mkdir -p %{buildroot}/%{_unitdir}/emulator_preinit.target.wants ln -s %{_unitdir}/sdbd.service %{buildroot}/%{_unitdir}/emulator_preinit.target.wants/ %endif // ifarch %{ix86} x86_64 %make_install -install -m 0644 %SOURCE1000 %{buildroot}%{_unitdir}/sdbd.service +install -m 0644 %SOURCE1005 %{buildroot}%{_unitdir}/sdbd.service.tv +install -m 0644 %SOURCE1001 %{buildroot}%{_unitdir}/sdbd.service install -m 0644 %SOURCE1004 %{buildroot}%{_unitdir}/sdbd_tcp.socket -install -m 0644 %SOURCE1013 %{buildroot}%{_unitdir}/sdbd.service.d/restart-on-fail.conf + install -m 0755 -d %{buildroot}%{_unitdir}/sockets.target.wants/ ln -s ../sdbd_tcp.socket %{buildroot}%{_unitdir}/sockets.target.wants/ @@ -148,20 +143,36 @@ chsmack -e "User::Shell" /sbin/sdbd-user %{_sysconfdir}/sdbd/strs %ifarch %{ix86} x86_64 +%post extension-emulator +mv %{_unitdir}/sdbd.service.emulator %{_unitdir}/sdbd.service +%preun extension-emulator +mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.emulator %files extension-emulator %manifest sdbd.manifest -%{_unitdir}/sdbd.service.d/emulator.conf +%{_unitdir}/sdbd.service.emulator %{_unitdir}/emulator_preinit.target.wants/sdbd.service -%{_prefix}/lib/systemd/system-generators/sdbd-env-generator +%post extension-tv-emulator +mv %{_unitdir}/sdbd.service.tv.emulator %{_unitdir}/sdbd.service +%preun extension-tv-emulator +mv %{_unitdir}/sdbd.service %{_unitdir}/sdbd.service.tv.emulator %files extension-tv-emulator %manifest sdbd.manifest -%{_unitdir}/sdbd.service.d/reset-privs.conf -%{_unitdir}/sdbd.service.d/oom-adj-1000.conf +%{_unitdir}/sdbd.service.tv.emulator +%{_unitdir}/emulator_preinit.target.wants/sdbd.service %endif // ifarch %{ix86} x86_64 +%post profile_tv +pushd %{_unitdir} +mv sdbd.service.tv sdbd.service +popd +%preun profile_tv +pushd %{_unitdir} +cp sdbd.service sdbd.service.tv +echo For correct bahavior of %{name} after uninstalling %{name}-profile_tv, you need to reinstall %{name} +popd %files profile_tv -%{_unitdir}/sdbd.service.d/restart-on-fail.conf +%{_unitdir}/sdbd.service.tv %files -n sdbd-devel %{_includedir}/sdb/sdbd_plugin.h diff --git a/packaging/sdbd@.socket b/packaging/sdbd@.socket new file mode 100644 index 0000000..d53479e --- /dev/null +++ b/packaging/sdbd@.socket @@ -0,0 +1,6 @@ +[Unit] +Description=sdbd Socket for %I + +[Socket] +ListenUSBFunction=%I +Service=sdbd.service diff --git a/packaging/sdbd_device.service b/packaging/sdbd_device.service new file mode 100644 index 0000000..080e0ed --- /dev/null +++ b/packaging/sdbd_device.service @@ -0,0 +1,24 @@ +[Unit] +Description=sdbd +Requires=tizen-system-env.service +After=tmp.mount + +[Service] +User=sdk +Group=sdk +Type=simple +#location of SDBD log file +#If necessary, Put Environment variable settings in a file like below +#ExecStartPre=/bin/bash -c "/bin/echo 'SDB_TRACE=all SDBD_LOG_PATH=/tmp' >> /tmp/.sdbdlog.conf" +EnvironmentFile=-/run/tizen-system-env +PIDFile=/tmp/.sdbd.pid +Restart=on-failure +SmackProcessLabel=System +Capabilities=cap_dac_override,cap_setgid,cap_setuid,cap_sys_admin=i +SecureBits=keep-caps +ExecStart=/usr/sbin/sdbd +USBFunctionDescriptors=/etc/sdbd/descs +USBFunctionStrings=/etc/sdbd/strs + +[Install] +WantedBy=multi-user.target diff --git a/packaging/sdbd_device_tv.service b/packaging/sdbd_device_tv.service new file mode 100644 index 0000000..88d3a08 --- /dev/null +++ b/packaging/sdbd_device_tv.service @@ -0,0 +1,23 @@ +[Unit] +Description=sdbd +Requires=tizen-system-env.service +After=tmp.mount + +[Service] +Type=simple +#location of SDBD log file +#Environment=SDBD_LOG_PATH=/tmp +#If necessary, Put Environment variable settings in a file like below +#ExecStartPre=/bin/bash -c "/bin/echo 'SDB_TRACE=all SDBD_LOG_PATH=/tmp' >> /tmp/.sdbdlog.conf" +EnvironmentFile=-/run/tizen-system-env +OOMScoreAdjust=-1000 +PIDFile=/tmp/.sdbd.pid +Restart=on-failure +Capabilities=cap_dac_override,cap_setgid,cap_setuid,cap_sys_admin=i +SecureBits=keep-caps +ExecStart=/usr/sbin/sdbd +USBFunctionDescriptors=/etc/sdbd/descs +USBFunctionStrings=/etc/sdbd/strs + +[Install] +WantedBy=multi-user.target diff --git a/packaging/sdbd_emulator.service b/packaging/sdbd_emulator.service new file mode 100644 index 0000000..5ace52d --- /dev/null +++ b/packaging/sdbd_emulator.service @@ -0,0 +1,25 @@ +[Unit] +Description=sdbd +Before=sensord.service +After=tmp.mount dbus.service +#DefaultDependencies=false + +[Service] +User=sdk +Group=sdk +Type=simple +PIDFile=/tmp/.sdbd.pid +RemainAfterExit=yes +#If necessary, Put Environment variable settings in a file like below +#ExecStartPre=/bin/bash -c "/bin/echo 'SDB_TRACE=all SDBD_LOG_PATH=/tmp' >> /tmp/.sdbdlog.conf" +#ExecStartPre=/bin/bash -c "/bin/echo '10.0.2.15/32 system::debugging_network' >> /smack/netlabel" +SmackProcessLabel=System +Capabilities=cap_dac_override,cap_setgid,cap_setuid,cap_sys_admin=i +SecureBits=keep-caps +ExecStart=/bin/sh -c "/usr/sbin/sdbd `/usr/bin/awk '{match($0, /sdb_port=([0-9]+)/,port_match); match($0, /vm_name=([^, ]*)/,vm_match); print \"--emulator=\" vm_match[1] \":\" port_match[1] \" --connect-to=10.0.2.2:26099\" \" --sensors=10.0.2.2:\"port_match[1]+3 }' /proc/cmdline`" +USBFunctionDescriptors=/etc/sdbd/descs +USBFunctionStrings=/etc/sdbd/strs + +[Install] +WantedBy=emulator_preinit.target + diff --git a/packaging/sdbd_emulator_tv.service b/packaging/sdbd_emulator_tv.service new file mode 100644 index 0000000..8d45fea --- /dev/null +++ b/packaging/sdbd_emulator_tv.service @@ -0,0 +1,23 @@ +[Unit] +Description=sdbd +Before=sensord.service +After=tmp.mount dbus.service +#DefaultDependencies=false + +[Service] +Type=simple +#location of SDBD log file +#Environment=SDBD_LOG_PATH=/tmp +#If necessary, Put Environment variable settings in a file like below +#ExecStartPre=/bin/bash -c "/bin/echo 'SDB_TRACE=all SDBD_LOG_PATH=/tmp' >> /tmp/.sdbdlog.conf" +PIDFile=/tmp/.sdbd.pid +RemainAfterExit=yes +OOMScoreAdjust=-1000 +Capabilities=cap_dac_override,cap_setgid,cap_setuid,cap_sys_admin=i +SecureBits=keep-caps +#ExecStartPre=/bin/bash -c "/bin/echo '10.0.2.15/32 system::debugging_network' >> /smack/netlabel" +ExecStart=/bin/sh -c "/usr/sbin/sdbd `/usr/bin/awk '{match($0, /sdb_port=([0-9]+)/,port_match); match($0, /vm_name=([^, ]*)/,vm_match); print \"--emulator=\" vm_match[1] \":\" port_match[1] \" --connect-to=10.0.2.2:26099\" \" --sensors=10.0.2.2:\"port_match[1]+3 }' /proc/cmdline`" + +[Install] +WantedBy=emulator_preinit.target + -- 2.7.4