5bb52a7
%if 0%{?rhel} <= 7 && 0%{?rhel} > 0
46bdce2
%global _pkgdocdir %{_docdir}/%{name}-%{version}
46bdce2
%endif
46bdce2
46bdce2
Name:       copr-backend
clime f70a8e6
Version:    1.113
clime a1b4a43
Release:    1%{?dist}
46bdce2
Summary:    Backend for Copr
46bdce2
46bdce2
License:    GPLv2+
clime b43e1c5
URL:        https://pagure.io/copr/copr
46bdce2
# Source is created by
clime b43e1c5
# git clone https://pagure.io/copr/copr.git
46bdce2
# cd copr/backend
46bdce2
# tito build --tgz
46bdce2
Source0: %{name}-%{version}.tar.gz
46bdce2
46bdce2
BuildArch:  noarch
46bdce2
BuildRequires: asciidoc
46bdce2
BuildRequires: libxslt
46bdce2
BuildRequires: util-linux
46bdce2
BuildRequires: systemd
5bb52a7
BuildRequires: redis
5bb52a7
clime a1b4a43
%global __python %{__python3}
clime a1b4a43
BuildRequires: python3-devel
clime a1b4a43
BuildRequires: python3-setuptools
clime a1b4a43
BuildRequires: python3-requests
clime a1b4a43
clime a1b4a43
BuildRequires: python3-pytest
clime a1b4a43
BuildRequires: python3-pytest-cov
clime a1b4a43
BuildRequires: python3-mock
clime a1b4a43
BuildRequires: python3-munch
clime a1b4a43
BuildRequires: python3-lockfile
clime a1b4a43
BuildRequires: python3-daemon
clime a1b4a43
BuildRequires: python3-requests
clime a1b4a43
BuildRequires: python3-setproctitle
clime a1b4a43
BuildRequires: python3-retask
clime a1b4a43
BuildRequires: python3-configparser
clime a1b4a43
BuildRequires: python3-copr
clime a1b4a43
BuildRequires: python3-dateutil
clime a1b4a43
BuildRequires: python3-pytz
clime a1b4a43
BuildRequires: python3-sphinx
clime a1b4a43
BuildRequires: python3-fedmsg
46bdce2
clime a1b4a43
Requires:   ansible
5bb52a7
Requires:   obs-signd
46bdce2
Requires:   lighttpd
46bdce2
Requires:   euca2ools
46bdce2
Requires:   rsync
46bdce2
Requires:   openssh-clients
46bdce2
Requires:   mock
clime a1b4a43
Requires:   createrepo_c
clime a1b4a43
Requires:   python3-munch
clime a1b4a43
Requires:   python3-daemon
clime a1b4a43
Requires:   python3-lockfile
clime a1b4a43
Requires:   python3-requests
clime a1b4a43
Requires:   python3-setproctitle
clime a1b4a43
Requires:   python3-retask
clime a1b4a43
Requires:   python3-copr
clime a1b4a43
Requires:   python3-dateutil
clime a1b4a43
Requires:   python3-pytz
clime a1b4a43
Requires:   python3-netaddr
clime a1b4a43
Requires:   python3-modulemd
clime a1b4a43
Requires:   python3-configparser
clime a1b4a43
Requires:   python3-fedmsg
eb4710d
Requires:   redis
46bdce2
Requires:   logrotate
46bdce2
Requires:   gawk
46bdce2
Requires:   crontabs
5bb52a7
Requires:   prunerepo
clime a1b4a43
Requires:   libappstream-glib-builder
29f9a52
Requires:   rpm-sign
5bb52a7
46bdce2
Requires(post): systemd
46bdce2
Requires(preun): systemd
46bdce2
Requires(postun): systemd
46bdce2
46bdce2
%description
46bdce2
COPR is lightweight build system. It allows you to create new project in WebUI,
46bdce2
and submit new builds and COPR will create yum repository from latest builds.
46bdce2
46bdce2
This package contains backend.
46bdce2
46bdce2
%package doc
46bdce2
Summary:    Code documentation for COPR backend
46bdce2
46bdce2
%description doc
46bdce2
COPR is lightweight build system. It allows you to create new project in WebUI,
46bdce2
and submit new builds and COPR will create yum repository from latests builds.
46bdce2
46bdce2
This package include documentation for COPR code. Mostly useful for developers
46bdce2
only.
46bdce2
46bdce2
%prep
46bdce2
%setup -q
clime a1b4a43
46bdce2
46bdce2
%build
5bb52a7
5bb52a7
%if 0%{?fedora}
46bdce2
# build documentation
5bb52a7
pushd docs
5bb52a7
    make %{?_smp_mflags} html
5bb52a7
    rm build/html/.buildinfo
46bdce2
popd
5bb52a7
%endif # ?fedora
46bdce2
46bdce2
%install
46bdce2
46bdce2
install -d %{buildroot}%{_sharedstatedir}/copr
46bdce2
install -d %{buildroot}%{_sharedstatedir}/copr/jobs
46bdce2
install -d %{buildroot}%{_sharedstatedir}/copr/public_html/results
46bdce2
install -d %{buildroot}%{_pkgdocdir}/lighttpd/
46bdce2
install -d %{buildroot}%{_datadir}/copr/backend
46bdce2
install -d %{buildroot}%{_sysconfdir}/copr
46bdce2
install -d %{buildroot}%{_sysconfdir}/logrotate.d/
46bdce2
install -d %{buildroot}%{_unitdir}
46bdce2
install -d %{buildroot}/%{_var}/log/copr-backend
46bdce2
install -d %{buildroot}/%{_var}/run/copr-backend/
46bdce2
install -d %{buildroot}/%{_tmpfilesdir}
46bdce2
install -d %{buildroot}/%{_sbindir}
46bdce2
install -d %{buildroot}%{_sysconfdir}/cron.daily
5bb52a7
install -d %{buildroot}%{_sysconfdir}/sudoers.d
5bb52a7
install -d %{buildroot}%{_bindir}/
46bdce2
5bb52a7
cp -a copr-backend-service %{buildroot}/%{_sbindir}/
46bdce2
cp -a backend/* %{buildroot}%{_datadir}/copr/backend
5bb52a7
cp -a run/* %{buildroot}%{_bindir}/
5bb52a7
cp -a conf/copr-be.conf.example %{buildroot}%{_sysconfdir}/copr/copr-be.conf
46bdce2
5bb52a7
install -p -m 755 conf/crontab/copr-backend %{buildroot}%{_sysconfdir}/cron.daily/copr-backend
5bb52a7
5bb52a7
cp -a conf/lighttpd/* %{buildroot}%{_pkgdocdir}/lighttpd/
5bb52a7
cp -a conf/logrotate/* %{buildroot}%{_sysconfdir}/logrotate.d/
5bb52a7
cp -a conf/tmpfiles.d/* %{buildroot}/%{_tmpfilesdir}
46bdce2
46bdce2
# for ghost files
clime 6fd0773
touch %{buildroot}%{_var}/log/copr-backend/copr.log
clime 6fd0773
touch %{buildroot}%{_var}/log/copr-backend/prune_old.log
5bb52a7
46bdce2
touch %{buildroot}%{_var}/run/copr-backend/copr-be.pid
46bdce2
clime 8d576cb
cp -a units/*.service %{buildroot}/%{_unitdir}/
5bb52a7
install -m 0644 conf/copr.sudoers.d %{buildroot}%{_sysconfdir}/sudoers.d/copr
5bb52a7
5bb52a7
5bb52a7
install -d %{buildroot}%{_sysconfdir}/logstash.d
5bb52a7
5bb52a7
install -d %{buildroot}%{_datadir}/logstash/patterns/
5bb52a7
cp -a conf/logstash/lighttpd.pattern %{buildroot}%{_datadir}/logstash/patterns/lighttpd.pattern
5bb52a7
46bdce2
46bdce2
#doc
5bb52a7
# cp -a documentation/python-doc %{buildroot}%{_pkgdocdir}/
5bb52a7
cp -a conf/playbooks %{buildroot}%{_pkgdocdir}/
5bb52a7
5bb52a7
install -d %{buildroot}%{_pkgdocdir}/examples/%{_sysconfdir}/logstash.d
5bb52a7
cp -a conf/logstash/copr_backend.conf %{buildroot}%{_pkgdocdir}/examples/%{_sysconfdir}/logstash.d/copr_backend.conf
5bb52a7
5bb52a7
%if 0%{?fedora}
5bb52a7
    cp -a docs/build/html %{buildroot}%{_pkgdocdir}/
5bb52a7
%endif
5bb52a7
5bb52a7
%check
clime a1b4a43
./run_tests.sh
46bdce2
46bdce2
%pre
46bdce2
getent group copr >/dev/null || groupadd -r copr
46bdce2
getent passwd copr >/dev/null || \
46bdce2
useradd -r -g copr -G lighttpd -s /bin/bash -c "COPR user" copr
46bdce2
/usr/bin/passwd -l copr >/dev/null
46bdce2
46bdce2
%post
46bdce2
%systemd_post copr-backend.service
46bdce2
46bdce2
%preun
46bdce2
%systemd_preun copr-backend.service
46bdce2
46bdce2
%postun
46bdce2
%systemd_postun_with_restart copr-backend.service
46bdce2
46bdce2
%files
5bb52a7
%license LICENSE
5bb52a7
5bb52a7
%{_datadir}/copr/*
46bdce2
%dir %{_sharedstatedir}/copr
46bdce2
%dir %attr(0755, copr, copr) %{_sharedstatedir}/copr/jobs/
46bdce2
%dir %attr(0755, copr, copr) %{_sharedstatedir}/copr/public_html/
46bdce2
%dir %attr(0755, copr, copr) %{_sharedstatedir}/copr/public_html/results
46bdce2
%dir %attr(0755, copr, copr) %{_var}/run/copr-backend
clime 6fd0773
%dir %attr(0755, copr, copr) %{_var}/log/copr-backend
46bdce2
clime 6fd0773
%ghost %{_var}/log/copr-backend/*.log
46bdce2
%ghost %{_var}/run/copr-backend/copr-be.pid
46bdce2
46bdce2
%config(noreplace) %{_sysconfdir}/logrotate.d/copr-backend
46bdce2
%dir %{_pkgdocdir}
46bdce2
%doc %{_pkgdocdir}/lighttpd
46bdce2
%doc %{_pkgdocdir}/playbooks
46bdce2
%dir %{_sysconfdir}/copr
46bdce2
%config(noreplace) %attr(0640, root, copr) %{_sysconfdir}/copr/copr-be.conf
5bb52a7
%{_unitdir}/*.service
46bdce2
%{_tmpfilesdir}/copr-backend.conf
5bb52a7
%{_bindir}/*
5bb52a7
%{_sbindir}/*
5bb52a7
46bdce2
%config(noreplace) %{_sysconfdir}/cron.daily/copr-backend
5bb52a7
%{_datadir}/logstash/patterns/lighttpd.pattern
46bdce2
5bb52a7
5bb52a7
%config(noreplace) %attr(0600, root, root)  %{_sysconfdir}/sudoers.d/copr
46bdce2
46bdce2
%files doc
5bb52a7
%license LICENSE
5bb52a7
%doc
5bb52a7
# %{_pkgdocdir}/python-doc
5bb52a7
%{_pkgdocdir}/
46bdce2
%exclude %{_pkgdocdir}/lighttpd
46bdce2
%exclude %{_pkgdocdir}/playbooks
46bdce2
46bdce2
%changelog
clime f70a8e6
* Fri Feb 23 2018 clime <clime@redhat.com> 1.113-1
clime f70a8e6
- original builder deprecation
clime f70a8e6
- remove Group tag
clime f70a8e6
clime 94d16c9
* Mon Feb 19 2018 clime <clime@redhat.com> 1.112-1
clime 94d16c9
- Shebangs cleanup
clime 94d16c9
- escapes in changelogs
clime 94d16c9
clime a1b4a43
* Sun Feb 18 2018 clime <clime@redhat.com> 1.111-1
clime a1b4a43
- use netaddr instead of IPy module
clime a1b4a43
- sleep after each load_jobs iteration
clime a1b4a43
- python3 conversion
clime a1b4a43
- UMB: adding content type
clime a1b4a43
- add source_status field for Builds
clime a1b4a43
- generate module artifacts rpms
clime a1b4a43
- the rsync log is actually renderred directly into result dir now
clime a1b4a43
- mockchain.log renamed to backend.log
clime a1b4a43
- pg#192 missing records in mockchain.log
clime a1b4a43
- enable running tests in spec file
clime a1b4a43
- enable and update vmmamanger tests, fix three minor bugs in the
clime a1b4a43
  manager
clime a1b4a43
- frontend now presents the whole job queue state to
clime a1b4a43
  backend
clime a1b4a43
- copy only module builds into the repo directory
3ad32d6
clime f53a74c
* Wed Dec 20 2017 clime <clime@redhat.com> 1.110-1
clime f53a74c
- exception handling for hit counting when IP address cannot be parsed
clime f53a74c
clime bd162df
* Mon Dec 18 2017 Dominik Turecek <dturecek@redhat.com> 1.109-1
clime bd162df
- terminate also 'in_use' builders if health checks have failed
clime bd162df
- make --detached the last arg for copr-rpmbuild
clime bd162df
- update copr_log_hitcounter to check ip against ignored pattern
clime bd162df
- new msg bus options 
clime bd162df
- disable DNF makecache timer/service
clime bd162df
- fix message duplication for multi-bus scenario
clime bd162df
clime bd162df
* Thu Nov 16 2017 Miroslav Suchý <msuchy@redhat.com> 1.108-1
clime bd162df
- optimize createrepo_c
clime bd162df
- Revert "[backend] remove --ignore-lock from createrepo_c"
clime bd162df
clime ab2a570
* Thu Nov 09 2017 clime <clime@redhat.com> 1.107-1
clime ab2a570
- kill all processes in copr-rpmbuild's process group
clime ab2a570
- add --drop-resultdir switch to copr-rpmbuild call
clime ab2a570
- release_vm immediately after VM is no longer needed
clime ab2a570
- remove --ignore-lock from createrepo_c
clime ab2a570
clime a5f3768
* Wed Oct 18 2017 clime <clime@redhat.com> 1.106-1
clime a5f3768
- run copr-rpmbuild with --verbose option
clime a5f3768
clime f17c10e
* Wed Sep 27 2017 clime <clime@redhat.com> 1.105-1
clime f17c10e
- remove uneeded yum dep
clime f17c10e
clime 00fb390
* Tue Sep 26 2017 clime <clime@redhat.com> 1.104-1
clime 00fb390
- update copr-rpmbuild command for the new options
clime 00fb390
- change arguments to build_id and chroot
clime 00fb390
- #128 AppStream data collection vetoes addons
clime 00fb390
- fix rpm download stats collection
clime 00fb390
- module-stuff update
clime 00fb390
clime 09760de
* Fri Sep 15 2017 clime <clime@redhat.com> 1.103-1
clime 09760de
- update fedora image version to 26
clime 09760de
- fixes for recent code
clime 09760de
clime 803cb36
* Thu Sep 07 2017 clime <clime@redhat.com> 1.102-1
clime 803cb36
- srpms are now being built from upstream on builders
52e6c83
clime 50b7454
* Wed Jun 14 2017 clime <clime@redhat.com> 1.101-1
clime 50b7454
- remove unused helpers.run_ssh + function spacing fixup
clime 50b7454
- cancel-build action fix
clime 50b7454
clime d873117
* Fri Jun 09 2017 clime <clime@redhat.com> 1.100-1
clime d873117
- extend check for a builder package present on a builder machine
clime d873117
- arbitrary dist-git branching
clime d873117
- remove --add-cache-id from appstream-builder call, see Bug 1426166
clime d873117
- change to using a standalone builder package
clime d873117
clime ad2533d
* Wed May 03 2017 clime <clime@redhat.com> 1.99-1
clime ad2533d
- missing on_success_build call added back to sign packages and recreate repo after each build
clime ad2533d
clime ad2533d
* Mon Apr 24 2017 clime <clime@redhat.com> 1.98-1
clime ad2533d
- Bug 1444804 - Logs are not present for failed builds
clime ad2533d
clime b43e1c5
* Wed Apr 19 2017 clime <clime@redhat.com> 1.97-1
clime b43e1c5
- do not condrestart optional logstash service
clime b43e1c5
- standalone builder option
clime b43e1c5
- build reattaching after copr-backend(-build) service restart
clime b43e1c5
- live mockchain log
clime b43e1c5
- use openssh instead of paramiko
clime b43e1c5
- update cleanup_vm_nova script
clime b43e1c5
- remove buggy logging
clime b43e1c5
- removed Sphinx as a dependency...
clime b43e1c5
- verbose log everything we have about failed playbook
clime b43e1c5
- replace fedorahosted links
clime b43e1c5
- make systemd services out of ActionDispatcher and BuildDispatcher
clime b43e1c5
clime 0868c0e
* Thu Jan 26 2017 clime <clime@redhat.com> 1.96-1
clime 0868c0e
- Fixes for building COPR Backend and Dist-git on EL7
clime 0868c0e
- simplified/improved logging of exceptions mainly
clime 0868c0e
- don't use sha256 checksum for rhel-5* repos, too
clime 0868c0e
- drop mentions of the max_builds_per_vm optoin
clime 0868c0e
- switched usage of deprecated ansible Runner for python-paramiko module
clime 0868c0e
- os_nova filter plugin fixed for python-novaclient 3
clime 0868c0e
- support for STOMP msg buses
clime 0868c0e
- fix Bug 1402689 regarding job cancellation
clime 0868c0e
- jobgrab service is no more
clime 0868c0e
- respect 'do_sign' option when forking
clime 0868c0e
- fix buildroot_cmd for rhel mock profiles
clime 0868c0e
clime 8d576cb
* Thu Dec 01 2016 clime <clime@redhat.com> 1.95-1
clime 8d576cb
- use buildroot_pkgs substitution type according to job.chroot
clime 8d576cb
- use timeout command to respect timeout param coming from frontend
clime 8d576cb
- don't ship unitfiles in %%bindir
clime 8d576cb
- move createrepo to the end of the rawhide_to_release handler
clime 8d576cb
- modulemd 1.0.2 compatibility
clime 8d576cb
- Bug 1397119 - Error reading SSH protocol banner
clime 8d576cb
- added auto-prune project's option
clime 8d576cb
- Bug 1086139 - [RFE] provide UI to cancel a build
clime 8d576cb
- Fix misleading debug statement
clime 8d576cb
- fix exception logging in ensure_dir_exists helper
clime 8d576cb
- Fix chroot_setup_cmd regex for custom chroot
clime 8d576cb
clime db8fcc0
* Mon Sep 19 2016 clime <clime@redhat.com> 1.94-1
clime db8fcc0
- also provide default version and release for generated modules.json
clime db8fcc0
clime db8fcc0
* Mon Sep 19 2016 clime <clime@redhat.com> 1.93-1
clime db8fcc0
- fix NameError: global name 'result' is not defined
clime db8fcc0
- fix exception logging
clime db8fcc0
- Modularity support
clime db8fcc0
- Bug 1357564 - RFE: allow downloading of mock profiles (reproducible builds)
clime db8fcc0
- "safer" exception handling for actions
clime db8fcc0
clime 344c551
* Mon Aug 15 2016 clime <clime@redhat.com> 1.92-1
clime 344c551
- wrap feedback about actions to frontend into try-except
clime 344c551
- log even the traceback from forking
clime 344c551
- use makedirs instead of mkpath in fork action
clime 344c551
- if anything bad happens, log exception in generate_gpg_key action
clime 344c551
- also restart copr-backend-vmm and copr-backend-log when (re)installing
clime 344c551
- Bug 1361344 - RFE: Allow denial of build deletion and resubmitting at project or group level
clime 344c551
- catch errors in fork action
clime 344c551
- set action result for comps.xml and module_md.yaml file deletion
clime 344c551
- backend fork action now takes care of new gpg-key generation instead of frontend
clime 344c551
- removed no longer supported --api-version=0.8 arg from appstream-builder command line
clime 344c551
- specify module_md as module type
clime 344c551
- fix saving comps.xml and module_md.yaml into empty copr (with no build)
clime 344c551
- module_md.yaml is added to repodata now similarly to appstream.xml
clime 344c551
- support for generation of module dist tags
clime 344c551
- module_md.yaml uploading for a chroot
clime 344c551
- simplified build and action task workflow
clime 344c551
- use copy of the mock (chroot) config, not the original in /etc/mock/
clime 344c551
clime 6fd0773
* Wed Jun 22 2016 Miroslav Suchý <msuchy@redhat.com> 1.91-1
clime 6fd0773
- configure more packages to run pylint
clime 803cb36
- terminate machine which was only partially spawned
clime 6fd0773
- [copr-prune-results] do not sys.exit if prunerepo returns non-zero status,
clime 6fd0773
  just raise an exception
clime 6fd0773
- more of log file migration
clime 6fd0773
- claim /var/log/copr-backend in %%files
clime 6fd0773
- adjust log path in runtime files
clime 6fd0773
- update conf file log path directives
clime 6fd0773
- change logdir to /var/log/copr-backend/
clime 6fd0773
clime 6fd0773
* Fri May 27 2016 Miroslav Suchý <msuchy@redhat.com> 1.90-1
clime 6fd0773
- do not use --log-dir in appstream-builder
clime 6fd0773
1fb3336
* Tue May 24 2016 Miroslav Suchý <miroslav@suchy.cz> 1.89-1
1fb3336
- use correct conditional in requires
1fb3336
6673d5a
* Mon May 23 2016 Miroslav Suchý <msuchy@redhat.com> 1.88-1
6673d5a
- backend: change logstash requires to soft requires
6673d5a
- 1336360 - allow custom chroots
6673d5a
6673d5a
* Fri May 13 2016 Miroslav Suchý <msuchy@redhat.com> 1.87-1
6673d5a
- workaround for BZ 1334200
6673d5a
- more info in logs by default
6673d5a
- print seconds just as int
6673d5a
- unsign gpg from forked packages before signing them with new key
6673d5a
- sign forked packages @TODO We need to delsign them first
6673d5a
6673d5a
* Fri May 06 2016 Miroslav Suchý <msuchy@redhat.com> 1.86-1
6673d5a
- more info in logs by default
6673d5a
- unsign gpg from forked packages before signing them with new key
6673d5a
29f9a52
* Thu May 05 2016 Miroslav Suchý <msuchy@redhat.com> 1.85-1
29f9a52
- also be tolerant about sign/unsign failures on particular rpm
29f9a52
- just log errors (exception) during particular copr fixing, do not
29f9a52
  interrupt the whole process
29f9a52
- added additional check on copr path existence into copr_fix_gpg.py
29f9a52
- allow sudo /usr/bin/rpm for `copr` user
29f9a52
- look into build dirs (subdirs of a chroot) for rpms to be re-signed
29f9a52
- on F24+ use just ansible
29f9a52
- Run rpm-sign with sudo when unsigning
29f9a52
- script to fix gpg keys & rpm signatures
29f9a52
- define functions for deleting gpg signatures from packages
29f9a52
- removed temporary mock workaround from Dockerfile (no
29f9a52
  longer needed)
29f9a52
e89d932
* Thu Apr 28 2016 Miroslav Suchý <msuchy@redhat.com> 1.84-1
e89d932
- Bug 1327996 - config_opts['use_host_resolv'] is not set back to
e89d932
  True if it was False before
e89d932
e89d932
* Fri Apr 22 2016 Miroslav Suchý <msuchy@redhat.com> 1.83-1
e89d932
- run createrepo on forked project (RhBug: 1329076)
e89d932
- Bug 1327852 - /usr/bin/check_consecutive_build_fails.py errors
e89d932
- we need to stick to ansible1.9
e89d932
- more escaping
e89d932
- prunning down testresults :)
e89d932
- a few unittests for copr_prune_results.py script
e89d932
- unit test "fixes"
e89d932
- fix error when forking into existing project
e89d932
- (mockremote): improve chroot_setup_cmd replacement for EL-5
e89d932
- copr_prune_results.py - python path fix
e89d932
- Bug 1324514 - copr createrepo error messages - fix for errors of
e89d932
  type one
e89d932
- Bug 1324514 - copr createrepo error messages - fix for errors of
e89d932
  type 2
e89d932
5bb52a7
* Thu Mar 24 2016 Jakub Kadlčík <jkadlcik@redhat.com> 1.82-1
5bb52a7
- use timeout variable from config
5bb52a7
5bb52a7
* Mon Mar 14 2016 Jakub Kadlčík <jkadlcik@redhat.com> 1.81-1
5bb52a7
- support project forking
5bb52a7
- support building from PyPI
5bb52a7
- support for redis_host, redis_port, redis_db config options
5bb52a7
- dockerized-backend project moved under backend/docker
5bb52a7
- run createrepo in rawhide_to_release
5bb52a7
- specify rawhide name when calling rawhide_to_release
5bb52a7
5bb52a7
* Fri Jan 29 2016 Miroslav Suchý <msuchy@redhat.com> 1.80-1
clime 803cb36
- do not fail when when you receive job with architecture which does not have
5bb52a7
  queue
5bb52a7
- fix 1260780 - Build fails after successful package generation -
5bb52a7
  just add a log error message pointing to an rsync log
5bb52a7
- jobgrabcontrol.py/retask misuse fix
5bb52a7
- "localhost-targeted" spawn and terminate playbooks added for testing
5bb52a7
- [frontend]implement rawhide to release feature First create new
5bb52a7
  chroots:     python manage.py create_chroot fedora-24-i386 fedora-24-x86_64
5bb52a7
- abstraction above [BE <-> JG <-> Builders] channels
5bb52a7
- don't traceback backend if frontend is not yet up&running
5bb52a7
- do not preserve user and group when rsyncing
5bb52a7
5bb52a7
* Wed Dec 23 2015 Miroslav Suchý <msuchy@redhat.com> 1.79-1
5bb52a7
- fix packaging issues in epel-7+
5bb52a7
5bb52a7
* Mon Nov 16 2015 Miroslav Suchý <miroslav@suchy.cz> 1.78-1
5bb52a7
- handle_generate_gpg_key skips key creation when signing is disabled
5bb52a7
- Added test_handle_generate_gpg_key
5bb52a7
- fixed failing tests
5bb52a7
- show when createrepo is waiting for lock
5bb52a7
- do not block builds when processing too much actions
5bb52a7
5bb52a7
* Fri Nov 06 2015 Miroslav Suchý <msuchy@redhat.com> 1.77-1
5bb52a7
- we need to have recent python-copr
5bb52a7
- create copr-backend-service script to handle all copr services
5bb52a7
- [backend] fix not starting job_grab
5bb52a7
5bb52a7
* Tue Oct 13 2015 Miroslav Suchý <msuchy@redhat.com> 1.76-1
5bb52a7
- createrepo action run infinitely when applied to
5bb52a7
  deleted project
5bb52a7
5bb52a7
* Mon Sep 21 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.75-1
5bb52a7
- [backend] run copr-backend-log service before other components
5bb52a7
5bb52a7
* Mon Sep 21 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.74-1
clime 803cb36
- [backend] add executable bit to run/copr_run_job_grab.py
5bb52a7
5bb52a7
* Mon Sep 21 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.73-1
5bb52a7
- added context manager `local_file_logger`
5bb52a7
- eliminated global multiprocessing.Lock
5bb52a7
- split backend daemon: extracted RedisLogHandler, JobGrab, VMM
5bb52a7
- replace python-bunch with python-munch
5bb52a7
- added comps.xml support
5bb52a7
5bb52a7
* Tue Aug 04 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.72-1
5bb52a7
- support new results naming in the build deletion action
5bb52a7
- fix BuildJob.results_dir; eliminated MockRemote.pkg_dest_path
5bb52a7
- using package name and versiong given in the build task; cleanup;
5bb52a7
- handle error's caused by failure to obtain srpm from dist-git
5bb52a7
- repairing test for newest changes
5bb52a7
- rsync update + several fixes
5bb52a7
- building from dist git
5bb52a7
- fix vm spawn check: spawner count child processes per build group;
5bb52a7
5bb52a7
* Wed Jul 01 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.71-1
5bb52a7
- add small script to print queues
5bb52a7
- AppData supproted
5bb52a7
- copy mockchain and rsync logs to resdir (RhBug:1221519)
5bb52a7
- note which modules still stops us from migrating to python3
5bb52a7
5bb52a7
* Mon Jun 15 2015 Miroslav Suchý <msuchy@redhat.com> 1.70-1
5bb52a7
- alter vm_name= regexp
5bb52a7
- polishing Bug 1195867 - Move or delete logs when rebuilding failed
5bb52a7
  build.
5bb52a7
- backup only info and log files
5bb52a7
- have just one backup directory per results directory
5bb52a7
- clean results from previous build
5bb52a7
- alter IP= regexp
5bb52a7
- disabled appdata until fixed
5bb52a7
- unable appdata in createrepo
5bb52a7
- more safe VmMaster.check_one_vm_for_dead_builder function
5bb52a7
- adding support for AppData
5bb52a7
- new requirement form AppData support
5bb52a7
- createrepo_unsafe now returns only STDOUT and raise exception on
5bb52a7
  errors
5bb52a7
5bb52a7
* Mon Jun 01 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.69-1
5bb52a7
- removed creation of symlinks for log.gz
5bb52a7
- catch exception during Worker.can_start_job
5bb52a7
- config cleanup
5bb52a7
5bb52a7
* Thu May 28 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.68-1
5bb52a7
- [backend] add config option for VM health check timeout
5bb52a7
- [backend] moved config parameters from Threshold class into the backend
5bb52a7
  config file
5bb52a7
5bb52a7
* Thu May 21 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.67-1
5bb52a7
- [backend] Handle unexpected exception VmMaster::check_one_vm_for_dead_builder
5bb52a7
5bb52a7
* Thu May 21 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.66-1
5bb52a7
- [backend] fix race condition in check for dead worker
5bb52a7
5bb52a7
* Wed May 20 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.65-1
5bb52a7
- [backend] Rescheduling unfinished builds before stop
5bb52a7
- fix indentation
5bb52a7
- [backend] request frontend to reschedule old unfinished builds at startup
5bb52a7
- [backend] update sytemd unit: removed obsolete
5bb52a7
  EnviromentFile=/home/copr/cloud/ec2rc.variable directive
5bb52a7
5bb52a7
* Tue May 19 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.64-1
5bb52a7
- [backend] check for aux process state and restart if needed
5bb52a7
5bb52a7
* Fri May 15 2015 Miroslav Suchý <msuchy@redhat.com> 1.63-1
5bb52a7
- BR python-sphinx
5bb52a7
5bb52a7
* Fri May 15 2015 Miroslav Suchý <msuchy@redhat.com> 1.62-1
5bb52a7
- [backend] small cleanup, need more tests
5bb52a7
5bb52a7
* Fri May 15 2015 Miroslav Suchý <msuchy@redhat.com> 1.61-1
5bb52a7
- [backend] notify job_grab to remove job from added when start_job failed
5bb52a7
- [backend] [vmm] terminate VM with state IN_USE only when builder process is
5bb52a7
  missed
5bb52a7
- [backend] bugfix VMM.get_all_vm_in_group : VM could be removed before load
5bb52a7
  occures
5bb52a7
- [backend] job_grab: postpone build is we already serving more builds
5bb52a7
  than`max_vm_per_user` option
5bb52a7
- [backend] fix build logging
5bb52a7
- [backend] defer sending job to worker if job owner acquired too much VMs
5bb52a7
- [backend] replaced Thresholds.dirty_vm_terminating_timeout with config option
5bb52a7
  vm_dirty_terminating_timeout
5bb52a7
- [backend] Thread's doesn't have a pid
5bb52a7
- [backend] vm manage: user threading instead of multiprocessing
5bb52a7
- [backend] VMM aware cleunup_vm_nova
5bb52a7
- [backend] moving to nginx to serve results. lighttpd couldnt server pre-
5bb52a7
  compressed properly
5bb52a7
- [backend] script to clean up erred and forgotten VM's using python-novaclient
5bb52a7
- [backend] new documentation
5bb52a7
- [backend] repaired unittests
5bb52a7
- [backend] updated builder playbooks
5bb52a7
- [backend] updated example spawn playbook
5bb52a7
- [backend] don't provide logstash config directly, add only example to
5bb52a7
  documentation
5bb52a7
- [backend] do logging from multiply processes through redis pubsub; some fixes
5bb52a7
  to VM-management
5bb52a7
- [image_builder] initial release, due to OS bug, we cannot create snapshot
5bb52a7
  after provision through API, need to do it manually in the WebUI.
5bb52a7
- [backend] tests cleanup
5bb52a7
- [backend] ensure that prune script running under the copr user; simpler
5bb52a7
  `copr_find_obsolete_builds`
5bb52a7
- [backend] safer copr_prune_results script,  unittests
5bb52a7
- [backend][frontend] Send for delete action only `src_pkg_name` instead of
5bb52a7
  original URL.
5bb52a7
- [backend] returned script to call createrepo from cli
5bb52a7
- [copr] don't allow acquire VMs that was last checked before server restart.
5bb52a7
- [backend] Added limit to acquire_vm based on VMs used by the same username at
5bb52a7
  the current moment.
5bb52a7
- New python dependencies
5bb52a7
- [backend] run tmp redis-server for tests
5bb52a7
- [backend] Dedicated and more complex management for builder machines.
5bb52a7
  [frontend] Now builds failed due to VM errors reschedulted faster.
5bb52a7
5bb52a7
* Fri Mar 20 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.60-1
5bb52a7
- [backend][spec] start/stop redis server during package build tests
5bb52a7
5bb52a7
* Fri Mar 20 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.59-1
5bb52a7
- [backend][hotfix] 1203753 : don't process delete action if src_pkg is
5bb52a7
  mallformed
5bb52a7
5bb52a7
* Mon Mar 02 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.58-1
5bb52a7
- [rhbz:#1185959] - RFE: Present statistics about project
5bb52a7
  popularity. A few more counters for downloads from backend's result
5bb52a7
  directory.
5bb52a7
- [backend] [rhbz:#1191037] RFE: Include package name and version in fedmsg
5bb52a7
  notification
5bb52a7
- [rhbz:#1091640] RFE: Release specific additional repos
5bb52a7
- [rhbz:#1119300]  [RFE] allow easy add copr repos in using
5bb52a7
  repository lis
5bb52a7
- [backend][frontend] removing code related to multiply source rpms in build.
5bb52a7
  Build.pkgs now expected to have exactly one src.rpm.
5bb52a7
- [copr] backend: script fixes, dropped create_repo cli script
5bb52a7
- more file descriptors on builder
5bb52a7
- [rhbz:#1171796] copr sometimes doesn't delete build from repository
5bb52a7
- [rhbz:#1073333] Record consecutive builds fails to redis. Added
5bb52a7
  script to produce warnings for nagios check from failures recorded to redis.
5bb52a7
- correctly print job representation
5bb52a7
5bb52a7
* Fri Jan 23 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.57-1
5bb52a7
- call correct Worker method on backend termination
5bb52a7
- put gpg pubkey to the project results root dir (one level up from
5bb52a7
  the chroot dir)
5bb52a7
- don't kill Worker from errors during job build
5bb52a7
- [rhbz:#1169782] RFE - Show package "version-release" instead of
5bb52a7
  just "version"
5bb52a7
- [rhbz:#1117446] add a build id tagfile into the package directory
5bb52a7
- Updated unittests to reflect latest changes.
5bb52a7
- builder: use only one log file for rsync per build
5bb52a7
- dispatcher: run terminate_instance safely
5bb52a7
- cleanup example config
5bb52a7
- cleanup mockremote.builder
5bb52a7
- Builder.download don't use Popen+PIPE.communicate with rsync,
5bb52a7
  output redirected to the files.
5bb52a7
- disable networking only when required; python style exception
5bb52a7
  handling in mockremote*; removed run/copr_mockremote
5bb52a7
- test build with disabled networking
5bb52a7
- simplified  mockremote.builder.Builder.check_for_ans_error; new
5bb52a7
  method mockremote.builder.Builder.run_ansible_with_check
5bb52a7
- daemons.dispatched.Worker: don't fail when wrong group_id was
5bb52a7
  provided
5bb52a7
- add vm_ip to worker process title (rhbz: 1182637)
5bb52a7
5bb52a7
* Wed Jan 14 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.56-1
clime 94d16c9
- [backend] [.spec] fix %%files section
5bb52a7
5bb52a7
* Wed Jan 14 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.55-1
5bb52a7
- [backend] [bugfix] set pythonpath in systemd unit to run /usr/bin/copr_be.py
5bb52a7
- [backend] [RHBZ:#1182106] JobGrabber dies when action raises an exception.
5bb52a7
- [backend] Moved scripts into /usr/bin/ Renamed copr{-,_}be.py.
5bb52a7
5bb52a7
* Wed Jan 07 2015 Miroslav Suchý <msuchy@redhat.com> 1.54-1
5bb52a7
- 1179713 - workaround for 1179806
5bb52a7
- run script unbufferred otherwise log is written after full block
5bb52a7
- express that it is n-th projects
5bb52a7
- fix permissions on prune script
5bb52a7
5bb52a7
* Mon Jan 05 2015 Valentin Gologuzov <vgologuz@redhat.com> 1.53-1
5bb52a7
- [backend, frontend] [RHBZ:#1176364] Wrong value for the build timeout.
5bb52a7
5bb52a7
* Mon Dec 15 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.52-1
5bb52a7
- fixed config option `results_baseurl` usage, in mockremote
5bb52a7
5bb52a7
* Fri Dec 12 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.51-1
5bb52a7
- updated BuildRequires; cleanup imports
5bb52a7
- package sign: generate gpg usermail with special symbol
5bb52a7
- bugfix: when dispatcher has vm_ip it shouldn't start new VM;
5bb52a7
- run tests during rpm build
5bb52a7
- minor docstring fix
5bb52a7
5bb52a7
* Wed Dec 10 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.50-1
5bb52a7
- [backend] added option to control ansible ssh transport, changed by default
5bb52a7
  to `paramiko` [frontend] bugfix api create new
5bb52a7
- [backend] removed spawn_vars options, to be able to spawn VMs in advance
5bb52a7
- [backend] unittest for backend.daemons.log
5bb52a7
- [backend] massive refactoring and unittest coverage
5bb52a7
- [backend] backend.sign: discover `keygen_host` from backend config file
5bb52a7
5bb52a7
* Tue Nov 25 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.49-1
5bb52a7
- [backend] small bug in dispatcher
5bb52a7
5bb52a7
* Tue Nov 25 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.48-1
5bb52a7
- bugfixes, disabled debug prints, fixed PEP8 violations
5bb52a7
5bb52a7
* Thu Nov 20 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.47-1
5bb52a7
- refactored mockremote, added  explicit BuildJob class
5bb52a7
- allow to spawn builder in advance
5bb52a7
- copr-prune-repo respects auto_createrepo option
5bb52a7
- bugfix: repeated config reads produced constantly growing lists
5bb52a7
5bb52a7
* Fri Oct 24 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.46-1
5bb52a7
- [backend] added handling of new action type: "createrepo"
5bb52a7
- [backend] added dependency on `python-copr`
5bb52a7
- [backend] added to mockchroot -a /devel/repodata subfolder
5bb52a7
- [backend] new config option to define the public frontend api endpoint
5bb52a7
- [backend] conditional execution of createrepo_c
5bb52a7
- [backend] unittest for Action and minor refactoring
5bb52a7
- [backend] rotate backend.log as well
5bb52a7
5bb52a7
* Thu Sep 18 2014 Miroslav Suchý <msuchy@redhat.com> 1.45-1
5bb52a7
- [backend][keygen] minor fixes/typos
5bb52a7
5bb52a7
* Thu Sep 18 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.44-1
5bb52a7
- [backend] type fix
5bb52a7
5bb52a7
* Thu Sep 18 2014 Valentin Gologuzov <vgologuz@redhat.com> 1.43-1
5bb52a7
- [backend] config parsing: convert fields to proper data type.
5bb52a7
- [backend] added option to disable package signing.
5bb52a7
- [keygen] new component for copr: gpg key generation for package sign
5bb52a7
- [backend] broadcast both submitter and owner to fedmsg
5bb52a7
- [backend] example backend config: changes url protocol to HTTPS.
5bb52a7
5bb52a7
* Mon Aug 25 2014 Adam Samalik <asamalik@redhat.com> 1.42-1
5bb52a7
- [backend] [RHBZ:1128606 ] For rhel-5 builds pass "--checksum md5" to
5bb52a7
  `createrepo_c` command.
5bb52a7
- [backend] fix of builder test
5bb52a7
- [backend] test builder instance after spawning
5bb52a7
- [backend] never give up while spawning an OpenStack VM
5bb52a7
- [backend] worker's log filename correction
5bb52a7
- [backend] task id in worker process' name
5bb52a7
- [backend] async build playbooks
5bb52a7
5bb52a7
* Thu Aug 14 2014 Miroslav Suchý <miroslav@suchy.cz> 1.41-1
5bb52a7
- [backend] fix of fix
5bb52a7
- [backend] couple of fixes
5bb52a7
5bb52a7
* Wed Aug 13 2014 Miroslav Suchý <msuchy@redhat.com> 1.40-1
5bb52a7
- [backend] queue cleaning
5bb52a7
- [backend] experimental build groups for more architectures
5bb52a7
- [backend] fix of a strange beaviour of retask
5bb52a7
- [backend] fedmsg shows submitter instead of project owner
5bb52a7
- [backend] new task queue for workers using retask
5bb52a7
- epel-7 comps workaround is need no more, since CENTOS7 have been released
5bb52a7
5bb52a7
* Tue Jul 22 2014 Miroslav Suchý <msuchy@redhat.com> 1.39-1
5bb52a7
- FrontendCallback prettified
5bb52a7
- Starting state implemented, cancelling fixed
5bb52a7
- [backend] faster skipping
5bb52a7
5bb52a7
* Tue Jul 15 2014 Miroslav Suchý <msuchy@redhat.com> 1.38-1
5bb52a7
- [backend] built pkgs fix
72b8aca
eb4710d
* Tue Jul 15 2014 Miroslav Suchý <msuchy@redhat.com> 1.37-1
eb4710d
- [backend] shell command uses pipes.quote
eb4710d
- Return the chroot that finished when sending build.end
eb4710d
- better and safer deleting of builds
eb4710d
- [backend] separate playbooks for each architecture
eb4710d
- [backend] built pkgs - include subpackages
eb4710d
- [backend] skipped status and package details implemented
eb4710d
- document vm_name option
eb4710d
eb4710d
* Thu Jun 19 2014 Miroslav Suchý <msuchy@redhat.com> 1.36-1
eb4710d
- backend: migrate to nova ansible module
eb4710d
- backend: make sure that exit() exit whole script not just sub-shell
eb4710d
- backend: allow passing additional info to playbooks
eb4710d
- handle {spawn,terminate}_instance equally
eb4710d
- backend: stop if you could not change to directory
eb4710d
- W:310, 8: Attribute 'abort' defined outside __init__ (attribute-defined-
eb4710d
  outside-init)
eb4710d
- W:139, 0: Dangerous default value [] as argument (dangerous-default-value)
eb4710d
  W:139, 0: Dangerous default value [0] as argument (dangerous-default-value)
eb4710d
  W:139, 0: Dangerous default value ['stdout', 'stderr'] as argument
eb4710d
  (dangerous-default-value)
eb4710d
- W:543, 4: Dangerous default value DEF_MACROS ({}) as argument (dangerous-
eb4710d
  default-value)
eb4710d
- W:543, 4: Dangerous default value DEF_REPOS ([]) as argument (dangerous-
eb4710d
  default-value)
eb4710d
- W:677,24: Unused variable 'out' (unused-variable) W:677,20: Unused variable
eb4710d
  'rc' (unused-variable)
eb4710d
- W:297,12: Unused variable 'hn' (unused-variable)
eb4710d
- C:116, 0: Unnecessary parens after 'print' keyword (superfluous-parens)
eb4710d
- W: 72,28: Unused variable 'out' (unused-variable) W: 72,24: Unused variable
eb4710d
  'rc' (unused-variable)
eb4710d
- fix typo in exception message printing
eb4710d
- 1102788 - Increase number of file descriptors on the build machine
eb4710d
eb4710d
* Fri May 30 2014 Miroslav Suchý <msuchy@redhat.com> 1.35-1
eb4710d
- follow selinux packaging draft
eb4710d
- [backend] epel 5 repo fix (sha256 -> sha)
eb4710d
eb4710d
* Thu Apr 24 2014 Miroslav Suchý <msuchy@redhat.com> 1.34-1
eb4710d
- if directory does not exist, do not try to delete it
eb4710d
eb4710d
* Tue Apr 15 2014 Miroslav Suchý <miroslav@suchy.cz> 1.33-1
eb4710d
- do not publish copr.worker messages
eb4710d
- better count workers
e4d7117
46bdce2
* Thu Apr 10 2014 Miroslav Suchý <msuchy@redhat.com> 1.32-1
46bdce2
- include ec2rc in service unit file
46bdce2
46bdce2
* Wed Apr 09 2014 Miroslav Suchý <msuchy@redhat.com> 1.31-1
46bdce2
- 1077791 - set perm of cronfile to 755
46bdce2
- 1077791 - add LICENSE to -doc subpackage
46bdce2
- 1077791 - remove make as BR
46bdce2
46bdce2
* Tue Mar 18 2014 Miroslav Suchý <msuchy@redhat.com> 1.30-1
46bdce2
- [backend] exclude files which are part of main package
46bdce2
- copr-backend.src:113: W: mixed-use-of-spaces-and-tabs (spaces: line 5, tab:
46bdce2
  line 113)
46bdce2
46bdce2
* Tue Mar 18 2014 Miroslav Suchý <msuchy@redhat.com> 1.29-1
46bdce2
- move backend into separate package
46bdce2
46bdce2
* Thu Feb 27 2014 Miroslav Suchý <msuchy@redhat.com> 1.28-1
46bdce2
- [backend] - pass lock to Actions
46bdce2
46bdce2
* Wed Feb 26 2014 Miroslav Suchý <msuchy@redhat.com> 1.27-1
46bdce2
- [frontend] update to jquery 1.11.0
46bdce2
- [fronted] link username to fas
46bdce2
- [cli] allow to build into projects of other users
46bdce2
- [backend] do not create repo in destdir
46bdce2
- [backend] ensure that only one createrepo is running at the same time
46bdce2
- [cli] allow to get data from sent build
46bdce2
- temporary workaround for BZ 1065251
46bdce2
- Chroot details API now uses GET instead of POST
46bdce2
- when deleting/canceling task, go to same page
46bdce2
- add copr modification to web api
46bdce2
- 1063311 - admin should be able to delete task
46bdce2
- [frontend] Stray end tag h4.
46bdce2
- [frontend] another s/coprs/projects/ rename
clime 803cb36
- [frontend] provide info about last successful build
46bdce2
- [spec] rhel5 needs group definition even in subpackage
46bdce2
- [frontend] move 'you agree' text to dd
46bdce2
- [frontend] add margin to chroots-set
46bdce2
- [frontend] add margin to field label
46bdce2
- [frontend] put disclaimer to paragraph tags
46bdce2
- [frontend] use black font color
46bdce2
- [frontend] use default filter instead of *_not_filled
46bdce2
- [frontend] use markdown template filter
46bdce2
- [frontend] use isdigit instead of is_int
46bdce2
- [frontend] move Serializer to helpers
46bdce2
- [frontend] fix coding style and py3 compatibility
46bdce2
- [cli] fix coding style and py3 compatibility
46bdce2
- [backend] fix coding style and py3 compatibility
46bdce2
46bdce2
* Tue Jan 28 2014 Miroslav Suchý <miroslav@suchy.cz> 1.26-1
46bdce2
- lower testing date
46bdce2
- move localized_time into filters
46bdce2
- [frontend] update user data after login
46bdce2
- [frontend] use iso-8601 date
46bdce2
46bdce2
* Mon Jan 27 2014 Miroslav Suchý <msuchy@redhat.com> 1.25-1
46bdce2
- 1044085 - move timezone modification out of template and make it actually
46bdce2
  work
46bdce2
- clean up temp data if any
46bdce2
- [db] timezone can be nullable
46bdce2
- [frontend] actually save the timezone to model
46bdce2
- fix colision of revision id
46bdce2
- 1044085 - frontend: display time in user timezone
46bdce2
- [frontend] rebuild stuck task
46bdce2
- disable test on i386
46bdce2
- use experimental createrepo_c to get rid of lock on temp files
46bdce2
- [frontend] - do not throw ISE when build_id is malformed
46bdce2
- [tests] add test for BuildLogic.add
46bdce2
- [tests] add test for build resubmission
46bdce2
- [frontend] permission checking is done in BuildLogic.add
46bdce2
- [frontend] remove BuildLogic.new, use BL.add only
46bdce2
- [api] fix validation error handling
46bdce2
- [cli] fix initial_pkgs and repos not sent to backend
46bdce2
- [frontend] fix BuildsLogic.new not assigning copr to build
46bdce2
- [frontend] allow resubmitting builds from monitor
46bdce2
- [frontend] allow GET on repeat_build
46bdce2
- [frontend] 1050904 - monitor shows not submitted chroots
46bdce2
- [frontend] rename active_mock_chroots to active_chroots
46bdce2
- [frontend] rename MockChroot.chroot_name to .name
46bdce2
- [frontend] 1054474 - drop Copr.build_count nonsense
46bdce2
- [tests] fix https and repo generation
46bdce2
- [tests] return exit code from manage.py test
46bdce2
- 1054472 - Fix deleting multiple SRPMs
46bdce2
- [spec] tighten acl on copr-be.conf
46bdce2
- [backend] - add missing import
46bdce2
- 1054082 - general: encode to utf8 if err in mimetext
46bdce2
- [backend] lock log file before writing
46bdce2
- 1055594 - mockremote: always unquote pkg url
46bdce2
- 1054086 - change vendor tag
46bdce2
- mockremote: rawhide instead of $releasever in repos when in rawhide chroot
46bdce2
- 1055499 - do not replace version with $releasever on rawhide
46bdce2
- 1055119 - do not propagate https until it is properly signed
46bdce2
- fix spellings on chroot edit page
46bdce2
- 1054341 - be more verbose about allowed licenses
46bdce2
- 1054594 - temporary disable https in repo file
46bdce2
46bdce2
* Thu Jan 16 2014 Miroslav Suchý <msuchy@redhat.com> 1.24-1
46bdce2
- add BR python-markdown
46bdce2
- [fronted] don't add description to .repo files
46bdce2
- [spec] fix with_tests conditional
46bdce2
- add build deletion
46bdce2
- 1044158 - do not require fas username prior to login
46bdce2
- replace http with https in copr-cli and in generated repo file
clime 803cb36
- [cli] UX changes - explicitly state that pkgs is URL
46bdce2
- 1053142 - only build copr-cli on el6
46bdce2
- [frontend] correctly handle mangled chroot
46bdce2
- [frontend] do not traceback when user malform url
46bdce2
- [frontend] change default description and instructions to sound more
46bdce2
  dangerously
46bdce2
- 1052075 - do not set chroots on repeated build
46bdce2
- 1052071 - do not throw ISE when copr does not exist
46bdce2
46bdce2
* Mon Jan 13 2014 Miroslav Suchý <msuchy@redhat.com> 1.23-1
46bdce2
- [backend] rhel7-beta do not have comps
46bdce2
- 1052073 - correctly parse malformed chroot
46bdce2
46bdce2
* Fri Jan 10 2014 Miroslav Suchý <msuchy@redhat.com> 1.22-1
46bdce2
- [backend] if we could not spawn VM, wait a moment and try again
46bdce2
- [backend] use createrepo_c instead of createrepo
46bdce2
- 1050952 - check if copr_url exist in config
46bdce2
- [frontend] replace newlines in description by space in repo file
46bdce2
46bdce2
* Wed Jan 08 2014 Miroslav Suchý <msuchy@redhat.com> 1.21-1
46bdce2
- 1049460 - correct error message
clime 803cb36
- [cron] manually clean /var/tmp after createrepo
46bdce2
46bdce2
* Wed Jan 08 2014 Miroslav Suchý <msuchy@redhat.com> 1.20-1
46bdce2
- [cli] no need to set const with action=store_true
46bdce2
- [cli] code cleanup
46bdce2
- 1049460 - print nice error when projects does not exist
46bdce2
- 1049392 - require python-setuptools
46bdce2
- [backend] add --verbose to log to stderr
46bdce2
- [backend] handle KeyboardInterrupt without tons of tracebacks
46bdce2
- 1048508 - fix links at projects lists
46bdce2
- [backend] in case of error the output is in e.output
46bdce2
- [selinux] allow httpd to search
46bdce2
- [backend] set number of worker in name of process
46bdce2
- [logrotate] rotate every week unconditionally
46bdce2
- [backend] do not traceback if jobfile is mangled
46bdce2
- [backend] print error messages to stderr
46bdce2
- [cli] do not require additional arguments for --nowait
46bdce2
- [backend] replace procname with setproctitle
46bdce2
- [cli] use copr.fedoraproject.org as default url
46bdce2
- [frontend] show monitor even if last build have been canceled
46bdce2
- [backend] call correct function
46bdce2
- [cli] print errors to stderr
46bdce2
- 1044136 - do not print TB if config in mangled
46bdce2
- 1044165 - Provide login and token information in the same form as entered to
46bdce2
  ~/.config-copr
46bdce2
- [frontend] code cleanup
46bdce2
- [frontend] move rendering of .repo file to helpers
46bdce2
- 1043649 - in case of Fedora use $releasever in repo file
46bdce2
- [frontend] condition should be in reverse
46bdce2
46bdce2
* Mon Dec 16 2013 Miroslav Suchý <msuchy@redhat.com> 1.19-1
46bdce2
- [backend] log real cause if ansible crash
46bdce2
- [frontend] try again if whoosh does not get lock
46bdce2
- [backend] if frontend does not respond, repeat
46bdce2
- print yum repos nicely
46bdce2
- Bump the copr-cli release to 0.2.0 with all the changes made
46bdce2
- Refer to the man page for more information about the configuration file for
46bdce2
  copr-cli
46bdce2
- Rework the layout of the list command
46bdce2
- Fix parsing the copr_url from the configuration file
46bdce2
- [backend] run createrepo as copr user
46bdce2
- 1040615 - wrap lines with long URL
46bdce2
46bdce2
* Wed Dec 11 2013 Miroslav Suchý <msuchy@redhat.com> 1.18-1
46bdce2
- [frontend] inicialize variable
46bdce2
46bdce2
* Wed Dec 11 2013 Miroslav Suchý <msuchy@redhat.com> 1.17-1
46bdce2
- [frontend] fix latest build variable overwrite
46bdce2
46bdce2
* Wed Dec 11 2013 Miroslav Suchý <msuchy@redhat.com> 1.16-1
46bdce2
- [backend] store jobs in id-chroot.json file
46bdce2
- [frontend] handle unknown build/chroot status
46bdce2
- use newstyle ansible variables
46bdce2
46bdce2
* Tue Dec 10 2013 Miroslav Suchý <msuchy@redhat.com> 1.15-1
46bdce2
- [frontend] smarter package name parsing
46bdce2
- [frontend] extend range to allow 0
46bdce2
- handle default timeout on backend
46bdce2
- initial support for SCL
46bdce2
- [backend] create word readable files in result directory
46bdce2
- [backend] print tracebacks
46bdce2
- [frontend] monitor: display only pkg name w/o version
46bdce2
- [doc] update api docs
46bdce2
- [doc] update copr-cli manpage
46bdce2
- [cli] list only name, description and instructions
46bdce2
- [cli] add support for build status & build monitor
46bdce2
- [frontend] add build status to API
46bdce2
- [playbook] do not overwrite mockchain
46bdce2
- [backend] add spece between options
46bdce2
- [backend] pass mock options correctly
46bdce2
- [frontend] support markdown in description and instructions
46bdce2
- [backend] Add macros to mockchain define arguments
46bdce2
- [backend] Pass copr username and project name to MockRemote
46bdce2
- [backend] Handle additional macro specification in MockRemote
46bdce2
- [frontend] monitor: show results per package
46bdce2
- [frontend] add favicon
46bdce2
- [backend] quote strings before passing to mockchain
46bdce2
- send chroots with via callback to frontend
46bdce2
- [cli] change cli to new api call
46bdce2
- enhance API documentation
46bdce2
- add yum_repos to coprs/user API call
46bdce2
- [frontend] provide link to description of allowed content
46bdce2
- [backend] we pass just one chroot
46bdce2
- [backend] - variable play is not defined
46bdce2
- if createrepo fail, run it again
46bdce2
- [cron] fix syntax error
46bdce2
- [man] state that --chroot for create command is required
46bdce2
- [spec] enable tests
46bdce2
- [howto] add note about upgrading db schema
46bdce2
- [frontend]: add copr monitor
46bdce2
- [tests]: replace test_allowed_one
46bdce2
- [tests]: fix for BuildChroots & new backend view
46bdce2
- [frontend] rewrite backend view to use Build <-> Chroot relation
46bdce2
- [frontend] add Build <-> Chroot relation
46bdce2
- 1030493 - [cli] check that at least one chroot is entered
46bdce2
- [frontend] typo
46bdce2
- fixup! [tests]: fix test_build_logic to handle BuildChroot
46bdce2
- fixup! [frontend] add ActionsLogic
46bdce2
- [tests]: fix test_build_logic to handle BuildChroot
46bdce2
- [spec] enable/disable test using variable
46bdce2
- add migration script - add table build_chroot
46bdce2
- [frontend] skip legal-flag actions when dumping waiting actions
46bdce2
- [frontend] rewrite backend view to use Build <-> Chroot relation
46bdce2
- [frontend] add ActionsLogic
46bdce2
- [frontend] create BuildChroot objects on new build
46bdce2
- [frontend] add Build <-> Chroot relation
46bdce2
- [frontend] add StatusEnum
46bdce2
- [frontend] fix name -> coprname typo
46bdce2
- [frontend] remove unused imports
46bdce2
- [frontend] add missing json import
46bdce2
- [backend] rework ip address extraction
46bdce2
- ownership of /etc/copr should be just normal
46bdce2
- [backend] - wrap up returning action in "action" blok
46bdce2
- [backend] rename backend api url
46bdce2
- [backend] handle "rename" action
46bdce2
- [backend] handle "delete" action
46bdce2
- base handling of actions
46bdce2
- move callback to frontend to separate object
46bdce2
- secure waiting_actions with password
46bdce2
- pick only individual builds
46bdce2
- make address, where we send legal flags, configurable
46bdce2
- send email to root after legal flag have been raised
46bdce2
46bdce2
* Fri Nov 08 2013 Miroslav Suchý <msuchy@redhat.com> 1.14-1
46bdce2
- 1028235 - add disclaimer about repos
46bdce2
- fix pagination
46bdce2
- fix one failing test
46bdce2
46bdce2
* Wed Nov 06 2013 Miroslav Suchý <msuchy@redhat.com> 1.13-1
46bdce2
- suggest correct name of repo file
46bdce2
- we could not use releasever macro
46bdce2
- no need to capitalize Projects
46bdce2
- another s/copr/project
46bdce2
- add link to header for sign-in
46bdce2
- fix failing tests
46bdce2
- UX - let textarea will full widht of box
46bdce2
- UX - make background of hovered builds darker
46bdce2
- generate yum repo for each chroot of copr
46bdce2
- align table header same way as ordinary rows
46bdce2
- enable resulting repo and disable gpgchecks
46bdce2
46bdce2
* Mon Nov 04 2013 Miroslav Suchý <msuchy@redhat.com> 1.12-1
46bdce2
- do not send parameters when we neither need them nor use them
46bdce2
- authenticate using api login, not using username
46bdce2
- disable editing name of project
46bdce2
- Add commented out WTF_CSRF_ENABLED = True to configs
46bdce2
- Use new session for each test
46bdce2
- fix test_coprs_general failures
46bdce2
- fix test_coprs_builds failures
46bdce2
- Add WTF_CSRF_ENABLED = False to unit test config
46bdce2
- PEP8 fixes
46bdce2
- Fix compatibility with wtforms 0.9
46bdce2
- typo s/submited/submitted/
46bdce2
- UX - show details of build only after click
46bdce2
- add link to FAQ to footer
46bdce2
- UX - add placeholders
46bdce2
- UX - add asterisk to required fields
46bdce2
- dynamicly generate url for home
46bdce2
- add footer
46bdce2
46bdce2
* Sat Oct 26 2013 Miroslav Suchý <msuchy@redhat.com> 1.11-1
46bdce2
- catch IOError from libravatar if there is no network
46bdce2
46bdce2
* Fri Oct 25 2013 Miroslav Suchý <msuchy@redhat.com> 1.10-1
46bdce2
- do not normalize url
46bdce2
- specify full prefix of http
46bdce2
- execute playbook using /usr/bin/ansible-playbook
46bdce2
- use ssh transport
46bdce2
- check after connection is made
46bdce2
- add notes about debuging mockremote
46bdce2
- clean up instance even when worker fails
46bdce2
- normalize paths before using
46bdce2
- do not use exception variable
46bdce2
- operator should be preceded and followed by space
46bdce2
- remove trailing whitespace
46bdce2
- convert comment to docstring
46bdce2
- use ssh transport
46bdce2
- do not create new ansible connection, reuse self.conn
46bdce2
- run copr-be.py as copr
46bdce2
- s/Copr/Project/ where we use copr in meaning of projects
46bdce2
- number will link to those coprs, to which it refers
46bdce2
- run log and jobgrab as copr user
46bdce2
- log event to log file
46bdce2
- convert comment into docstring
46bdce2
- use unbufferred output for copr-be.py
46bdce2
- hint how to set ec2 variables
46bdce2
- document sleeptime
46bdce2
- document copr_url for copr-cli
46bdce2
- document how to set api key for copr-cli
46bdce2
- do not create list of list
46bdce2
- document SECRET_KEY variable
46bdce2
- make note how to become admin
46bdce2
- instruct people to install selinux with frontend
46bdce2
46bdce2
* Thu Oct 03 2013 Miroslav Suchý <msuchy@redhat.com> 1.9-1
46bdce2
- prune old builds
46bdce2
- require python-decorator
46bdce2
- remove requirements.txt
46bdce2
- move TODO-backend to our wiki
46bdce2
- create pid file in /var/run/copr-backend
46bdce2
- add backend service file for systemd
46bdce2
- remove daemonize option in config
46bdce2
- use python logging
46bdce2
- create pid file in /var/run by default
46bdce2
- do not create destdir
46bdce2
- use daemon module instead of home brew function
46bdce2
- fix default location of copr-be.conf
46bdce2
- 2 tests fixed, one still failing
46bdce2
- fix failing test test_fail_on_missing_dash
46bdce2
- fixing test_fail_on_nonexistent_copr test
46bdce2
- run frontend unit tests when building package
46bdce2
- Adjust URLs in the unit-tests to their new structure
46bdce2
- Adjust the CLI to call the adjuste endpoint of the API
46bdce2
- Adjust API endpoint to reflects the UI endpoints in their url structure
46bdce2
- First pass at adding fedmsg hooks.
46bdce2
46bdce2
* Tue Sep 24 2013 Miroslav Suchý <msuchy@redhat.com> 1.8-1
46bdce2
- 1008532 - require python2-devel
46bdce2
- add note about ssh keys to copr-setup.txt
46bdce2
- set home of copr user to system default
46bdce2
46bdce2
* Mon Sep 23 2013 Miroslav Suchý <msuchy@redhat.com> 1.7-1
46bdce2
- 1008532 - backend should own _pkgdocdir
46bdce2
- 1008532 - backend should owns /etc/copr as well
46bdce2
- 1008532 - require logrotate
46bdce2
- 1008532 - do not distribute empty copr.if
46bdce2
- 1008532 - use %%{?_smp_mflags} macro with make
46bdce2
- move jobsdir to /var/lib/copr/jobs
46bdce2
- correct playbooks path
46bdce2
- selinux with enforce can be used for frontend
46bdce2
46bdce2
* Wed Sep 18 2013 Miroslav Suchý <msuchy@redhat.com> 1.6-1
46bdce2
- add BR python-devel
46bdce2
- generate selinux type for /var/lib/copr and /var/log/copr
46bdce2
- clean up backend setup instructions
46bdce2
- initial selinux subpackage
46bdce2
46bdce2
* Mon Sep 16 2013 Miroslav Suchý <msuchy@redhat.com> 1.5-1
46bdce2
- 1008532 - use __python2 instead of __python
46bdce2
- 1008532 - do not mark man page as doc
46bdce2
- 1008532 - preserve timestamp
46bdce2
46bdce2
* Mon Sep 16 2013 Miroslav Suchý <msuchy@redhat.com> 1.4-1
46bdce2
- add logrotate file
46bdce2
46bdce2
* Mon Sep 16 2013 Miroslav Suchý <msuchy@redhat.com> 1.3-1
46bdce2
- be clear how we create tgz
46bdce2
46bdce2
* Mon Sep 16 2013 Miroslav Suchý <msuchy@redhat.com> 1.2-1
46bdce2
- fix typo
46bdce2
- move frontend data into /var/lib/copr
46bdce2
- no need to own /usr/share/copr by copr-fe
46bdce2
- mark application as executable
46bdce2
- coprs_frontend does not need to be owned by copr-fe
46bdce2
- add executable attribute to copr-be.py
46bdce2
- remove shebang from dispatcher.py
46bdce2
- squeeze description into 80 chars
46bdce2
- fix typo
46bdce2
- frontend need argparse too
46bdce2
- move results into /var/lib/copr/public_html
46bdce2
- name of dir is just copr-%%version
46bdce2
- Remove un-necessary quote that breaks the tests
46bdce2
- Adjust unit-tests to the new urls
46bdce2
- Update the URL to be based upon a /user/copr/<action> structure
46bdce2
- comment config copr-be.conf and add defaults
46bdce2
- put examples of builderpb.yml and terminatepb.yml into doc dir
46bdce2
- more detailed description of copr-be.conf
46bdce2
- move files in config directory not directory itself
46bdce2
- include copr-be.conf
46bdce2
- include copr-be.py
46bdce2
- create copr with lighttpd group
46bdce2
- edit backend part of copr-setup.txt
46bdce2
- remove fedora16 and add 19 and 20
46bdce2
- create -doc subpackage with python documentation
46bdce2
- add generated documentation on gitignore list
46bdce2
- add script to generate python documentation
46bdce2
- copr-setup.txt change to for mock
46bdce2
- rhel6 do not know _pkgdocdir macro
46bdce2
- make instruction clear
46bdce2
- require recent whoosh
46bdce2
- add support for libravatar
46bdce2
- include backend in rpm
46bdce2
- add notes about lighttpd config files and how to deploy them
46bdce2
- do not list file twice
46bdce2
- move log file to /var/log
46bdce2
- change destdir in copr-be.conf.example
46bdce2
- lightweight is the word and buildsystem has more meaning than 'koji'.
46bdce2
- restart apache after upgrade of frontend
46bdce2
- own directory where backend put results
46bdce2
- removal of hidden-file-or-dir
46bdce2
  /usr/share/copr/coprs_frontend/coprs/logic/.coprs_logic.py.swo
46bdce2
- copr-backend.noarch: W: spelling-error %%description -l en_US latests ->
46bdce2
  latest, latest's, la tests
46bdce2
- simplify configuration - introduce /etc/copr/copr*.conf
46bdce2
- Replace "with" statements with @TransactionDecorator decorator
46bdce2
- add python-flexmock to deps of frontend
46bdce2
- remove sentence which does not have meaning
46bdce2
- change api token expiration to 120 days and make it configurable
46bdce2
- create_chroot must be run as copr-fe user
46bdce2
- add note that you have to add chroots to db
46bdce2
- mark config.py as config so it is not overwritten during upgrade
46bdce2
- own directory data/whooshee/copr_user_whoosheer
46bdce2
- gcc is not needed
46bdce2
- sqlite db must be owned by copr-fe user
46bdce2
- copr does not work with selinux
46bdce2
- create subdirs under data/openid_store
46bdce2
- suggest to install frontend as package from copr repository
46bdce2
- on el6 add python-argparse to BR
46bdce2
- add python-requests to BR
46bdce2
- add python-setuptools to BR
46bdce2
- maintain apache configuration on one place only
46bdce2
- apache 2.4 changed access control
46bdce2
- require python-psycopg2
46bdce2
- postgresql server is not needed
46bdce2
- document how to create db
46bdce2
- add to HOWTO how to create db
46bdce2
- require python-alembic
46bdce2
- add python-flask-script and python-flask-whooshee to requirements
46bdce2
- change user in coprs.conf.example to copr-fe
46bdce2
- fix paths in coprs.conf.example
46bdce2
- copr is noarch package
46bdce2
- add note where to configure frontend
46bdce2
- move frontend to /usr/share/copr/coprs_frontend
46bdce2
- put production placeholders in coprs_frontend/coprs/config.py
46bdce2
- put frontend into copr.spec
46bdce2
- web application should be put in /usr/share/%%{name}
46bdce2
46bdce2
* Mon Jun 17 2013 Miroslav Suchý <msuchy@redhat.com> 1.1-1
46bdce2
- new package built with tito
46bdce2
46bdce2