Compare commits
No commits in common. "c8" and "c10s" have entirely different histories.
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
15
.gitignore
vendored
15
.gitignore
vendored
@ -1 +1,14 @@
|
||||
SOURCES/tlog-14.tar.gz
|
||||
/tlog-2.tar.gz
|
||||
/tlog-3.tar.gz
|
||||
/tlog-4.tar.gz
|
||||
/tlog-5.tar.gz
|
||||
/tlog-6.tar.gz
|
||||
/tlog-7.tar.gz
|
||||
/tlog-8.tar.gz
|
||||
/tlog-9.tar.gz
|
||||
/tlog-10.tar.gz
|
||||
/tlog-11.tar.gz
|
||||
/tlog-12.tar.gz
|
||||
/tlog-12.1.tar.gz
|
||||
/tlog-13.tar.gz
|
||||
/tlog-14.tar.gz
|
||||
|
7
gating.yaml
Normal file
7
gating.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
# recipients: jstephen, spoore, aborah
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-10
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
1
sources
Normal file
1
sources
Normal file
@ -0,0 +1 @@
|
||||
SHA512 (tlog-14.tar.gz) = 593d0d845b6b10de33094658160fb6d675d7f07493e5e3a84b20ea26154c56bb1f75a85805468bc061f0a14e305f6c2140e56e6cfa8e94d9849387d47f674ccd
|
11
tests/full_tests.yml
Normal file
11
tests/full_tests.yml
Normal file
@ -0,0 +1,11 @@
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-basic
|
||||
tags:
|
||||
- classic
|
||||
tests:
|
||||
- tlogtests:
|
||||
dir: scripts
|
||||
run: ./run_tests.sh
|
||||
required_packages:
|
||||
- git
|
8
tests/plans/all.fmf
Normal file
8
tests/plans/all.fmf
Normal file
@ -0,0 +1,8 @@
|
||||
summary: Run gating tests
|
||||
discover:
|
||||
how: fmf
|
||||
dist-git-source: true
|
||||
dist-git-type: centos
|
||||
|
||||
execute:
|
||||
how: tmt
|
5
tests/provision.fmf
Normal file
5
tests/provision.fmf
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
standard-inventory-qcow2:
|
||||
qemu:
|
||||
m: 4G
|
||||
smp: cpus=4,sockets=4,maxcpus=16
|
6
tests/scripts/main.fmf
Normal file
6
tests/scripts/main.fmf
Normal file
@ -0,0 +1,6 @@
|
||||
summary: Run tlog tier1 tests
|
||||
require:
|
||||
- git
|
||||
- tlog
|
||||
test: ./run_tests.sh -m tier1
|
||||
duration: 30m
|
28
tests/scripts/run_tests.sh
Executable file
28
tests/scripts/run_tests.sh
Executable file
@ -0,0 +1,28 @@
|
||||
#!/bin/bash -x
|
||||
|
||||
RETVAL=0
|
||||
|
||||
dnf -y install expect beakerlib make restraint-rhts
|
||||
|
||||
. /usr/share/beakerlib/beakerlib.sh
|
||||
if rlIsRHEL '>=9'; then
|
||||
dnf --enablerepo rhel-buildroot install python3-pytest -y
|
||||
fi
|
||||
|
||||
# RHEL10 cloud-init disables password authentication
|
||||
# tlog tests need this to run currently
|
||||
cat > /etc/ssh/sshd_config.d/00-tlog-override.conf <<EOF
|
||||
PasswordAuthentication yes
|
||||
EOF
|
||||
chmod 600 /etc/ssh/sshd_config.d/00-tlog-override.conf
|
||||
systemctl restart sshd
|
||||
|
||||
git clone https://github.com/Scribery/tlog.git
|
||||
pushd tlog/src/tlitest
|
||||
./tlitest-setup
|
||||
./tlitest-run --junit-xml=/tmp/artifacts/junit.xml $*
|
||||
#./teltest-teardown
|
||||
RETVAL=$(( RETVAL + $? ))
|
||||
popd
|
||||
|
||||
exit $RETVAL
|
12
tests/tests.yml
Normal file
12
tests/tests.yml
Normal file
@ -0,0 +1,12 @@
|
||||
- hosts: localhost
|
||||
roles:
|
||||
- role: standard-test-basic
|
||||
tags:
|
||||
- classic
|
||||
tests:
|
||||
- tlogtests:
|
||||
dir: scripts
|
||||
run: ./run_tests.sh -m tier1
|
||||
required_packages:
|
||||
- git
|
||||
|
@ -1,25 +1,80 @@
|
||||
%global _hardened_build 1
|
||||
|
||||
%if 0%{?rhel} && 0%{?rhel} < 7
|
||||
# If it's RHEL6 and older
|
||||
%bcond_with systemd
|
||||
%else
|
||||
%bcond_without systemd
|
||||
%endif
|
||||
|
||||
%if "%{_vendor}" == "debbuild"
|
||||
# Set values to make debian builds work well
|
||||
%global _defaultdocdir /usr/share/doc/%{name}
|
||||
%global _buildshell /bin/bash
|
||||
%global _lib lib/%(%{__dpkg_architecture} -qDEB_HOST_MULTIARCH)
|
||||
%endif
|
||||
|
||||
# Compatibility macros
|
||||
%{!?_tmpfilesdir:%global _tmpfilesdir %{_prefix}/lib/tmpfiles.d}
|
||||
%{!?make_build:%global make_build %{__make} %{?_smp_mflags}}
|
||||
|
||||
Name: tlog
|
||||
Version: 14
|
||||
Release: 1%{?dist}
|
||||
Release: 4%{?dist}
|
||||
Summary: Terminal I/O logger
|
||||
|
||||
License: GPLv2+
|
||||
URL: https://github.com/Scribery/%{name}
|
||||
Source: https://github.com/Scribery/%{name}/releases/download/v%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: json-c-devel
|
||||
BuildRequires: curl-devel
|
||||
BuildRequires: m4
|
||||
BuildRequires: libutempter-devel
|
||||
# If it's not RHEL6 and older
|
||||
%if 0%{?rhel} == 0 || 0%{?rhel} >= 7
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: systemd-units
|
||||
%if "%{_vendor}" == "debbuild"
|
||||
# Required for Debian
|
||||
Packager: Justin Stephenson <jstephen@redhat.com>
|
||||
Group: admin
|
||||
License: GPL-2.0+
|
||||
%else
|
||||
Group: Applications/System
|
||||
License: GPL-2.0-or-later
|
||||
%endif
|
||||
Requires(post): sed
|
||||
Requires(postun): sed
|
||||
|
||||
URL: https://github.com/Scribery/%{name}
|
||||
Source0: %{url}/releases/download/v%{version}/%{name}-%{version}.tar.gz
|
||||
Source1: tlog.sysusers
|
||||
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: libtool
|
||||
BuildRequires: m4
|
||||
BuildRequires: gcc
|
||||
BuildRequires: make
|
||||
|
||||
%if "%{_vendor}" == "debbuild"
|
||||
BuildRequires: libjson-c-dev
|
||||
BuildRequires: libcurl4-gnutls-dev
|
||||
BuildRequires: libutempter-dev
|
||||
# Debian/Ubuntu doesn't automatically pull this in...
|
||||
BuildRequires: pkg-config
|
||||
|
||||
%if %{with systemd}
|
||||
BuildRequires: libsystemd-dev
|
||||
# Expanded form of systemd_requires macro
|
||||
Requires: systemd-sysv
|
||||
Requires(preun): systemd
|
||||
Requires(post): systemd
|
||||
Requires(postun): systemd
|
||||
%{?sysusers_requires_compat}
|
||||
%endif
|
||||
|
||||
%else
|
||||
BuildRequires: pkgconfig(json-c)
|
||||
BuildRequires: pkgconfig(libcurl)
|
||||
%if %{defined suse_version}
|
||||
BuildRequires: utempter-devel
|
||||
%else
|
||||
BuildRequires: libutempter-devel
|
||||
%endif
|
||||
|
||||
%if %{with systemd}
|
||||
BuildRequires: pkgconfig(libsystemd)
|
||||
%{?systemd_requires}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%description
|
||||
Tlog is a terminal I/O recording program similar to "script", but used in
|
||||
@ -27,49 +82,31 @@ place of a user's shell, starting the recording and executing the real user's
|
||||
shell afterwards. The recorded I/O can then be forwarded to a logging server
|
||||
in JSON format.
|
||||
|
||||
%global _hardened_build 1
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
%build
|
||||
# If it's not RHEL6 and older
|
||||
%if 0%{?rhel} == 0 || 0%{?rhel} >= 7
|
||||
%configure --disable-rpath --disable-static --enable-utempter
|
||||
# Else, if it's RHEL6 or older
|
||||
%else
|
||||
%configure --disable-rpath --disable-static --disable-journal
|
||||
%endif
|
||||
make %{?_smp_mflags}
|
||||
%configure --disable-rpath --disable-static --enable-utempter %{!?with_systemd:--disable-journal} --docdir=%{_defaultdocdir}/%{name}
|
||||
%make_build
|
||||
|
||||
%check
|
||||
make %{?_smp_mflags} check
|
||||
|
||||
%pre
|
||||
getent group %{name} >/dev/null ||
|
||||
groupadd -r %{name}
|
||||
getent passwd %{name} >/dev/null ||
|
||||
useradd -r -g %{name} -d %{_localstatedir}/run/%{name} -s /sbin/nologin \
|
||||
-c "Tlog terminal I/O logger" %{name}
|
||||
%make_build check
|
||||
|
||||
%install
|
||||
make install DESTDIR=%{buildroot}
|
||||
%make_install
|
||||
rm %{buildroot}/%{_libdir}/*.la
|
||||
|
||||
# Remove development files as we're not doing a devel package yet
|
||||
rm %{buildroot}/%{_libdir}/*.so
|
||||
rm -r %{buildroot}/usr/include/%{name}
|
||||
|
||||
# If it's not RHEL6 and older
|
||||
%if 0%{?rhel} == 0 || 0%{?rhel} >= 7
|
||||
%if %{with systemd}
|
||||
# Create tmpfiles.d configuration for the lock dir
|
||||
mkdir -p %{buildroot}%{_tmpfilesdir}
|
||||
{
|
||||
echo "# Type Path Mode UID GID Age Argument"
|
||||
echo "d /run/%{name} 0755 %{name} %{name}"
|
||||
} > %{buildroot}%{_tmpfilesdir}/%{name}.conf
|
||||
# Create the lock dir
|
||||
mkdir -p %{buildroot}/run
|
||||
install -d -m 0755 %{buildroot}/run/%{name}
|
||||
# Else, if it's RHEL6 or older
|
||||
%else
|
||||
# Create the lock dir
|
||||
@ -77,6 +114,8 @@ rm -r %{buildroot}/usr/include/%{name}
|
||||
install -d -m 0755 %{buildroot}%{_localstatedir}/run/%{name}
|
||||
%endif
|
||||
|
||||
install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/%{name}.conf
|
||||
|
||||
%files
|
||||
%{!?_licensedir:%global license %doc}
|
||||
%license COPYING
|
||||
@ -88,53 +127,103 @@ rm -r %{buildroot}/usr/include/%{name}
|
||||
%{_datadir}/%{name}
|
||||
%{_mandir}/man5/*
|
||||
%{_mandir}/man8/*
|
||||
# If it's not RHEL6 and older
|
||||
%if 0%{?rhel} == 0 || 0%{?rhel} >= 7
|
||||
%config(noreplace) %{_tmpfilesdir}/%{name}.conf
|
||||
%dir %attr(-,%{name},%{name}) /run/%{name}
|
||||
# Else if it's RHEL6 or older
|
||||
%if %{with systemd}
|
||||
%{_tmpfilesdir}/%{name}.conf
|
||||
%else
|
||||
# If it's RHEL6 and older
|
||||
%dir %attr(-,%{name},%{name}) %{_localstatedir}/run/%{name}
|
||||
%endif
|
||||
%dir %{_sysconfdir}/%{name}
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/%{name}-rec.conf
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/%{name}-rec-session.conf
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/%{name}-play.conf
|
||||
%{_sysusersdir}/%{name}.conf
|
||||
|
||||
%pre
|
||||
%sysusers_create_compat %{SOURCE1}
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
%if 0%{?el7} || 0%{?suse_version} >= 1315
|
||||
# For RHEL7 and SUSE Linux distributions, creation doesn't happen automatically
|
||||
%tmpfiles_create %{name}.conf
|
||||
%endif
|
||||
%if 0%{?ubuntu} || 0%{?debian}
|
||||
# For Debian/Ubuntu, creation doesn't happen automatically
|
||||
systemd-tmpfiles --create %{name}.conf >/dev/null 2>&1 || :
|
||||
%endif
|
||||
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
|
||||
%changelog
|
||||
* Wed Feb 07 2024 Justin Stephenson <jstephen@redhat.com> - 14-1
|
||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 14-4
|
||||
- Bump release for October 2024 mass rebuild:
|
||||
Resolves: RHEL-64018
|
||||
|
||||
* Mon Jul 01 2024 Justin Stephenson <jstephen@redhat.com> - 14-3
|
||||
- Bump release to validate gating
|
||||
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 14-2
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
* Tue Feb 06 2024 Justin Stephenson <jstephen@redhat.com> - 14-1
|
||||
- Release v14
|
||||
- configure: correctly handle systemd versions before 245
|
||||
|
||||
* Mon Apr 17 2023 Justin Stephenson <jstephen@redhat.com> - 13-1
|
||||
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 13-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 13-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Fri Jul 14 2023 Justin Stephenson <jstephen@redhat.com> - 13-2
|
||||
- Provide a sysusers.d file to get user() and group() provides
|
||||
(see https://fedoraproject.org/wiki/Changes/Adopting_sysusers.d_format).
|
||||
|
||||
* Fri Apr 14 2023 Justin Stephenson <jstephen@redhat.com> - 13-1
|
||||
- Release v13
|
||||
- Update the Fedora license
|
||||
- MAN: Add missing comma in tlog-rec-session.conf
|
||||
|
||||
* Mon May 23 2022 Justin Stephenson <jstephen@redhat.com> - 12.1
|
||||
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 12.1-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 12.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Wed Apr 20 2022 Justin Stephenson <jstephen@redhat.com> - 12.1
|
||||
- Exit transfer loop when output fd is closed
|
||||
- Revert "Prevent infinite transfer loop on GDM login"
|
||||
|
||||
* Wed Nov 17 2021 Justin Stephenson <jstephen@redhat.com> - 12-1
|
||||
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 12-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Tue Nov 16 2021 Justin Stephenson <jstephen@redhat.com> - 12-1
|
||||
- Release v12
|
||||
- Prevent infinite transfer loop on GDM login.
|
||||
- tlog-play: add journal namespace support.
|
||||
- tlitest: extend delay for limit-action delay test.
|
||||
|
||||
* Tue Apr 27 2021 Justin Stephenson <jstephen@redhat.com> - 11-1
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Sat Jul 10 2021 Björn Esser <besser82@fedoraproject.org> - 11-3
|
||||
- Rebuild for versioned symbols in json-c
|
||||
|
||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 11-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Tue Jan 19 2021 Justin Stephenson <jstephen@redhat.com> - 11-1
|
||||
- Release v11
|
||||
- Fire SIGCHLD after utempter_add_record since it probably eats it.
|
||||
|
||||
* Fri Jan 8 2021 Justin Stephenson <jstephen@redhat.com> - 10-1
|
||||
- Release v10
|
||||
- Correct suse rpmbuild
|
||||
- Update debbuild for travis CI
|
||||
|
||||
* Thu Oct 15 2020 Justin Stephenson <jstephen@redhat.com> - 9-2
|
||||
- Skip utmp removal with piped IO on stdin
|
||||
|
||||
* Thu Oct 15 2020 Justin Stephenson <jstephen@redhat.com> - 9-1
|
||||
* Tue Oct 13 2020 Justin Stephenson <jstephen@redhat.com> - 9-1
|
||||
- Release v9
|
||||
- Add libutempter support
|
||||
- Require journal match filter
|
||||
@ -143,18 +232,27 @@ rm -r %{buildroot}/usr/include/%{name}
|
||||
- Add "time" real clock timestamp message field
|
||||
- Various upstream CI improvements
|
||||
|
||||
* Tue May 26 2020 Justin Stephenson <jstephen@redhat.com> - 8-2
|
||||
- Test fixups from v8
|
||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 8-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Thu May 21 2020 Justin Stephenson <jstephen@redhat.com> - 8-1
|
||||
* Fri May 22 2020 Justin Stephenson <jstephen@redhat.com> - 8-2
|
||||
- Minor test fixups
|
||||
|
||||
* Tue May 19 2020 Justin Stephenson <jstephen@redhat.com> - 8-1
|
||||
- Release v8
|
||||
- Spec file fixes for EL6
|
||||
- Spec file improvements for Debian/Ubuntu pkg-config
|
||||
- Tlog-play improve authentication options
|
||||
- Handle piped in I/O from stdin and improve the main recording transfer exit
|
||||
condition.
|
||||
- Handle piped in I/O from stdin and improve the main recording
|
||||
transfer exit condition.
|
||||
- Use empty string on hostname resolution failure
|
||||
|
||||
* Tue Apr 21 2020 Björn Esser <besser82@fedoraproject.org> - 7-3
|
||||
- Rebuild (json-c)
|
||||
|
||||
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 7-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Tue Nov 12 2019 Justin Stephenson <jstephen@redhat.com> - 7-1
|
||||
- Release v7
|
||||
- Allow tlog-play redirection of stdout
|
2
tlog.sysusers
Normal file
2
tlog.sysusers
Normal file
@ -0,0 +1,2 @@
|
||||
u tlog - "Tlog terminal I/O logger" /run/tlog /sbin/nologin
|
||||
g tlog -
|
Loading…
Reference in New Issue
Block a user