Blame mirrormanager2.spec

473ad29
Name:           mirrormanager2
237910b
Version:        0.8.3
96e2536
Release:        1%{?dist}
473ad29
Summary:        Mirror management application
473ad29
473ad29
# Most MirrorManager files are licensed under the MIT license. Some
473ad29
# imported/derivated parts like zebra-dump-parser or the the script
473ad29
# to generate the worldmaps are licensed under GPLv2 and GPLv2+
473ad29
License:        MIT and GPLv2+ and GPLv2
473ad29
URL:            https://github.com/fedora-infra/mirrormanager2
473ad29
Source0:        https://github.com/fedora-infra/mirrormanager2/archive/%{version}.tar.gz
473ad29
473ad29
BuildArch:      noarch
473ad29
473ad29
BuildRequires:  python2-devel
473ad29
BuildRequires:  python-flask
473ad29
BuildRequires:  python-flask-admin
473ad29
BuildRequires:  python-flask-xml-rpc
473ad29
BuildRequires:  python-flask-wtf
473ad29
BuildRequires:  python-wtforms
473ad29
BuildRequires:  python-IPy
473ad29
BuildRequires:  python-dns
473ad29
BuildRequires:  python-fedora >= 0.3.33
473ad29
BuildRequires:  python-fedora-flask >= 0.3.33
473ad29
BuildRequires:  python-setuptools
473ad29
BuildRequires:  python-psutil
473ad29
BuildRequires:  python-alembic
473ad29
# Mirrorlist
473ad29
BuildRequires:  python-GeoIP
473ad29
BuildRequires:  py-radix
473ad29
BuildRequires:  python-webob
473ad29
BuildRequires:  systemd
473ad29
BuildRequires:  python-sqlalchemy >= 0.7
473ad29
473ad29
%if 0%{?rhel}
473ad29
BuildRequires:  python2-rpm-macros
473ad29
%endif
473ad29
473ad29
Requires:  python-flask
473ad29
Requires:  python-flask-admin
473ad29
Requires:  python-flask-xml-rpc
473ad29
Requires:  python-flask-wtf
473ad29
Requires:  python-wtforms
473ad29
Requires:  python-fedora >= 0.3.33
473ad29
Requires:  python-fedora-flask >= 0.3.33
473ad29
Requires:  python-setuptools
473ad29
Requires:  python-psutil
473ad29
Requires:  python-alembic
473ad29
473ad29
Requires:  %{name}-lib = %{version}-%{release}
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  mod_wsgi
473ad29
473ad29
%description
473ad29
MirrorManager keeps track of the public and private mirrors, that carry
473ad29
Fedora, EPEL, and RHEL content. It is used by the Fedora infrastructure as
473ad29
well as rpmfusion.org, a third-party repository.
473ad29
It automatically selects the “best” mirror for a given user based on a set
473ad29
of fallback heuristics (such as network, country or continent).
473ad29
473ad29
473ad29
%package lib
473ad29
Summary:        Library to interact with MirrorManager's database
473ad29
Group:          Development/Tools
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  python-IPy
473ad29
Requires:  python-dns
473ad29
Requires:  python-sqlalchemy >= 0.7
473ad29
473ad29
%description lib
473ad29
Library to interact with MirrorManager's database
473ad29
473ad29
473ad29
%package mirrorlist
473ad29
Summary:        MirrorList serving mirrors to yum/dnf
473ad29
Group:          Development/Tools
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  python-GeoIP
473ad29
Requires:  py-radix
473ad29
Requires:  python-webob
473ad29
Requires:  python-IPy
473ad29
Requires:  httpd
473ad29
Requires:  mod_wsgi
473ad29
Requires:  systemd
473ad29
Requires(pre):  shadow-utils
473ad29
Requires(post): systemd
473ad29
Requires(preun): systemd
473ad29
Requires(postun): systemd
473ad29
473ad29
%description mirrorlist
473ad29
Sub-part of mirrormanager serving mirrors to yum/dnf
473ad29
473ad29
473ad29
%package crawler
473ad29
Summary:        Crawler for MirrorManager
473ad29
Group:          Development/Tools
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  %{name}-lib = %{version}-%{release}
473ad29
Requires:  python-GeoIP
473ad29
Requires:  logrotate
473ad29
Requires(pre):  shadow-utils
473ad29
473ad29
%description crawler
473ad29
Install the crawler for MirrorManager, crawling all the mirrors to find out
473ad29
if they are up to date or not
473ad29
473ad29
473ad29
%package backend
473ad29
Summary:        Backend scripts for MirrorManager
473ad29
Group:          Development/Tools
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  %{name}-lib = %{version}-%{release}
473ad29
Requires(pre):  shadow-utils
473ad29
473ad29
%description backend
473ad29
Install a number of utility scripts to be used manually or in cron jobs to
473ad29
run MirrorManager.
473ad29
473ad29
%package client
473ad29
Summary:        Fedora mirror management system downstream mirror tools
473ad29
Group:          Applications/Internet
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  logrotate
473ad29
Requires:  systemd
473ad29
c907a2c
Obsoletes: mirrormanager-client <= 1.4.4-6
c907a2c
Provides:  mirrormanager-client = %{version}-%{release}
c907a2c
473ad29
%description client
473ad29
Client-side, run on each downstream mirror, to report back to the
473ad29
MirrorManager database a description of the content carried by that
473ad29
mirror.
473ad29
473ad29
%package statistics
473ad29
Summary:        Scripts to generate MirrorManager statistics
473ad29
Group:          Applications/Internet
473ad29
BuildArch:      noarch
473ad29
473ad29
Requires:  %{name}-filesystem = %{version}-%{release}
473ad29
Requires:  %{name}-lib = %{version}-%{release}
473ad29
Requires:  python-GeoIP
473ad29
Requires:  python-matplotlib
ed0050e
%if 0%{?fedora} > 27
ed0050e
Requires:  python2-basemap
ed0050e
%else
473ad29
Requires:  python-basemap
ed0050e
%endif
473ad29
473ad29
%description statistics
473ad29
A collection of different statistics script which are analyzing
473ad29
MirrorManager content or log files. It contains scripts to analyze
473ad29
the mirrorlist server connections, draws maps of all available mirrors
473ad29
and can also visualize how fast the master data propagates to all the
473ad29
mirrors. As it depends on matplotlib it has a rather large dependency
473ad29
tree.
473ad29
473ad29
%package filesystem
473ad29
Summary:        Base directories used by multiple subpackages
473ad29
BuildArch:      noarch
473ad29
473ad29
%description filesystem
473ad29
Base directories used by multiple subpackages
473ad29
473ad29
473ad29
%prep
473ad29
%setup -q
473ad29
473ad29
473ad29
%build
473ad29
%py2_build
473ad29
473ad29
473ad29
%install
473ad29
%py2_install
473ad29
473ad29
# Create directories needed
473ad29
# Apache configuration files
473ad29
mkdir -p %{buildroot}/%{_sysconfdir}/httpd/conf.d/
473ad29
# MirrorManager configuration file
473ad29
mkdir -p %{buildroot}/%{_sysconfdir}/mirrormanager
473ad29
# MirrorManager crawler log rotation
473ad29
mkdir -p %{buildroot}/%{_sysconfdir}/logrotate.d
473ad29
# for .wsgi files mainly
473ad29
mkdir -p %{buildroot}/%{_datadir}/mirrormanager2
473ad29
# Stores temp files (.sock & co)
473ad29
mkdir -p %{buildroot}/%{_sharedstatedir}/mirrormanager
473ad29
# Results and homedir
473ad29
mkdir -p %{buildroot}/%{_localstatedir}/lib/mirrormanager
473ad29
# Lock files
473ad29
mkdir -p %{buildroot}/%{_localstatedir}/lock/mirrormanager
473ad29
# Stores lock and pid info
473ad29
mkdir -p %{buildroot}/%{_localstatedir}/run/mirrormanager
473ad29
# Log files
473ad29
mkdir -p %{buildroot}/%{_localstatedir}/log/mirrormanager/crawler
473ad29
# Stores the service file for systemd
473ad29
mkdir -p %{buildroot}/%{_unitdir}
473ad29
473ad29
# Install apache configuration file
473ad29
install -m 644 mirrorlist/apache/mirrorlist-server.conf \
473ad29
    %{buildroot}/%{_sysconfdir}/httpd/conf.d/mirrorlist-server.conf
473ad29
install -m 644 utility/mirrormanager.conf.sample \
473ad29
    %{buildroot}/%{_sysconfdir}/httpd/conf.d/mirrormanager.conf
473ad29
473ad29
# Install configuration file
473ad29
install -m 644 utility/mirrormanager2.cfg.sample \
473ad29
    %{buildroot}/%{_sysconfdir}/mirrormanager/mirrormanager2.cfg
473ad29
473ad29
# Install crawler logrotate definition
473ad29
install -m 644 utility/mm2_crawler.logrotate \
473ad29
    %{buildroot}/%{_sysconfdir}/logrotate.d/mm2_crawler
473ad29
473ad29
# Install umdl logrotate definition
473ad29
install -m 644 utility/mm2_umdl.logrotate \
473ad29
    %{buildroot}/%{_sysconfdir}/logrotate.d/mm2_umdl
473ad29
473ad29
# Install WSGI file
473ad29
install -m 644 utility/mirrormanager2.wsgi \
473ad29
    %{buildroot}/%{_datadir}/mirrormanager2/mirrormanager2.wsgi
473ad29
install -m 644 mirrorlist/mirrorlist_client.wsgi \
473ad29
    %{buildroot}/%{_datadir}/mirrormanager2/mirrorlist_client.wsgi
473ad29
473ad29
# Install the mirrorlist server
473ad29
install -m 644 mirrorlist/mirrorlist_server.py \
473ad29
    %{buildroot}/%{_datadir}/mirrormanager2/mirrorlist_server.py
473ad29
install -m 644 mirrorlist/weighted_shuffle.py \
473ad29
    %{buildroot}/%{_datadir}/mirrormanager2/weighted_shuffle.py
473ad29
473ad29
# Install the createdb script
473ad29
install -m 644 createdb.py \
473ad29
    %{buildroot}/%{_datadir}/mirrormanager2/mirrormanager2_createdb.py
473ad29
473ad29
# Install the tmpfile creating the /run/mirrormanager folder upon reboot
473ad29
mkdir -p %{buildroot}%{_tmpfilesdir}
473ad29
install -m 0644 mirrorlist/systemd/mirrormanager_tempfile.conf \
473ad29
    %{buildroot}/%{_tmpfilesdir}/%{name}-mirrorlist.conf
473ad29
install -m 0644 utility/backend_tempfile.conf \
473ad29
    %{buildroot}/%{_tmpfilesdir}/%{name}-backend.conf
473ad29
473ad29
# Install the systemd service file
473ad29
install -m 644 mirrorlist/systemd/mirrorlist-server.service \
473ad29
    %{buildroot}/%{_unitdir}/mirrorlist-server.service
473ad29
473ad29
# Install the alembic files
473ad29
cp -r alembic %{buildroot}/%{_datadir}/mirrormanager2/
473ad29
install -m 644 utility/alembic.ini %{buildroot}/%{_sysconfdir}/mirrormanager/alembic.ini
473ad29
473ad29
# Install the zebra-dump-parser perl module
473ad29
cp -r utility/zebra-dump-parser %{buildroot}/%{_datadir}/mirrormanager2/
473ad29
473ad29
# Install the client files
473ad29
mkdir -p %{buildroot}/%{_sysconfdir}/mirrormanager-client
473ad29
install -m 0644 client/report_mirror.conf \
473ad29
    %{buildroot}/%{_sysconfdir}/mirrormanager-client/report_mirror.conf
473ad29
473ad29
473ad29
%pre mirrorlist
473ad29
getent group mirrormanager >/dev/null || groupadd -r mirrormanager
473ad29
getent passwd mirrormanager >/dev/null || \
473ad29
    useradd -r -g mirrormanager -d %{_localstatedir}/lib/mirrormanager -s /sbin/nologin \
473ad29
    -c "MirrorManager" mirrormanager
473ad29
exit 0
473ad29
473ad29
%pre crawler
473ad29
getent group mirrormanager >/dev/null || groupadd -r mirrormanager
473ad29
getent passwd mirrormanager >/dev/null || \
473ad29
    useradd -r -g mirrormanager -d %{_localstatedir}/lib/mirrormanager -s /sbin/nologin \
473ad29
    -c "MirrorManager" mirrormanager
473ad29
exit 0
473ad29
473ad29
%pre backend
473ad29
getent group mirrormanager >/dev/null || groupadd -r mirrormanager
473ad29
getent passwd mirrormanager >/dev/null || \
473ad29
    useradd -r -g mirrormanager -d %{_localstatedir}/lib/mirrormanager -s /sbin/nologin \
473ad29
    -c "MirrorManager" mirrormanager
473ad29
exit 0
473ad29
473ad29
%post mirrorlist
473ad29
%systemd_post mirrorlist-server.service
473ad29
473ad29
%preun mirrorlist
473ad29
%systemd_preun mirrorlist-server.service
473ad29
473ad29
%postun mirrorlist
473ad29
%systemd_postun_with_restart mirrorlist-server.service
473ad29
473ad29
%check
473ad29
# One day we will have unit-tests to run here
473ad29
473ad29
%files
473ad29
%doc README.rst doc/
473ad29
%config(noreplace) %{_sysconfdir}/httpd/conf.d/mirrormanager.conf
473ad29
%config(noreplace) %{_sysconfdir}/mirrormanager/mirrormanager2.cfg
473ad29
473ad29
%dir %{_sysconfdir}/mirrormanager/
473ad29
473ad29
%{_sysconfdir}/mirrormanager/alembic.ini
473ad29
473ad29
%{_datadir}/mirrormanager2/mirrormanager2.wsgi
473ad29
%{_datadir}/mirrormanager2/mirrormanager2_createdb.py*
473ad29
%{_datadir}/mirrormanager2/alembic/
473ad29
473ad29
%{python2_sitelib}/%{name}/*.py*
473ad29
%{python2_sitelib}/%{name}/templates/
473ad29
%{python2_sitelib}/%{name}/static/
473ad29
%{python2_sitelib}/%{name}*.egg-info
473ad29
473ad29
%files filesystem
473ad29
%license LICENSE-MIT-X11 LICENSE-GPLv2
473ad29
%dir %{python2_sitelib}/%{name}
473ad29
%dir %{_datadir}/mirrormanager2
473ad29
473ad29
%files lib
473ad29
%{python2_sitelib}/%{name}/lib/
473ad29
%{python2_sitelib}/%{name}/__init__.py*
473ad29
473ad29
473ad29
%files mirrorlist
473ad29
%config(noreplace) %{_sysconfdir}/httpd/conf.d/mirrorlist-server.conf
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/run/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/lib/mirrormanager/
473ad29
%{_tmpfilesdir}/%{name}-mirrorlist.conf
473ad29
%{_unitdir}/mirrorlist-server.service
473ad29
%{_datadir}/mirrormanager2/mirrorlist_client.wsgi
473ad29
%{_datadir}/mirrormanager2/mirrorlist_server.py*
473ad29
%{_datadir}/mirrormanager2/weighted_shuffle.py*
473ad29
473ad29
473ad29
%files crawler
473ad29
%config(noreplace) %{_sysconfdir}/logrotate.d/mm2_crawler
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/lib/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/log/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/log/mirrormanager/crawler
473ad29
%{_bindir}/mm2_crawler
473ad29
473ad29
473ad29
%files backend
473ad29
%config(noreplace) %{_sysconfdir}/logrotate.d/mm2_umdl
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/lock/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/lib/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/log/mirrormanager
473ad29
%attr(755,mirrormanager,mirrormanager) %dir %{_localstatedir}/run/mirrormanager
473ad29
%{_tmpfilesdir}/%{name}-backend.conf
473ad29
%{_datadir}/mirrormanager2/zebra-dump-parser/
473ad29
%{_bindir}/mm2_emergency-expire-repo
473ad29
%{_bindir}/mm2_get_global_netblocks
473ad29
%{_bindir}/mm2_get_internet2_netblocks
473ad29
%{_bindir}/mm2_move-devel-to-release
473ad29
%{_bindir}/mm2_move-to-archive
473ad29
%{_bindir}/mm2_refresh_mirrorlist_cache
473ad29
%{_bindir}/mm2_update-EC2-netblocks
473ad29
%{_bindir}/mm2_update-master-directory-list
473ad29
%{_bindir}/mm2_umdl2
473ad29
%{_bindir}/mm2_update-mirrorlist-server
473ad29
%{_bindir}/mm2_create_install_repo
473ad29
%{_bindir}/mm2_upgrade-install-repo
473ad29
473ad29
473ad29
%files client
473ad29
%dir %{_sysconfdir}/mirrormanager-client
473ad29
%config(noreplace) %{_sysconfdir}/mirrormanager-client/report_mirror.conf
473ad29
%{_bindir}/report_mirror
473ad29
473ad29
%files statistics
473ad29
%{_bindir}/mm2_generate-worldmap
473ad29
%{_bindir}/mm2_propagation
473ad29
%{_bindir}/mirrorlist_statistics
473ad29
473ad29
%changelog
237910b
* Tue Sep 26 2017 Adrian Reber <adrian@lisas.de> - 0.8.3-1
237910b
- Update to 0.8.3
237910b
- umdl: fix 'modular' repository detection
237910b
  https://github.com/fedora-infra/mirrormanager2/pull/221
237910b
157b189
* Sun Sep 24 2017 Adrian Reber <adrian@lisas.de> - 0.8.2-1
96e2536
- Update to 0.8.2
96e2536
- detect and setup mirrorlist/metalinks for modular Fedora
96e2536
  https://github.com/fedora-infra/mirrormanager2/pull/220
96e2536
- umdl: only create repositories for 'Everything'
96e2536
  https://github.com/fedora-infra/mirrormanager2/pull/219
96e2536
- Correctly detect repositories
96e2536
  https://github.com/fedora-infra/mirrormanager2/pull/218
96e2536
ed0050e
* Sun Aug 27 2017 Adrian Reber <adrian@lisas.de> - 0.8.1-2
ed0050e
- handle python-basemap -> python2-basemap rename
ed0050e
c062eec
* Mon Aug 07 2017 Adrian Reber <adrian@lisas.de> - 0.8.1-1
c062eec
- Update to 0.8.1
c062eec
- Revert namespace changes
c062eec
  https://github.com/fedora-infra/mirrormanager2/pull/214
c062eec
- move-devel-to-release: fix the script to work with f26
c062eec
  https://github.com/fedora-infra/mirrormanager2/pull/213
c062eec
- Initial conversion to Fedora Bootstrap
c062eec
  https://github.com/fedora-infra/mirrormanager2/pull/204
c062eec
- umdl: various fixes found in production
c062eec
  https://github.com/fedora-infra/mirrormanager2/pull/211
c062eec
4340b30
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.8-2
4340b30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
4340b30
4b8d7db
* Fri Jun 02 2017 Adrian Reber <adrian@lisas.de> - 0.8-1
4b8d7db
- Update to 0.8
4b8d7db
- Specify rel="noopener noreferrer" to link including target='_blank'
4b8d7db
- Improve the runserver script
4b8d7db
- Make the propagation script more robust
4b8d7db
- crawler: also crawl https-only mirrors
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/183
4b8d7db
- mm2_move-devel-to-release: adapt to latest repository layout
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/195
4b8d7db
- Private URLs are now restricted to admins
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/149
4b8d7db
- mirrorlist: at least 5 mirrors should be returned for country/continent
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/194
4b8d7db
- Remove 'Master rsync server Access Control List IPs' section
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/145
4b8d7db
- mirrorlist: add pkl generation time to pkl
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/184
4b8d7db
- restrict non-admin users to certain netblock sizes
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/71
4b8d7db
- Change all references from fedorahosted.org to use the github area
4b8d7db
- umdl: add fullfiletimelist-* based master scanning
4b8d7db
  https://github.com/fedora-infra/mirrormanager2/issues/206
4b8d7db
355d2ad
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.7.3-5
355d2ad
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
355d2ad
c907a2c
* Tue Oct 11 2016 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.7.3-4
c907a2c
- Obsolete and provide mirrormanager-client
c907a2c
473ad29
* Mon Oct 10 2016 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.7.3-3
473ad29
- Changed everything to buildroot
473ad29
- Added dependencies for needed directories
473ad29
- Added filesystem subpackage to own the directories
473ad29
- Added license macro to license files
473ad29
473ad29
* Sat Oct 08 2016 Patrick Uiterwijk <puiterwijk@redhat.com> - 0.7.3-2
473ad29
- Remove <0.80 requirement from IPy
473ad29
- Moved back from systemd-devel to systemd dependency
473ad29
- Removed RHEL6 conditionals
473ad29
- Use py2_install and py2_build
473ad29
- Fixed lib dependency
473ad29
- Updated URL and Source
473ad29
473ad29
* Thu Jun 23 2016 Adrian Reber <adrian@lisas.de> - 0.7.3-1
473ad29
- Update to 0.7.3
473ad29
- Allow submission of checkin information via json (Patrick Uiterwijk)
473ad29
  https://github.com/fedora-infra/mirrormanager2/issues/170
473ad29
- Add logging to checkin code (Patrick Uiterwijk)
473ad29
- mm2_crawler: Add missing field to stats dict
473ad29
  https://github.com/fedora-infra/mirrormanager2/issues/176
473ad29
- mirrolist: fix &redirect=1
473ad29
  https://github.com/fedora-infra/mirrormanager2/issues/178
473ad29
473ad29
* Wed Jun 15 2016 Adrian Reber <adrian@lisas.de> - 0.7.2-1
473ad29
- Update to 0.7.2
473ad29
- Fix propagation diagram creation
473ad29
- Use yesterday's date in get_global_netblocks
473ad29
- Mark path containing /stage/ as testing
473ad29
- Added an option with which the user can define the preferred
473ad29
  protocol)
473ad29
- Adjust repomap for the new repo layout (Pierre-Yves Chibon)
473ad29
- Typo fix in readme (Taranjeet)
473ad29
473ad29
* Mon Feb 01 2016 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.7.1-1
473ad29
- Update to 0.7.1
473ad29
- Fixes to the emergency script (Adrian Reber and Patrick Uiterwijk)
473ad29
473ad29
* Wed Jan 13 2016 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.7-1
473ad29
- Update to 0.7
473ad29
- Fix various matplotlib problems in the statitics (Adrian Reber)
473ad29
- Make green be synced and red be older in the propagation page (Patrick
473ad29
  Uiterwijk)
473ad29
- Add the possibility to clear all old files from a repo (to ensure users have
473ad29
  only up to date mirrors) (Patrick Uiterwijk)
473ad29
- Do not load the host config until it's asked (Drops the memory usage and
473ad29
  increase the speed of the application) (Adrian Reber)
473ad29
473ad29
* Thu Dec 17 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.6.1-1
473ad29
- Update to 0.6.1
473ad29
- Fix mirrorlist to access info from the just loaded pickle (Patrick Uiterwijk)
473ad29
473ad29
* Wed Dec 16 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.6-1
473ad29
- Update to 0.6
473ad29
- Really ensure that new host is admin_active (Seth Jennings)
473ad29
- Add the possibility to kill rsync after some time
473ad29
- Add headers to the table listing the mirrors
473ad29
- Cascade deletion and bring back the rsyncFilter endpoint
473ad29
- Fix to the crawler (Adrian Reber)
473ad29
- Improved documentation and validation
473ad29
- Optionally exclude certain protocols from MM (Adrian Reber)
473ad29
- Import generate-worldmap from MM1 (Adrian Reber)
473ad29
- Optionally display mirrorlist statistics (Adrian Reber)
473ad29
- mirrorlist: Remove --debug option (Adrian Reber)
473ad29
- More mirrorlist statistics changes and spec file integration (Adrian Reber)
473ad29
- Switch the MirrorList server to use threading rather than forking (Patrick
473ad29
  Uiterwijk)
473ad29
473ad29
* Mon Sep 07 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.5.1-1
473ad29
- Update to 0.5.1
473ad29
- Deleting URLs if site or host is removed (avoids the situation where a host is
473ad29
  removed and then someone tries to re-add it) (Adrian Reber)
473ad29
- Ensure that new host and new site are admin_active
473ad29
473ad29
* Fri Sep 04 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.5-1
473ad29
- Update to 0.5
473ad29
- Add order option to get_file_detail() (Adrian Reber)
473ad29
- Remove all whitespaces around the mirror URLs (Adrian Reber)
473ad29
- Sort metalinks alternates by timestamps descending (Adrian Reber)
473ad29
- Rewrite the UMDL2 into a UMDL2
473ad29
- Add code to graph repomd.xml propagation (Adrian Reber)
473ad29
- Rotate crawler logs once per week (Adrian Reber)
473ad29
- Update the UMDL1 to share code with the UMDL2 (Adrian Reber)
473ad29
- Remove trailing slash of site and host_category_url
473ad29
473ad29
* Thu Jul 30 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.4.2-1
473ad29
- Update to 0.4.2
473ad29
- Create the -client subpackage containing the report_mirror script and
473ad29
  configuration file (Adrian Reber)
473ad29
473ad29
* Tue Jul 28 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.4.1-1
473ad29
- Update to 0.4.1
473ad29
- If the host has no categories do not auto-disable it (Adrian Reber)
473ad29
- Different small umdl and crawler fixe (Adrian Reber)
473ad29
473ad29
* Wed Jul 22 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.4.0-1
473ad29
- Update to 0.4.0
473ad29
- Add utility script to update the MM2 DB for a single file (light-weight UMDL
473ad29
  for a single file) (Ralph Bean)
473ad29
- Add support to gracefully shutdown the crawler (Adrian Reber)
473ad29
- Add support to limit crawling by continent (Adrian Reber)
473ad29
- Fix the crawler to work properly with MM2
473ad29
- Fix the repomap to create properly development repos
473ad29
- Fix new repository detection and creation in UMDL (Adrian Reber)
473ad29
473ad29
* Thu Jul 02 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.3.1-1
473ad29
- Update to 0.3.1
473ad29
- Fix for broken logging output in the UMDL (Adrian Reber)
473ad29
- Fix mm2_move-to-archive (Adrian Reber)
473ad29
473ad29
* Wed Jun 24 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.3.0-1
473ad29
- Update to 0.3.0
473ad29
- Fix the --delete action of the umdl (Adrian Reber)
473ad29
- If the user is not an admin, keep the existing admin_active settings
473ad29
- Only MM2 admins are allowed to change the always_up2date flag of a mirror
473ad29
- Also fix the mm2_crawler logrotate script like the one for umdl (Adrian Reber)
473ad29
473ad29
* Thu Jun 11 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.2.1-1
473ad29
- Update to 0.2.1
473ad29
- Fix the mm2_move-devel-to-release script to work properly with MM2 and our
473ad29
  products (Adrian Reber)
473ad29
473ad29
* Fri Jun 05 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.2.0-1
473ad29
- Update to 0.2.0
473ad29
- Include the background header file in MM2 itself (Adrian Reber)
473ad29
- Support always update hosts which are unreachable in the crawler (Adrian
473ad29
  Reber)
473ad29
- Adjust the spec file to the systemd packaging guidelines for Fedora
473ad29
- Multiple improvements to the crawler, including a start of a canary mode
473ad29
  (Adrian Reber)
473ad29
- Offer possibility to sort by product, bringing back MM1 behavior (Adrian
473ad29
  Reber)
473ad29
- Couple of UI fixes about who is allowed to access what
473ad29
- Fix peer ASNs (in the same spirit, who can access)
473ad29
- Create noauthed master for mirror publiclist so that it can be cached in
473ad29
  memcachd (Patrick Uiterwijk)
473ad29
- Fix the report_mirror to correctly catch the xmlrpclib.ProtocolError
473ad29
- Add a new utility script to upgrade repo from -alpha or -beta to release
473ad29
- Adjust the logrotate configuration to fix the permission denied error
473ad29
- Create 2 API endpoints, one for zodbot's .mirroradmin and one for nagios
473ad29
473ad29
* Thu May 07 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.1.0-1
473ad29
- Update 0.1.0
473ad29
- Add the possibilities to delete a site or a host
473ad29
- Do not only create /var/lock/mirrormanager on installation (Adrian Reber)
473ad29
473ad29
* Tue May 05 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.10-1
473ad29
- Update to 0.0.10
473ad29
- Install the mm2_create_install_repo script
473ad29
- Fix version handling on mm2_create_install_repo (Adrian Reber)
473ad29
- Fix pickle generation when several repositories point to the same directory
473ad29
473ad29
* Mon May 04 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.9-1
473ad29
- Update to 0.0.9
473ad29
- Include and install alembic files
473ad29
- Try explicit garbage collection in the crawler (Adrian Reber)
473ad29
- Use defined timeout also for HTTP/FTP connections (Adrian Reber)
473ad29
- Add documentation about the crawler (Adrian Reber)
473ad29
- Also add a /var/run directory for the backend (Adrian Reber)
473ad29
- Add fedmenu integration
473ad29
- Add new utility script to be used to create the fedora-install-X repositories
473ad29
- Added last-sync script as mm2_last-sync (Adrian Reber)
473ad29
473ad29
* Thu Apr 23 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.8-1
473ad29
- Update to 0.0.8
473ad29
- Make MM2 a little prettier on high-res display
473ad29
- Add a Location tag for static (Patrick Uiterwijk)
473ad29
- Fix the DB session issue on the crawler (Adrian Reber)
473ad29
- Add some documentation on how MirrorManager works
473ad29
- Decrease time required for set_not_up2date() (Adrien Reber)
473ad29
- Add support to auto disable mirrors (Adrien Reber)
473ad29
- Auto disable hosts which have a URL configured but which does not exist
473ad29
  (Adrian Reber)
473ad29
- crawl_duration is a host specific property (Adrian Reber)
473ad29
- Handle lighttpd returing a content length for directories (Adrian Reber)
473ad29
- Scan the directories which are supposed to be on each mirror (Adrian Reber)
473ad29
- Use Yesterday's date on mm2_get_internet2_netblocks to avoid TZ issue (Adrian
473ad29
  Reber)
473ad29
- Fix logging in the UMDL script (Adrian Reber)
473ad29
- Allow the UMDL to crawl only a specified category (Adrian Reber)
473ad29
- Fix example fedmsg config (Ralph Bean)
473ad29
473ad29
* Mon Apr 13 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.7-1
473ad29
- Update to 0.0.7
473ad29
- Add missing import on mm2_update-EC2-netblocks
473ad29
- Have the cron jobs running under a ``mirrormanager`` user (Adrian Reber)
473ad29
- Update the last_crawled and last_crawled_duration correctly (Adrian Reber)
473ad29
- Fix systemd's tempfile.conf for mirrormanager2
473ad29
- Fix link to the crawler log file (Adrian Reber)
473ad29
- Close per thread logging correctly (Adrian Reber)
473ad29
- Add more informations to the log output (Adrian Reber)
473ad29
- Start crawling the hosts which require the most time (Adrian Reber)
473ad29
- Filters the hosts to crawl at the DB level to save time and memory (Adrian
473ad29
  Reber)
473ad29
- Fix the xmlrpc endpoint (Adrian Reber)
473ad29
- Adjust Build Requires to include systemd-devel instead of just systemd
473ad29
- Close session at the end and make the session permanent
473ad29
- Add new columns to the host table to store extra infos (Adrian Reber)
473ad29
- Use urllib2 instead of urlgrabber in the crawler (Adrian Reber)
473ad29
- Fix crawler timeout (Adrian Reber)
473ad29
- run_rsync() returns a temporary file which needs to be closed (Adrian Reber)
473ad29
473ad29
* Wed Mar 18 2015 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.6-1
473ad29
- Update to 0.0.6
473ad29
- Drop the Locations in the hosts (no longer used)
473ad29
- Add unit-tests
473ad29
  - To the frontend
473ad29
  - To some of the backend scripts
473ad29
- Add dependency to python-IPy
473ad29
- Fix ExecStart instruction for systemd
473ad29
- Fix apache configuration file for mirrorlist
473ad29
- Fix host selection logic in the crawler (Adrian Reber)
473ad29
- Log the rsync command (Adrian Reber)
473ad29
- Add the possibility to specify the rsync argument via the configuration file
473ad29
  (Adrian Reber)
473ad29
- Add and install a tempfile.d file for systemd to re-create
473ad29
  /var/run/mirrormanager upon reboot
473ad29
473ad29
* Mon Dec 15 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.5-1
473ad29
- Update to 0.0.5
473ad29
- Include zebra-dump-parser in the backend sub-package
473ad29
- Install weighted_shuffle and include it in the mirrorlist sub-package
473ad29
473ad29
* Mon Dec 15 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.4-1
473ad29
- Update to 0.0.4
473ad29
- Fix  typos in the script to point them to the correct configuration file by
473ad29
  default
473ad29
- Install the mirrorlist_server
473ad29
- Move mirrorlist to rely on systemd instead of supervisor
473ad29
- Install zebra-dump-parser user by mm2_get_internet2_netblocks
473ad29
- Remove debugging statement for mm2_refresh_mirrorlist_cache, no need to output
473ad29
  something if everything ran fine
473ad29
473ad29
* Mon Dec 08 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.3-1
473ad29
- Update to 0.0.3
473ad29
- Fix the import in the createdb script
473ad29
473ad29
* Mon Dec 08 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.2-1
473ad29
- Update to 0.0.2
473ad29
- Move the flask application to mirrormanager2/app.py and put a module
473ad29
  place holder in mirrormanager2/__init__.py that we can extract when
473ad29
  splitting the module in -lib
473ad29
473ad29
* Mon Dec 08 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.1-2
473ad29
- Fix the package name in the Requires, using %%{name} fixes things
473ad29
473ad29
* Mon Dec 08 2014 Pierre-Yves Chibon <pingou@pingoured.fr> - 0.0.1-1
473ad29
- Initial packaging work for Fedora