Hi all,

As part of improvements to download.opensuse.org experience, currently new pilot service is available for using with zypper.

https://mirrorcache.opensuse.org

Its primary task is to redirect zypper requests to a mirror in client's country, similar to what MirrorBrain project does.

You can try to replace in /etc/zypp/repos.d/*.repo
http://download.opensuse.org
with
http://mirrorcache.opensuse.org
or
https://mirrorcache.opensuse.org

Since it is still a pilot, the service comes without any guarantee or obligations.

Reasons when you may want to try it:
- you want to stick to https connection (mirrorcache will try to find a mirror in your country, which supports https, if available).
- you are on ipv4-only or ipv6-only connection (mirrorcache will try to find a mirror which supports ipv4 or ipv6, depending on the request's connection);
- in case when download.opensuse.org (d.o.o) is temporary unavailable;
- redirection from d.o.o leads to a mirror, which actually doesn't have the requested file (it is rare, but can happen);
- you want to try hosting own mirrorcache instance at your physical location and enjoy fast and reliable redirection. (with very modest disk space / HW requirements).

Additional reasons:
- you want to help with improving d.o.o experience and provide feedback;
- you are interested in mirror management, for which admin's UI is available, and non-admin UI is planned (so a user can add and manage own mirror without global admin rights);
  https://mirrorcache.opensuse.org/app/server
  (login using UI menu and ask me for admin rights if you want to use it or see more advanced controls, like job details).
- you need some related functionality: it is possible that it can be easily achievable with mirrorcache.

Further read about differences from MirrorBrain:
  https://github.com/andrii-suse/MirrorCache/blob/master/doc/mb_compare.md

How caching works:
- caching happens on folder level, so e.g., when zypper tries to access file, unknown for mirrorcache - it will be redirected to d.o.o, then a background job will collect info about mirrors. Thereafter further requests to the same folder will be properly redirected to a mirror in the client's country, honoring http/https scheme and ipv4/ipv6 connection used:
  https://raw.githubusercontent.com/andrii-suse/MirrorCache/master/doc/flow.svg
- requests to remodata/repomd.xml is not cached, so zypper always gets the latest version of packages.

If you are interested in current source code
 (most of architecture is stolen from OpenQA):
  https://github.com/andrii-suse/MirrorCache


In case of questions or any feedback do not hesitate to contact me.

Regards,
--
Andrii Nikitin <andrii.nikitin@suse.com>
DevOPS Automation and Build Service Engineer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5
90409 Nuremberg
Germany

(HRB 247165, AG München)
Managing Director: Felix Imendörffer