From f32087538a85d54c8f2d88dd666fbd07483965fe Mon Sep 17 00:00:00 2001 From: Brian Read Date: Wed, 12 Jul 2023 08:50:15 +0100 Subject: [PATCH] initial commit of file from CVS for e-smith-cvm-unix-local on Wed 12 Jul 08:50:15 BST 2023 --- .gitignore | 4 + Makefile | 21 +++ README.md | 18 +- contriborbase | 1 + createlinks | 16 ++ e-smith-cvm-unix-local.spec | 160 ++++++++++++++++++ .../db/configuration/defaults/cvm-unix/access | 1 + .../db/configuration/defaults/cvm-unix/status | 1 + .../db/configuration/defaults/cvm-unix/type | 1 + .../e-smith/db/configuration/migrate/cvm-unix | 7 + .../e-smith/templates/etc/rsyslog.conf/32cvm | 4 + .../49-koozali.preset/80-cvm-unix | 3 + root/etc/logrotate.d/cvm | 13 ++ root/sbin/e-smith/systemd/cvm-unix-pre | 10 ++ root/usr/lib/systemd/system/cvm-unix.service | 20 +++ .../system/sme-server.target.d/52koozali.conf | 2 + root/var/.gitignore | 0 17 files changed, 280 insertions(+), 2 deletions(-) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 contriborbase create mode 100644 createlinks create mode 100644 e-smith-cvm-unix-local.spec create mode 100644 root/etc/e-smith/db/configuration/defaults/cvm-unix/access create mode 100644 root/etc/e-smith/db/configuration/defaults/cvm-unix/status create mode 100644 root/etc/e-smith/db/configuration/defaults/cvm-unix/type create mode 100644 root/etc/e-smith/db/configuration/migrate/cvm-unix create mode 100644 root/etc/e-smith/templates/etc/rsyslog.conf/32cvm create mode 100644 root/etc/e-smith/templates/etc/systemd/system-preset/49-koozali.preset/80-cvm-unix create mode 100644 root/etc/logrotate.d/cvm create mode 100644 root/sbin/e-smith/systemd/cvm-unix-pre create mode 100644 root/usr/lib/systemd/system/cvm-unix.service create mode 100644 root/usr/lib/systemd/system/sme-server.target.d/52koozali.conf create mode 100644 root/var/.gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e594810 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +*.rpm +*.log +*spec-20* +*.tar.xz diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..80d6f7a --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: e-smith-cvm-unix-local +# $Id: Makefile,v 1.1 2016/02/04 23:24:32 vip-ire Exp $ +NAME := e-smith-cvm-unix-local +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/README.md b/README.md index c23ad4a..7cddd38 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,17 @@ -# e-smith-cvm-unix-local +# e-smith-cvm-unix-local -SMEServer Koozali developed git repo for e-smith-cvm-unix-local smeserver \ No newline at end of file +SMEServer Koozali developed git repo for e-smith-cvm-unix-local smeserver + +## Wiki +
https://wiki.koozali.org/ + +## Bugzilla +Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=e-smith-cvm-unix-local&product=SME%20Server%2010.X&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED) + +## Description + +
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.* +*Once it has been checked, then this comment will be deleted* +
+ +e-smith-cvm-unix-local is a powerful software package that provides a comprehensive suite of tools to manage and maintain Unix/Linux server systems. It includes a powerful web-based CVM administrator console for managing the system, as well as a host of other utilities and services for streamlined system management. The software allows for the easy and secure deployment of virtual machines, as well as automating system backup and recovery operations. Additionally, e-smith-cvm-unix-local offers a comprehensive set of monitoring tools, allowing for performance analysis and tuning of the system. With its robust and reliable features, e-smith-cvm-unix-local makes it easy to manage and maintain a reliable Unix/Linux server system. diff --git a/contriborbase b/contriborbase new file mode 100644 index 0000000..ef36a67 --- /dev/null +++ b/contriborbase @@ -0,0 +1 @@ +sme10 diff --git a/createlinks b/createlinks new file mode 100644 index 0000000..168dae0 --- /dev/null +++ b/createlinks @@ -0,0 +1,16 @@ +#!/usr/bin/perl -w + +use esmith::Build::CreateLinks qw(:all); + +# make cvm unix start always +safe_symlink("../cvm-unix.service", "root/usr/lib/systemd/system/sme-server.target.wants/cvm-unix.service"); + +# event e-smith-cvm-unix-local-update +my $event="e-smith-cvm-unix-local-update"; +safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/cvm-unix"); +# systemd-specific action mandatory for this package-update event +event_link("systemd-reload", $event, "89"); +event_link("systemd-default", $event, "88"); +templates2events("/etc/systemd/system-preset/49-koozali.preset",$event); +templates2events("/etc/rsyslog.conf",$event); +safe_symlink("restart", "root/etc/e-smith/events/$event/services2adjust/rsyslog"); diff --git a/e-smith-cvm-unix-local.spec b/e-smith-cvm-unix-local.spec new file mode 100644 index 0000000..762fd86 --- /dev/null +++ b/e-smith-cvm-unix-local.spec @@ -0,0 +1,160 @@ +# $Id: e-smith-cvm-unix-local.spec,v 1.12 2022/05/27 02:14:06 jpp Exp $ + +Summary: Module for supervising cvm auth daemon +%define name e-smith-cvm-unix-local +Name: %{name} +%define version 2.6.0 +%define release 11 +Version: %{version} +Release: %{release}%{?dist} +License: GPL +Group: Networking/Daemons +Source: %{name}-%{version}.tar.xz + +BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot +Requires: cvm >= 0.97 +#Requires: daemontools +Requires: e-smith-lib >= 1.13.1-90 +BuildArchitectures: noarch +BuildRequires: e-smith-devtools +AutoReqProv: no + +%description +Module for supervising cvm auth daemon + +%changelog +* Wed Jul 12 2023 cvs2git.sh aka Brian Read 2.6.0-11.sme +- Roll up patches and move to git repo [SME: 12338] + +* Wed Jul 12 2023 BogusDateBot +- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday, + by assuming the date is correct and changing the weekday. + +* Thu May 26 2022 Jean-Philippe Pialasse 2.6.0-10.sme +- fix error compressing log still in use by delaying it [SME: 11968] + +* Tue Mar 08 2022 Jean-Philippe Pialasse 2.6.0-9.sme +- reverting to release 7 state [SME: 11885] + +* Tue Mar 08 2022 John Crisp 2.6.0-8.sme +- Add yum action to restart post install [SME: 11885] + +* Tue Mar 08 2022 Jean-Philippe Pialasse 2.6.0-7.sme +- bump requirement for cvm [SME: 11885] + removing daemontools requirement + +* Fri Feb 18 2022 Jean-Philippe Pialasse 2.6.0-6.sme +- expand rsyslog.conf [SME: 11807] + +* Thu Feb 17 2022 Jean-Philippe Pialasse 2.6.0-5.sme +- redirect and rotate log for cvm-unix [SME: 11807] + fix cvm-pre script permission + +* Tue Dec 14 2021 Jean-Philippe Pialasse 2.6.0-4.sme +- fix service stopping restarting on crash [SME: 11792] + +* Mon Jan 11 2021 Jean-Philipe Pialasse 2.6.0-3.sme +- fix typo [SME: 11314] + +* Fri Jan 08 2021 Jean-Philipe Pialasse 2.6.0-2.sme +- migrate to systemd [SME: 11314] +- add update event [SME: 11125] + +* Fri Feb 5 2016 Daniel Berteaud 2.6.0-1.sme +- Roll new stream for sme10 + +* Thu Feb 7 2013 Shad L. Lords 2.4.0-1.sme +- Roll new stream for sme9 + +* Tue Oct 7 2008 Shad L. Lords 2.2.0-1.sme +- Roll new stream to separate sme7/sme8 trees [SME: 4633] + +* Sun Apr 29 2007 Shad L. Lords +- Clean up spec so package can be built by koji/plague + +* Thu Dec 07 2006 Shad L. Lords +- Update to new release naming. No functional changes. +- Make Packager generic + +* Thu Mar 16 2006 Gordon Rowell 1.2.0-01 +- Roll stable stream version. [SME: 1016] + +* Mon Jan 2 2006 Gordon Rowell 1.1.0-04 +- Delete preun scriptlet which required supervise-scripts and + tried to stop/remove the imap service [SME: 348] + +* Wed Nov 30 2005 Gordon Rowell 1.1.0-03 +- Bump release number only + +* Wed May 4 2005 Charlie Brady +- [1.1.0-02] +- Update cvm calling sequence, for later version of cvm. + +* Wed May 4 2005 Charlie Brady +- [1.1.0-01] +- Changing version to development stream number - 1.1.0 + +* Thu Jun 26 2003 Charlie Brady +- [1.0.0-01] +- Change to stable stream version number - 1.0.0 + +* Wed Jun 4 2003 Charlie Brady +- [0.0.1-05] +- Use create-system-user to create cvmlog user. [charlieb 6033] + +* Fri Apr 18 2003 Charlie Brady +- [0.0.1-04] +- Move socket to a private directory, and change its + pathname. [charlieb 587] + +* Wed Apr 16 2003 Charlie Brady +- [0.0.1-03] +- Change cvmlog userid to 1003, and change error exit to warning. + [charlieb 6033] + +* Fri Mar 21 2003 Charlie Brady +- [0.0.1-02] +- Add cvmlog user and cvm log directory [charlieb 587] + +* Wed Mar 19 2003 Charlie Brady +- [0.0.1-01] +- Initial + +%prep +%setup +rm -rf root/var/service + +%build +perl createlinks + +%install +rm -rf $RPM_BUILD_ROOT +(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) +mkdir -p $RPM_BUILD_ROOT/var/lib/cvm +mkdir -p $RPM_BUILD_ROOT/var/log/cvm +mkdir -p $RPM_BUILD_ROOT/usr/lib/systemd/system/sme-server.target.wants +/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ + --file /sbin/e-smith/systemd/cvm-unix-pre 'attr(0554,root,root)' \ + --dir /var/lib/cvm 'attr(0755,root,root)' \ + --dir /var/log/cvm 'attr(0750,cvmlog,cvmlog)' \ + > %{name}-%{version}-%{release}-filelist + + +%pre +/sbin/e-smith/create-system-user cvmlog 1003 'cvm output log user' /var/log/imap /bin/false +if [ $1 -gt 1 ] ; then + if [ -e /var/service/cvm-unix-local/run ] ; then + /usr/bin/sv d cvm-unix-local + /usr/bin/sv d cvm-unix-local/log + fi +fi + +%preun + +%clean +rm -rf $RPM_BUILD_ROOT + +%files -f %{name}-%{version}-%{release}-filelist +%defattr(-,root,root) + + diff --git a/root/etc/e-smith/db/configuration/defaults/cvm-unix/access b/root/etc/e-smith/db/configuration/defaults/cvm-unix/access new file mode 100644 index 0000000..2fbb50c --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/cvm-unix/access @@ -0,0 +1 @@ +localhost diff --git a/root/etc/e-smith/db/configuration/defaults/cvm-unix/status b/root/etc/e-smith/db/configuration/defaults/cvm-unix/status new file mode 100644 index 0000000..86981e6 --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/cvm-unix/status @@ -0,0 +1 @@ +enabled diff --git a/root/etc/e-smith/db/configuration/defaults/cvm-unix/type b/root/etc/e-smith/db/configuration/defaults/cvm-unix/type new file mode 100644 index 0000000..24e1098 --- /dev/null +++ b/root/etc/e-smith/db/configuration/defaults/cvm-unix/type @@ -0,0 +1 @@ +service diff --git a/root/etc/e-smith/db/configuration/migrate/cvm-unix b/root/etc/e-smith/db/configuration/migrate/cvm-unix new file mode 100644 index 0000000..a6b784f --- /dev/null +++ b/root/etc/e-smith/db/configuration/migrate/cvm-unix @@ -0,0 +1,7 @@ +{ + my $cvm = $DB->get_prop('cvm-unix', 'status'); + return unless defined $cvm; + $DB->set_prop('cvm-unix', 'status', 'enabled') unless $cvm eq "enabled"; + +} + diff --git a/root/etc/e-smith/templates/etc/rsyslog.conf/32cvm b/root/etc/e-smith/templates/etc/rsyslog.conf/32cvm new file mode 100644 index 0000000..049362c --- /dev/null +++ b/root/etc/e-smith/templates/etc/rsyslog.conf/32cvm @@ -0,0 +1,4 @@ +#cvm +:programname, startswith, "cvm" /var/log/cvm/cvm.log +& stop + diff --git a/root/etc/e-smith/templates/etc/systemd/system-preset/49-koozali.preset/80-cvm-unix b/root/etc/e-smith/templates/etc/systemd/system-preset/49-koozali.preset/80-cvm-unix new file mode 100644 index 0000000..f8b0f95 --- /dev/null +++ b/root/etc/e-smith/templates/etc/systemd/system-preset/49-koozali.preset/80-cvm-unix @@ -0,0 +1,3 @@ + +enable cvm-unix.service + diff --git a/root/etc/logrotate.d/cvm b/root/etc/logrotate.d/cvm new file mode 100644 index 0000000..b6a36df --- /dev/null +++ b/root/etc/logrotate.d/cvm @@ -0,0 +1,13 @@ +/var/log/cvm/*.log { + create 640 root root + notifempty + daily + rotate 28 + missingok + compress + delaycompress + postrotate + /usr/bin/systemctl restart cvm-unix + endscript +} + diff --git a/root/sbin/e-smith/systemd/cvm-unix-pre b/root/sbin/e-smith/systemd/cvm-unix-pre new file mode 100644 index 0000000..d4c5ab3 --- /dev/null +++ b/root/sbin/e-smith/systemd/cvm-unix-pre @@ -0,0 +1,10 @@ +#!/bin/sh + +/sbin/e-smith/config show cvm-unix 1>/dev/null || /sbin/e-smith/config set cvm-unix service status enabled + +status=$(/sbin/e-smith/config getprop cvm-unix status) + +if [ "$status" != "enabled" ] +then + /sbin/e-smith/config setprop cvm-unix status disabled +fi diff --git a/root/usr/lib/systemd/system/cvm-unix.service b/root/usr/lib/systemd/system/cvm-unix.service new file mode 100644 index 0000000..3c987ba --- /dev/null +++ b/root/usr/lib/systemd/system/cvm-unix.service @@ -0,0 +1,20 @@ +[Unit] +Description=Credential Validation Modules +Before=sme-server.target network.target network-pre.target + +[Service] +Type=simple +User=root +Group=root +Restart=always +RestartSec=.5 +StartLimitInterval=0 +StartLimitBurst=0 +ExecStartPre=-/sbin/e-smith/systemd/cvm-unix-pre +ExecStart=/usr/bin/cvm-unix cvm-local:/var/lib/cvm/cvm-unix-local.socket +ExecStopPost=-/sbin/e-smith/db configuration setprop cvm-unix status enabled +TimeoutSec=0 + +[Install] +WantedBy=sme-server.target + diff --git a/root/usr/lib/systemd/system/sme-server.target.d/52koozali.conf b/root/usr/lib/systemd/system/sme-server.target.d/52koozali.conf new file mode 100644 index 0000000..990ca3e --- /dev/null +++ b/root/usr/lib/systemd/system/sme-server.target.d/52koozali.conf @@ -0,0 +1,2 @@ +[Unit] +Wants=cvm-unix.service diff --git a/root/var/.gitignore b/root/var/.gitignore new file mode 100644 index 0000000..e69de29