| GROK-PULL |
| ========= |
| -------------------------------------- |
| Clone or update local git repositories |
| -------------------------------------- |
| |
| :Author: mricon@kernel.org |
| :Date: 2019-02-14 |
| :Copyright: The Linux Foundation and contributors |
| :License: GPLv3+ |
| :Version: 1.2.0 |
| :Manual section: 1 |
| |
| SYNOPSIS |
| -------- |
| grok-pull -c /path/to/repos.conf |
| |
| DESCRIPTION |
| ----------- |
| This utility runs from a cronjob and downloads the latest manifest from |
| the grokmirror master. If there are new repositories or changes in the |
| existing repositories, grok-pull will perform the necessary git commands |
| to clone or fetch the required data from the master. |
| |
| At the end of its run, grok-pull will generate its own manifest file, |
| which can then be used for further mirroring. |
| |
| OPTIONS |
| ------- |
| --version show program's version number and exit |
| -h, --help show this help message and exit |
| -v, --verbose Be verbose and tell us what you are doing |
| -n, --no-mtime-check Run without checking manifest mtime. |
| -f, --force Force full git update regardless of last-modified |
| times. Also useful when repos.conf has changed. |
| -p, --purge Remove any git trees that are no longer in manifest. |
| -y, --pretty Pretty-print the generated manifest (sort repos |
| and add indentation). This is much slower, so |
| should be used with caution on large |
| collections. |
| -r, --no-reuse-existing-repos |
| If any existing repositories are found on disk, |
| do NOT set new remote origin and reuse, just |
| skip them entirely |
| -m, --verify-mirror Do not perform any updates, just verify that mirror |
| matches upstream manifest. |
| -s SUBPATH, --verify-subpath=SUBPATH |
| Only verify a subpath (accepts shell globbing) |
| -c CONFIG, --config=CONFIG |
| Location of repos.conf |
| |
| EXAMPLES |
| -------- |
| Locate repos.conf and modify it to reflect your needs. The default |
| configuration file is heavily commented. |
| |
| Add a cronjob to run as frequently as you like. For example, add the |
| following to ``/etc/cron.d/grokmirror.cron``:: |
| |
| # Run grok-pull every minute as user "mirror" |
| * * * * * mirror /usr/bin/grok-pull -p -c /etc/grokmirror/repos.conf |
| |
| Make sure the user "mirror" (or whichever user you specified) is able to |
| write to the toplevel, log and lock locations specified in repos.conf. |
| |
| SEE ALSO |
| -------- |
| * grok-manifest(1) |
| * grok-fsck(1) |
| * git(1) |
| |
| SUPPORT |
| ------- |
| Please open an issue on Github: |
| |
| https://github.com/mricon/grokmirror/issues |