diff --git a/.gitignore b/.gitignore index e69de29..9bc0c25 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,20 @@ +/retrace-server-1.0.tar.gz +/retrace-server-1.1.tar.gz +/retrace-server-1.2.tar.gz +/retrace-server-1.3.tar.gz +/retrace-server-1.4.tar.gz +/retrace-server-1.5.tar.gz +/retrace-server-1.6.tar.gz +/retrace-server-1.8.tar.gz +/retrace-server-1.9.tar.gz +/retrace-server-1.10.tar.gz +/retrace-server-1.11.tar.gz +/retrace-server-1.12.tar.gz +/retrace-server-1.13.tar.gz +/retrace-server-1.14.tar.gz +/retrace-server-1.15.tar.gz +/retrace-server-1.16.tar.gz +/retrace-server-1.17.0.tar.gz +/retrace-server-1.18.0.tar.gz +/retrace-server-1.19.0.tar.gz +/retrace-server-1.20.0.tar.gz diff --git a/0001-retrace-server-worker-Correct-import-of-ArgumentPars.patch b/0001-retrace-server-worker-Correct-import-of-ArgumentPars.patch new file mode 100644 index 0000000..6953005 --- /dev/null +++ b/0001-retrace-server-worker-Correct-import-of-ArgumentPars.patch @@ -0,0 +1,29 @@ +From 3762f8ce5b36db9748d96f8f77144a006a9f4d22 Mon Sep 17 00:00:00 2001 +From: Martin Kutlak +Date: Wed, 30 Oct 2019 16:12:44 +0100 +Subject: [PATCH] retrace-server-worker: Correct import of ArgumentParser + +The custom ArgumentParser has a `_log` attribute. + +Signed-off-by: Martin Kutlak +--- + src/retrace-server-worker | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/retrace-server-worker b/src/retrace-server-worker +index 97f7939..a77d8ff 100755 +--- a/src/retrace-server-worker ++++ b/src/retrace-server-worker +@@ -1,8 +1,7 @@ + #!/usr/bin/python3 + import sys + import os +-from argparse import ArgumentParser +- ++from retrace.argparser import ArgumentParser + from retrace.retrace import (log_debug, + log_error, + log_warn, +-- +2.24.1 + diff --git a/0002-retrace_worker-Fix-file-mode-to-write-to-file.patch b/0002-retrace_worker-Fix-file-mode-to-write-to-file.patch new file mode 100644 index 0000000..f06b5e1 --- /dev/null +++ b/0002-retrace_worker-Fix-file-mode-to-write-to-file.patch @@ -0,0 +1,30 @@ +From 9c37cd5cf52d2124e45e09c800170b36dd241872 Mon Sep 17 00:00:00 2001 +From: Martin Kutlak +Date: Wed, 30 Oct 2019 16:06:43 +0100 +Subject: [PATCH] retrace_worker: Fix file mode to write to file + +Introduced in 9e79d410d9b5a882fa3770f24b78f930def9ab29 + +The default file mode used to be "write" but it was changed to write raw bytes. + +Signed-off-by: Martin Kutlak +--- + src/retrace/retrace_worker.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/retrace/retrace_worker.py b/src/retrace/retrace_worker.py +index cc98138..2ac8f6e 100644 +--- a/src/retrace/retrace_worker.py ++++ b/src/retrace/retrace_worker.py +@@ -563,7 +563,7 @@ class RetraceWorker(object): + + task.set_backtrace(backtrace) + if exploitable is not None: +- task.add_results("exploitable", exploitable) ++ task.add_results("exploitable", exploitable, mode="w") + + self.hook_post_retrace() + +-- +2.24.1 + diff --git a/0003-retrace_worker-Remove-distro-hack-from-mock-config.patch b/0003-retrace_worker-Remove-distro-hack-from-mock-config.patch new file mode 100644 index 0000000..50c5b9d --- /dev/null +++ b/0003-retrace_worker-Remove-distro-hack-from-mock-config.patch @@ -0,0 +1,85 @@ +From aba277baf04346ea21d22adbeb97ab62d9a49c65 Mon Sep 17 00:00:00 2001 +From: Martin Kutlak +Date: Fri, 1 Nov 2019 15:04:59 +0100 +Subject: [PATCH] retrace_worker: Remove distro hack from mock config + +Introduced in 5a1e21a0f6ca8174a88f4eaf37887100e0ec311b + +As `dnf` is now available on both RHEL(7,8) and Fedora (and with the `--skip-broken` switch support), +we can remove the `distro` "hack". + +Signed-off-by: Martin Kutlak +--- + retrace-server.spec.in | 1 - + src/retrace/retrace_worker.py | 19 +++++-------------- + 2 files changed, 5 insertions(+), 15 deletions(-) + +diff --git a/retrace-server.spec.in b/retrace-server.spec.in +index 5f5bbea..3b8d033 100644 +--- a/retrace-server.spec.in ++++ b/retrace-server.spec.in +@@ -40,7 +40,6 @@ Requires: python3-webob + Requires: python3-magic + Requires: python3-requests + Requires: python3-requests-gssapi +-Requires: python3-distro + Requires: python3-bugzilla + Requires: python3-six + Requires: python3-dnf +diff --git a/src/retrace/retrace_worker.py b/src/retrace/retrace_worker.py +index 2ac8f6e..82748ac 100644 +--- a/src/retrace/retrace_worker.py ++++ b/src/retrace/retrace_worker.py +@@ -9,7 +9,6 @@ import shutil + import stat + from subprocess import Popen, PIPE, STDOUT + +-import distro + from .retrace import (ALLOWED_FILES, INPUT_PACKAGE_PARSER, REPO_PREFIX, REQUIRED_FILES, + STATUS, STATUS_ANALYZE, STATUS_BACKTRACE, STATUS_CLEANUP, + STATUS_FAIL, STATUS_INIT, STATUS_STATS, STATUS_SUCCESS, +@@ -473,20 +472,14 @@ class RetraceWorker(object): + # create mock config file + try: + repopath = os.path.join(CONFIG["RepoDir"], releaseid) +- linux_dist = distro.linux_distribution(full_distribution_name=False) + with open(os.path.join(task.get_savedir(), RetraceTask.MOCK_DEFAULT_CFG), "w") as mockcfg: + mockcfg.write("config_opts['root'] = '%d'\n" % task.get_taskid()) + mockcfg.write("config_opts['target_arch'] = '%s'\n" % arch) +- mockcfg.write("config_opts['chroot_setup_cmd'] = '") +- if linux_dist[0] == "fedora": +- mockcfg.write("--setopt=strict=0") +- else: +- mockcfg.write("--skip-broken") ++ mockcfg.write("config_opts['chroot_setup_cmd'] = '--skip-broken") + mockcfg.write(" install %s abrt-addon-ccpp shadow-utils %s rpm'\n" % (" ".join(packages), + self.plugin.gdb_package)) +- mockcfg.write("config_opts['releasever'] = '%s'\n" % linux_dist[1]) +- if linux_dist[0] == "fedora": +- mockcfg.write("config_opts['package_manager'] = 'dnf'\n") ++ mockcfg.write("config_opts['releasever'] = '%s'\n" % version) ++ mockcfg.write("config_opts['package_manager'] = 'dnf'\n") + mockcfg.write("config_opts['plugin_conf']['ccache_enable'] = False\n") + mockcfg.write("config_opts['plugin_conf']['yum_cache_enable'] = False\n") + mockcfg.write("config_opts['plugin_conf']['root_cache_enable'] = False\n") +@@ -725,15 +718,13 @@ class RetraceWorker(object): + + try: + cfgfile = os.path.join(cfgdir, RetraceTask.MOCK_DEFAULT_CFG) +- linux_dist = distro.linux_distribution(full_distribution_name=False) + with open(cfgfile, "w") as mockcfg: + mockcfg.write("config_opts['root'] = '%d-kernel'\n" % task.get_taskid()) + mockcfg.write("config_opts['target_arch'] = '%s'\n" % kernelver.arch) + mockcfg.write("config_opts['chroot_setup_cmd'] = 'install bash coreutils cpio " + "crash findutils rpm shadow-utils'\n") +- mockcfg.write("config_opts['releasever'] = '%s'\n" % linux_dist[1]) +- if linux_dist[0] == "fedora": +- mockcfg.write("config_opts['package_manager'] = 'dnf'\n") ++ mockcfg.write("config_opts['releasever'] = '%s'\n" % kernelver_str) ++ mockcfg.write("config_opts['package_manager'] = 'dnf'\n") + mockcfg.write("config_opts['plugin_conf']['ccache_enable'] = False\n") + mockcfg.write("config_opts['plugin_conf']['yum_cache_enable'] = False\n") + mockcfg.write("config_opts['plugin_conf']['root_cache_enable'] = False\n") +-- +2.24.1 + diff --git a/0004-r-s-reposync-Replace-old-way-of-cmp-with-key.patch b/0004-r-s-reposync-Replace-old-way-of-cmp-with-key.patch new file mode 100644 index 0000000..5dd488a --- /dev/null +++ b/0004-r-s-reposync-Replace-old-way-of-cmp-with-key.patch @@ -0,0 +1,37 @@ +From 4e1a2f749b560e09a07328f013ba07bc68707df8 Mon Sep 17 00:00:00 2001 +From: Martin Kutlak +Date: Mon, 6 Jan 2020 14:00:36 +0100 +Subject: [PATCH] r-s-reposync: Replace old way of cmp with key + +See: +https://docs.python.org/3/library/functools.html#functools.cmp_to_key + +Signed-off-by: Martin Kutlak +--- + src/retrace-server-reposync | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/retrace-server-reposync b/src/retrace-server-reposync +index 457a4e1..22761cd 100755 +--- a/src/retrace-server-reposync ++++ b/src/retrace-server-reposync +@@ -11,6 +11,7 @@ import tempfile + import rpm + import dnf + ++from functools import cmp_to_key + from subprocess import Popen, PIPE, call + + from retrace.retrace import (get_canon_arch, +@@ -173,7 +174,7 @@ def clean_rawhide_repo(release): + for package in packages: + pkgcnt = len(packages[package]) + if pkgcnt > CONFIG["KeepRawhideLatest"]: +- vers = sorted(packages[package].keys(), cmp=vercmp) ++ vers = sorted(packages[package].keys(), key=cmp_to_key(vercmp)) + i = 0 + for ver in vers: + for filename in packages[package][ver]: +-- +2.24.1 + diff --git a/retrace-server.spec b/retrace-server.spec new file mode 100644 index 0000000..8c08002 --- /dev/null +++ b/retrace-server.spec @@ -0,0 +1,431 @@ +Summary: Application for remote coredump analysis +Name: retrace-server +Version: 1.20.0 +Release: 1%{?dist} +License: GPLv2+ +URL: https://github.com/abrt/retrace-server +Source0: https://github.com/abrt/%{name}/archive/%{version}/%{name}-%{version}.tar.gz + +%if 0%{?fedora} >= 29 +# There are Python plugins in /usr/share/retrace-server/plugins +%global _python_bytecompile_extra 0 +%endif + +# Patches to be applied: +Patch0001: 0001-retrace-server-worker-Correct-import-of-ArgumentPars.patch +Patch0002: 0002-retrace_worker-Fix-file-mode-to-write-to-file.patch +Patch0003: 0003-retrace_worker-Remove-distro-hack-from-mock-config.patch +Patch0004: 0004-r-s-reposync-Replace-old-way-of-cmp-with-key.patch + +BuildArch: noarch + +BuildRequires: git-core + +BuildRequires: intltool +BuildRequires: libtool +BuildRequires: texinfo +BuildRequires: asciidoc +BuildRequires: xmlto +BuildRequires: lsof +BuildRequires: python3-six +BuildRequires: python3-devel + +Requires: rsync +Requires: mock >= 1.4.7 +Requires: xz +Requires: gzip +Requires: bzip2 +Requires: tar +Requires: p7zip +Requires: unzip +Requires: lzop +Requires: lsof +Requires: elfutils +Requires: createrepo_c +Requires: python3-mod_wsgi +Requires: python3-webob +Requires: python3-magic +Requires: python3-requests +Requires: python3-requests-gssapi +Requires: python3-bugzilla +Requires: python3-six +Requires: python3-dnf +Requires: python3-hawkey +Requires: mod_ssl +Requires: sqlite +Requires: crash >= 5.1.7 +Requires: wget +Requires: kexec-tools +%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= 27) +Requires(preun): /sbin/install-info +Requires(post): /sbin/install-info +%endif +Requires(post): /usr/bin/crontab + +Obsoletes: abrt-retrace-server < 2.0.3 +Provides: abrt-retrace-server = 2.0.3 + +%description +The retrace server provides a coredump analysis and backtrace +generation service over a network using HTTP protocol. + +%prep +%autosetup -S git + +%build +autoconf +%configure +%make_build + +%install +%make_install + +# Remove byte-compiled python files generated by automake. +# automake uses system's python for all *.py files, even +# for those which needs to be byte-compiled with different +# version (python2/python3). +# rpm can do this work and use the appropriate python version. +find %{buildroot} -name "*.py[co]" -delete + +mkdir -p %{buildroot}%{_localstatedir}/cache/%{name} +mkdir -p %{buildroot}%{_localstatedir}/cache/%{name}/kernel +mkdir -p %{buildroot}%{_localstatedir}/cache/%{name}/download +mkdir -p %{buildroot}%{_localstatedir}/log/%{name} +mkdir -p %{buildroot}%{_localstatedir}/spool/%{name} +mkdir -p %{buildroot}%{_datadir}/%{name} + +%if 0%{?fedora} >= 29 +%py_byte_compile %{__python3} %{buildroot}%{_datadir}/%{name}/plugins +%endif + +rm -f %{buildroot}%{_infodir}/dir + +%{find_lang} %{name} + +%pre +#retrace uid/gid reserved in setup, rhbz #706012 +%define retrace_gid_uid 174 +getent group retrace > /dev/null || groupadd -f -g %{retrace_gid_uid} --system retrace +getent passwd retrace > /dev/null || useradd --system -g retrace -u %{retrace_gid_uid} -d %{_datadir}/%{name} -s /sbin/nologin retrace +exit 0 + +%post +%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= 27) +/sbin/install-info %{_infodir}/%{name} %{_infodir}/dir 2> /dev/null || : +%endif +/usr/sbin/usermod -a -G mock retrace 2> /dev/null || : + +if [ "$1" = 1 ] +then +#add disabled crontab entries to retrace's crontab + %define retrace_crontab_entry0 "# 0 * * * * /usr/bin/retrace-server-cleanup >> /var/log/retrace-server/cleanup_error.log 2>&1" + %define retrace_crontab_entry1 "#0 0,12 * * * /usr/bin/retrace-server-reposync fedora 15 i386 >> /var/log/retrace-server/reposync_error.log 2>&1" + %define retrace_crontab_entry2 "#0 2,14 * * * /usr/bin/retrace-server-reposync fedora 15 x86_64 >> /var/log/retrace-server/reposync_error.log 2>&1" + %define retrace_crontab_entry3 "#0 4,16 * * * /usr/bin/retrace-server-reposync fedora 16 i386 >> /var/log/retrace-server/reposync_error.log 2>&1" + %define retrace_crontab_entry4 "#0 6,18 * * * /usr/bin/retrace-server-reposync fedora 16 x86_64 >> /var/log/retrace-server/reposync_error.log 2>&1" + %define retrace_crontab_entry5 "#0 8,20 * * * /usr/bin/retrace-server-reposync fedora rawhide i386 >> /var/log/retrace-server/reposync_error.log 2>&1" + %define retrace_crontab_entry6 "#0 10,22 * * * /usr/bin/retrace-server-reposync fedora rawhide x86_64 >> /var/log/retrace-server/reposync_error.log 2>&1" + + (crontab -u retrace -l 2> /dev/null; echo %{retrace_crontab_entry0}; \ + echo %{retrace_crontab_entry1}; echo %{retrace_crontab_entry2}; \ + echo %{retrace_crontab_entry3}; echo %{retrace_crontab_entry4}; \ + echo %{retrace_crontab_entry5}; echo %{retrace_crontab_entry6};) | crontab -u retrace - 2> /dev/null +fi + +%preun +if [ "$1" = 0 ] +then +%if (0%{?rhel} && 0%{?rhel} <= 7) || (0%{?fedora} && 0%{?fedora} <= 27) + /sbin/install-info --delete %{_infodir}/retrace-server %{_infodir}/dir 2> /dev/null || : +%endif +#comment entries in retrace's crontab + (crontab -u retrace -l 2> /dev/null | sed "s,^\([^#].*\)$,#\1,g") | crontab -u retrace - 2> /dev/null +fi + +%files -f %{name}.lang +%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}-httpd.conf +%config(noreplace) %{_sysconfdir}/%{name}.conf +%config(noreplace) %{_sysconfdir}/logrotate.d/%{name} +%dir %attr(0755,retrace,retrace) %{_localstatedir}/cache/%{name} +%dir %attr(0755,retrace,retrace) %{_localstatedir}/cache/%{name}/kernel +%dir %attr(0755,retrace,retrace) %{_localstatedir}/cache/%{name}/download +%dir %attr(0750,retrace,retrace) %{_localstatedir}/log/%{name} +%dir %attr(0770,retrace,retrace) %{_localstatedir}/spool/%{name} +%{_bindir}/%{name}-worker +%{_bindir}/%{name}-interact +%{_bindir}/%{name}-cleanup +%{_bindir}/%{name}-reposync +%{_bindir}/%{name}-reposync-faf +%{_bindir}/%{name}-plugin-checker +%{_bindir}/%{name}-task +%{_bindir}/%{name}-bugzilla-refresh +%{_bindir}/%{name}-bugzilla-query +%{_bindir}/coredump2packages +%{python3_sitelib}/retrace/ +%{_datadir}/%{name}/ +%doc %{_mandir}/man1/%{name}-cleanup.1* +%doc %{_mandir}/man1/%{name}-interact.1* +%doc %{_mandir}/man1/%{name}-reposync.1* +%doc %{_mandir}/man1/%{name}-worker.1* +%doc %{_mandir}/man1/%{name}-task.1* +%doc %{_infodir}/%{name}* +%doc README.md +%license COPYING + +%changelog +* Tue Jan 21 2020 Martin Kutlak 1.20.0-1 +- Update spec +- Add patches +- Bump Fedora Release in Dockerfile +- retrace_worker: Use kernelver_str var +- retrace_worker: Remove unused variables +- retrace: Remove unused variable +- retrace: Use converted integer value +- retrace: Remove unsused variable +- pylint: Fix wrong indentations +- pylint W0702: Fix-up bare exceptions +- pylint: Fix spacing issues +- Remove Python2/Python3 compatibility code +- pylint E713: Test for membership should be ‘not in’ +- retrace: Refactor asterisk imports of retrace +- Translation updates +- Add new translation languages - tr +- Add transtalations from Fedora Zanata +- Remove workdir functionality +- retrace-server-interact: Fix undefined self var +- retrace: Fix undefined vmcore variable +- Fix typos +- Fix typos and minor grammar issues +- Switch to requests-gssapi +- create: Fix strip_extra_pages() invocation +- plugins: Add el8 to versionlist +- plugins: Add plugin for CentOS +- plugins: Update fedora versionlist +- plugins: Update devtoolset version +- stats: Display whole release version +- Use sys.exit instead of exit for retrace-server commands +- Move makedumpfile logic from download_remote into start_vmcore +- Move prepare_debuginfo to KernelVMcore +- Remove call to prepare_debuginfo from retrace-server-interact +- Move get_kernel_release to KernelVMcore +- Move strip_vmcore to KernelVMcore.strip_extra_pages +- Add KernelVMcore.has_extra_pages method +- Move get_vmcore_dump_level to KernelVMcore.get_dump_level +- Handle 'flattened' vmcore format by converting with makedumpfile +- Pass 'results' directory to hook script rather than task_dir. +- Rename 'misc' methods and subdirectory to 'results'. +- delete: Fix typo in function name +- Clean up handling of mock with x86 vmcores in x86_64 environments +- Remove bt_filter from retrace-server +- Remove excess post-retrace crash commands +- Make retrace-server-cleanup more resilient to non-existent tasks +- retrace: Allow tilde in package names +- spec: Use macros instead of environment variables +- Fix module extraction from kernel-debuginfo +- Move ProcessCommunicateTimeout inside run_crash_cmdline +- Move run_crash_cmdline from RetraceWorker to RetraceTask +- Fix backtrace of bt_filter on Python3 +- Remove 'utf-8' encoding for run_crash_cmd and change related functions. +- Refactor crash commands run after prepare_debuginfo into run_crash_cmdline helper +- worker: Add string formatting for provided arguments +- worker: Remove unused function +- worker: Use log_error function to log errors +- Fix runaway crash processes due to either corrupted vmcore memory or files. +- Fix backtrace when updating bugzillano from web UI due to use of basestring + +* Thu Oct 03 2019 Miro Hrončok - 1.19.0-5 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 1.19.0-4 +- Rebuilt for Python 3.8 + +* Fri Jul 26 2019 Fedora Release Engineering - 1.19.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sat Feb 02 2019 Fedora Release Engineering - 1.19.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Aug 28 2018 Martin Kutlak 1.19.0-1 +- docker: Allow building local changes +- docker: Introduce docker +- spec: Require Python3 pkgs of dnf and hawkey +- retrace: Check result of get_nevra_possibilities +- r-s-reposync-faf: Convert generator to list +- spec: Add BuildRequire python3-devel +- r-s-reposync-faf: Generate repo using createrepo_c +- httpd-conf: Set WSGIApplicationGroup to %{GLOBAL} +- r-s-reposync: Use default number of workers +- dnf-comp: Replace yum.misc lib with one from dnf +- py3-comp: Distinguish string and byte values in POST +- py3-comp: Specify encoding for Popen +- py3-comp: Use parentheses for print +- py3-comp: Encode response body as a bytestring +- py3-comp: Convert regexps strings to raw strings +- Migrate retrace-server to python3 +- Implement splitFilename function using dnf +- Replace yum with DNF +- Correct syntax for gdb backtrace command +- Refactoring: Too long lines, missing whitespaces +- Add has_coredump() method to RetraceTask and upate get_md5_tasks() +- Modify get_md5_tasks to skip tasks with no vmcores or invalid md5sum files +- Add 'has_vmcore' method to RetraceTask +- spec: Bytecompile r-s plugins explicitly +- spec: Remove automake byte-compiled files +- spec: Correct the file ownership +- do not require install-info on F28+ +- Adjust indentation according to pylint recommendation +- py3 compatibility: Replace filter function with a list equivalent +- py3 compatibility: Adjust urllib, urllib2 and urlparse +- Fix missing sys import +- Clean up of unused imports +- py3 compatibility: Adjust imports +- py3 compatibility: Resolution of range and xrange +- py3 compatibility: Replace ConfigParser module with configparser +- py3 compatibility: Classic division +- py3 compatibility: Adjust raise statement syntax +- py3 compatibility: Replace StringIO module with io module +- py3 compatibility: Removal of tuple parameter unpacking +- Refactoring: Missing or bad whitespace +- py3 compatibility: Set literals +- py3 compatibility: Use 'sorted' built-in function +- py3 compatibility: Replacement of basestring with six.string_types +- py3 compatibility: Ensure map function to return a list +- py3 compatibility: Replacement of 'has_key' with 'in' +- Make r-s-bugzilla-query query options configurable +- Load credentials from custom file +- manager: Make the bugzillano a clickable link +- Query the remaining bugzilla statuses +- retrace: Add reset_age method +- Implement retrace-server-bzquery tool +- Implement retrace-server-bugzilla-refresh tool +- Implement bugzilla field +- py3 compatibility: Octal literals +- py3 compatibility: try-except statement +- py3 compatibility: print statement is replaced with a print() function +- For vmcores that fail crash but have a large enough kernel log, try --minimal +- Set md5sum as soon as possible. +- Add dedup_vmcore to RetraceWorker and call from retrace-server-cleanup +- Fail task if the crash sys command exits with non-zero and kernellog is small +- Fix typo in exception handling of get_kernel_release +- Set default signal handler for SIGPIPE before calling Popen on 'crash --osrelease' +- Improve vmcore kernel parsing for certain scenarios and limit file scanning +- autogen: correctly parse buildrequires from spec file +- spec: Do not:x show every single change + +* Sat Jul 14 2018 Fedora Release Engineering - 1.18.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 1.18.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Feb 01 2018 Matej Marusak 1.18.0-1 +- mark license as license +- Update Python 2 dependency declarations to new packaging standards +- defattr is not needed as this is default +- use standard python_sitelib macro +- remove old changelog entries +- we do not build for el6 any more +- remove group +- Remove duplicate RetraceWorker._fail call when start_vmcore fails +- Add md5sum and kernelver to email notifications, help text to failing notification +- Convert notify_email_success and notify_email_fail to a single method +- Create notify_email_success / notify_email_fail helpers +- Enable packages with epoch +- Update to new mock +- Set kernelver and vmlinux as soon as possible +- reposync: Cleanup is not done by default in createrepo +- Explicitly state python version in shebangs +- Fix unreadable crash subdirectory when tarball is submitted without group read permissions +- Try noarch when checking for package +- Add pylintrc +- Use dnf in mock config on Fedora +- Update mock config for new mock version +- Pylint updates +- Add commandline client +- Add aliases into FAF reposync +- Cleanup tmp FAF repository after failing +- Write coresize for vmcores +- Change error message +- Fix wrong html tag +- Set zero to non-existing type of tasks +- Fix typeo in manager.wsgi which creates a backtrace on non-ftp tasks. +- Bump version of gettext +- Change path for README.md +- Fix problem with missing modules on kernel versions with cached vmlinux files. +- No first retrace time when no existing task +- Make the reposync tool more verbose if required + +* Thu Mar 30 2017 Matej Marusak 1.17.0-1 +- Enable creating releases with makefile +- Introduce gen-version +- Do not use fedorahosted.org as source +- Include md5sum of original archive in summary page +- Do not try to get default time when ftptask +- Fix character escape typo +- Change retrace-server httpd config +- Modify search for existing vmlinux files in cache to handle older kernel-debuginfos +- Default to hex mode for crash commands involving backtraces. +- Create directories for tests if they are not present +- Don't mention old wiki page +- Fix double call of _fail method +- Update README +- Allow any compression of man pages +- Autogen without args configures for debugging +- Run 'configure' at the end of 'autogen' +- Improve autogen to list and install dependencies +- Avoid circular dependency on kernel-debuginfo for vmlinux files already in cache +- Add plugin checking action +- Update documentation of plugin in README +- Use short form rhel when creating repository +- Fix methods arguments +- Move global variables to config.py.in +- Recover from missing start/finish task files +- Change error message in cleanup script +- Add '-ascending' argument to gdb +- Use devtoolset-4-gdb when used on RHEL +- Enable creating repository from faf repository +- Add 'make check' +- Correct eu-unstrip parser if FILE is . +- Not mark packages with different architectures as duplicity +- Separate worker start_retrace method +- Add class to wrap plugins accessing +- Add class to wrap configuration file reading +- Delete python labels when no python backtrace available +- Git ignore bytecode +- Add python backtrace, source and locals into backtrace +- Move src/lib to src/retrace to make testing retrace-server easier +- Add "exploitable" into LocationMatch in the httpd.conf +- Fix invalid syntax error in sys.stderr.print() + +* Thu Jun 2 2016 Jakub Filak - 1.16-1 +- Log failed to start tasks +- Gracefully handle the worker errors +- Move the FTP query operation to an AJAX operation +- Fix duplicate email if a vmcore task fails to determine the kernel version +- Fix typo preventing email notifications from working. +- Correct eu-unstrip parser if FILE is '-' +- Allow package names with Epoch + +* Fri Mar 18 2016 Jakub Filak - 1.15-1 +- Correct paths to Fedora development releases +- Fix small problem with strip_vmcore calling prepare_debuginfo +- Avoid calling prepare_debuginfo from retrace-server-interact after kernel version detection +- Move prepare_debuginfo and strip_vmcore inside RetraceTask +- Add vmlinux file inside RetraceTask +- Fix bt_filter missing last task/PID read if the last line was not blank +- Update the release information to be dynamic based off of plugins +- Including a Red Hat Enterprise Linux plugin +- Mock logging into retrace task's dir +- Enforce uniform mode bits for almost all RetraceTask files +- Fix incorrect group permissions when writing RetraceServer files especially with interactive mode +- Fix retrace-server-worker --restart backtrace due to unwriteable retrace_log +- Correct license address +- Add VMCoreTask and UsrCoreTask to config + +* Tue Feb 16 2016 Jakub Filak - 1.14-1 +- generated config.py for the target platform at build time +- update URL patterns for Fedora repositories +- spec: add sqlite and cron to requirements +- set "crash" inside get_crash_cmd file if the file does not exist +- fix get_use_mock typo +- use %%global for the nested python_site macro instead of %%define diff --git a/sources b/sources index e69de29..2eb1921 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +SHA512 (retrace-server-1.20.0.tar.gz) = 50f5d1557edda838717c046c476e7f0271d6802f17dd851c3d51585b8b3d7601df3fb90f27c1c6cbe9a6c748ef75a40edaeb4271b06b3c72b766ac41640f7f43