diff options
| -rw-r--r-- | git.rulkc.org/grokmirror/git.cron | 25 | ||||
| -rw-r--r-- | git.rulkc.org/grokmirror/grokmirror.conf | 63 |
2 files changed, 88 insertions, 0 deletions
diff --git a/git.rulkc.org/grokmirror/git.cron b/git.rulkc.org/grokmirror/git.cron new file mode 100644 index 0000000..c16209e --- /dev/null +++ b/git.rulkc.org/grokmirror/git.cron @@ -0,0 +1,25 @@ +# Edit this file to introduce tasks to be run by cron. +# +# Each task to run has to be defined through a single line +# indicating with different fields when the task will be run +# and what command to run for the task +# +# To define the time you can provide concrete values for +# minute (m), hour (h), day of month (dom), month (mon), +# and day of week (dow) or use '*' in these fields (for 'any'). +# +# Notice that tasks will be started based on the cron's system +# daemon's notion of time and timezones. +# +# Output of the crontab jobs (including errors) is sent through +# email to the user the crontab file belongs to (unless redirected). +# +# For example, you can run a backup of all your user accounts +# at 5 a.m every week with: +# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/ +# +# For more information see the manual pages of crontab(5) and cron(8) +# +# m h dom mon dow command +* */1 * * * /usr/bin/grok-pull -v -p -c /etc/grokmirror/grokmirror.conf +* */1 * * * /usr/bin/grok-dumb-pull -v /home/git/repositories/dumb diff --git a/git.rulkc.org/grokmirror/grokmirror.conf b/git.rulkc.org/grokmirror/grokmirror.conf new file mode 100644 index 0000000..d7f662d --- /dev/null +++ b/git.rulkc.org/grokmirror/grokmirror.conf @@ -0,0 +1,63 @@ +[core] +# Where are we going to put the mirror on our disk? +toplevel = /var/lib/git + +# Where do we store our own manifest? Usually in the toplevel. +manifest = ${toplevel}/manifest.js.gz + +# Where do we put the logs? +log = /var/log/mirror/kernelorg.log + +# Log level can be "info" or "debug" +loglevel = debug + +# To prevent multiple grok-pull instances from running at the same +# time, we first obtain an exclusive lock. +lock = /var/lock/mirror/kernelorg.lock + +# Object storage for forks (saves disk space) +objstore = /var/lib/_objstore + +[remote] +# The source mirror +site = https://git.kernel.org + +# Manifest location on the remote site +manifest = ${site}/manifest.js.gz + +[pull] +# Default owner for repositories +default_owner = Grokmirror User + +# Generate a project list for external tools (like cgit) +projectslist = ${core:toplevel}/pub/scm/projects.list + +# Trim this prefix from paths in projectslist +projectslist_trimtop = /pub/scm/ + +# Use shell-globbing to list the repositories you would like to mirror. +# If you want to mirror everything, just say "*". Separate multiple entries +# with newline. +# +# mirror just the main kernel sources: +include = /pub/scm/linux/kernel/git/torvalds/linux.git + /pub/scm/linux/kernel/git/stable/linux.git + /pub/scm/linux/kernel/git/next/linux-next.git + +# Exclude patterns (none for now) +exclude = + +# Remove repositories not in remote manifest +# purge = + +# Protect against accidental mass purge (5% threshold) +# purgeprotect = + +# Number of parallel threads for fetching +pull_threads = 10 + +# Retry failed fetches up to 3 times +retries = 3 + +# Timeout for git operations (seconds) +timeout = 100 |
