mirror


Namemirror JSON
Version 0.8.4 PyPI version JSON
download
home_pagehttp://mirror.bjtu.edu.cn
SummaryTask scheduler for open source mirror site (initially for https://mirror.bjtu.edu.cn)
upload_time2024-08-22 06:28:49
maintainerNone
docs_urlNone
authorShang Yuanchun, Bob Gao
requires_python!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7
licenseGPLv3
keywords open source mirror
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Mirror

[![Build Status]][Github Actions] [![Python version]][PyPI] [![Release version]][Release url] [![PyPi version]][PyPI] [![AUR version]][AUR]

`Mirror` is an open source python application for mirror site (e.g. [mirror.bjtu.edu.cn](https://mirror.bjtu.edu.cn)) to sync files from upstreams (it uses [rsync](http://rsync.samba.org/) internally), it actually works like a [cron](http://en.wikipedia.org/wiki/Cron), but still has some differences. It has been served for mirror.bjtu.edu.cn with more than 40 rsync [tasks](https://mirror.bjtu.edu.cn).

You are welcome to send comments, patches and any others to [github](https://github.com/ideal/mirror/issues) or to [@idealities](http://twitter.com/idealities).

Homepage: https://mirror.bjtu.edu.cn

Authors
=======

* Shang Yuanchun
* Bob Gao
* Chestnut

For contributors and past developers see: 
    AUTHORS

Installation Instructions
=========================

## Install from PyPI

You can install `mirror` by running pip:

```bash
$ sudo pip install mirror
```

## Install from source

Or if you want to build and install from source:

```bash
$ python setup.py build
$ sudo python setup.py install
```

## Config and running

After that, you are going to set up environment, you are encouraged to add a specific user to run `mirrord`, here we suppose the username is `mirror` and its home directory is `/home/mirror`.

Make necessary directories:

```bash
$ sudo chown mirror:mirror /var/log/mirrord /var/log/rsync
$ sudo mkdir /etc/mirror
$ sudo cp config/mirror.ini /etc/mirror/
```

Now you can edit mirror.ini to fit your needs and run:
```bash
$ mirrord
```
and that's done. Also you can use `man mirrord` or `mirrord -h` to read the documents.

If `mirrord` is running, you can run:
```bash
$ mirrord -t
```
to show the current task queue.

<img src="http://ideal.github.io/mirror/images/tasks.png" alt="screenshot" />

Contact/Support
===============

Email: idealities@gmail.com

Features
========

 * It's simple and easy to add a mirror
 * You can set a priorty for each mirror, from 1 to 10, 1 is highest
 * And scheduler will schedule a task depending on current conditions
 * You can also set a timeout for each mirror
 * Support for two stage syncing (for ubuntu, debian)
 * You can also use it as another cron...

[Build Status Old]: https://img.shields.io/travis/ideal/mirror/master.svg?logo=travis-ci
[Build Status]:     https://img.shields.io/github/workflow/status/ideal/mirror/Mirror%20test?logo=github
[Github Actions]:   https://github.com/ideal/mirror/actions
[Travis CI]:        https://travis-ci.org/ideal/mirror
[Release version]:  https://img.shields.io/github/release/ideal/mirror.svg?logo=github
[Release url]:      https://github.com/ideal/mirror/releases/latest
[Python version]:   https://img.shields.io/pypi/pyversions/mirror.svg?logo=python
[PyPI version]:    https://img.shields.io/pypi/v/mirror.svg?logo=python
[PyPI]:            https://pypi.python.org/pypi/mirror
[AUR version]:     https://img.shields.io/aur/version/mirror.svg?logo=arch-linux
[AUR]:             https://aur.archlinux.org/packages/mirror

            

Raw data

            {
    "_id": null,
    "home_page": "http://mirror.bjtu.edu.cn",
    "name": "mirror",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
    "maintainer_email": null,
    "keywords": "open source mirror",
    "author": "Shang Yuanchun, Bob Gao",
    "author_email": "Shang Yuanchun <idealities@gmail.com>, Bob Gao <gaobo@bjtu.edu.cn>",
    "download_url": "https://files.pythonhosted.org/packages/f0/32/407c1abbbfeb47ced90e1fd904dab1d9be32dcd2559eb2c70251118102c5/mirror-0.8.4.tar.gz",
    "platform": null,
    "description": "# Mirror\n\n[![Build Status]][Github Actions] [![Python version]][PyPI] [![Release version]][Release url] [![PyPi version]][PyPI] [![AUR version]][AUR]\n\n`Mirror` is an open source python application for mirror site (e.g. [mirror.bjtu.edu.cn](https://mirror.bjtu.edu.cn)) to sync files from upstreams (it uses [rsync](http://rsync.samba.org/) internally), it actually works like a [cron](http://en.wikipedia.org/wiki/Cron), but still has some differences. It has been served for mirror.bjtu.edu.cn with more than 40 rsync [tasks](https://mirror.bjtu.edu.cn).\n\nYou are welcome to send comments, patches and any others to [github](https://github.com/ideal/mirror/issues) or to [@idealities](http://twitter.com/idealities).\n\nHomepage: https://mirror.bjtu.edu.cn\n\nAuthors\n=======\n\n* Shang Yuanchun\n* Bob Gao\n* Chestnut\n\nFor contributors and past developers see: \n    AUTHORS\n\nInstallation Instructions\n=========================\n\n## Install from PyPI\n\nYou can install `mirror` by running pip:\n\n```bash\n$ sudo pip install mirror\n```\n\n## Install from source\n\nOr if you want to build and install from source:\n\n```bash\n$ python setup.py build\n$ sudo python setup.py install\n```\n\n## Config and running\n\nAfter that, you are going to set up environment, you are encouraged to add a specific user to run `mirrord`, here we suppose the username is `mirror` and its home directory is `/home/mirror`.\n\nMake necessary directories:\n\n```bash\n$ sudo chown mirror:mirror /var/log/mirrord /var/log/rsync\n$ sudo mkdir /etc/mirror\n$ sudo cp config/mirror.ini /etc/mirror/\n```\n\nNow you can edit mirror.ini to fit your needs and run:\n```bash\n$ mirrord\n```\nand that's done. Also you can use `man mirrord` or `mirrord -h` to read the documents.\n\nIf `mirrord` is running, you can run:\n```bash\n$ mirrord -t\n```\nto show the current task queue.\n\n<img src=\"http://ideal.github.io/mirror/images/tasks.png\" alt=\"screenshot\" />\n\nContact/Support\n===============\n\nEmail: idealities@gmail.com\n\nFeatures\n========\n\n * It's simple and easy to add a mirror\n * You can set a priorty for each mirror, from 1 to 10, 1 is highest\n * And scheduler will schedule a task depending on current conditions\n * You can also set a timeout for each mirror\n * Support for two stage syncing (for ubuntu, debian)\n * You can also use it as another cron...\n\n[Build Status Old]: https://img.shields.io/travis/ideal/mirror/master.svg?logo=travis-ci\n[Build Status]:     https://img.shields.io/github/workflow/status/ideal/mirror/Mirror%20test?logo=github\n[Github Actions]:   https://github.com/ideal/mirror/actions\n[Travis CI]:        https://travis-ci.org/ideal/mirror\n[Release version]:  https://img.shields.io/github/release/ideal/mirror.svg?logo=github\n[Release url]:      https://github.com/ideal/mirror/releases/latest\n[Python version]:   https://img.shields.io/pypi/pyversions/mirror.svg?logo=python\n[PyPI version]:    https://img.shields.io/pypi/v/mirror.svg?logo=python\n[PyPI]:            https://pypi.python.org/pypi/mirror\n[AUR version]:     https://img.shields.io/aur/version/mirror.svg?logo=arch-linux\n[AUR]:             https://aur.archlinux.org/packages/mirror\n",
    "bugtrack_url": null,
    "license": "GPLv3",
    "summary": "Task scheduler for open source mirror site (initially for https://mirror.bjtu.edu.cn)",
    "version": "0.8.4",
    "project_urls": {
        "Homepage": "http://mirror.bjtu.edu.cn"
    },
    "split_keywords": [
        "open",
        "source",
        "mirror"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c68d532a479bf2c3f68cf53ee194e303e8e6ad814e1f6fbdffd47aa45115b006",
                "md5": "7efbe66e68b42b0a9e44fddb26bc7b31",
                "sha256": "101f1f5de45b7543084b03b70b33d1630e55ad2edfe7e2b93dabe5e209b4d3b2"
            },
            "downloads": -1,
            "filename": "mirror-0.8.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7efbe66e68b42b0a9e44fddb26bc7b31",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
            "size": 87109,
            "upload_time": "2024-08-22T06:28:48",
            "upload_time_iso_8601": "2024-08-22T06:28:48.170838Z",
            "url": "https://files.pythonhosted.org/packages/c6/8d/532a479bf2c3f68cf53ee194e303e8e6ad814e1f6fbdffd47aa45115b006/mirror-0.8.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f032407c1abbbfeb47ced90e1fd904dab1d9be32dcd2559eb2c70251118102c5",
                "md5": "827c2d2b24d65bf3937ec02f3f26aea6",
                "sha256": "801ea1f43ec214e96a9b6160cdcf07d7eecbe0290fdcd8c19701599388affbe8"
            },
            "downloads": -1,
            "filename": "mirror-0.8.4.tar.gz",
            "has_sig": false,
            "md5_digest": "827c2d2b24d65bf3937ec02f3f26aea6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7",
            "size": 78284,
            "upload_time": "2024-08-22T06:28:49",
            "upload_time_iso_8601": "2024-08-22T06:28:49.739996Z",
            "url": "https://files.pythonhosted.org/packages/f0/32/407c1abbbfeb47ced90e1fd904dab1d9be32dcd2559eb2c70251118102c5/mirror-0.8.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-22 06:28:49",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mirror"
}
        
Elapsed time: 4.51575s