summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.py2
-rwxr-xr-xconfig.sh10
-rwxr-xr-xlibremessages77
-rw-r--r--main.sh21
4 files changed, 106 insertions, 4 deletions
diff --git a/config.py b/config.py
index 39f512a..8cf07a2 100644
--- a/config.py
+++ b/config.py
@@ -7,7 +7,7 @@ except(ImportError):
import os
stringvars=("mirror", "mirrorpath", "logname", "tempdir", "docs_dir",
- "repodir",)
+ "repodir", "rsync_blacklist")
listvars=("repo_list", "dir_list", "arch_list", "other",)
boolvars=("output", "debug",)
diff --git a/config.sh b/config.sh
index 66be477..60bd4ea 100755
--- a/config.sh
+++ b/config.sh
@@ -17,6 +17,7 @@ logname=${paraboladir}/${logtime}-repo-maintainer.log
tempdir=~/tmp/
docs_dir=${paraboladir}/docs
repodir=${paraboladir}/repo
+rsync_blacklist=${docs_dir}/rsyncBlacklist
# Repos, arches, and dirs for repo
repo_list="core:extra:community:testing:community-testing:multilib"
@@ -29,8 +30,8 @@ output="True"
debug="False"
# Rsync commands
-rsync_update_command="rsync -av --delay-updates --exclude=*.{abs|db}.tar.* "
-rsync_post_command="rsync -av --delete --exclude=*.abs.tar.* "
+rsync_update_command="rsync -av --delay-updates --exclude='*.{abs|db}.tar.*' "
+rsync_post_command="rsync -av --delete --exclude='*.abs.tar.*' "
function run_python_cmd {
@@ -39,6 +40,7 @@ function run_python_cmd {
mirrorpath=${mirrorpath} \
logname=${logname} \
tempdir=${tempdir} \
+ rsync_blacklist=${rsync_blacklist} \
docs_dir=${docs_dir} \
repodir=${repodir} \
repo_list=${repo_list} \
@@ -48,4 +50,6 @@ function run_python_cmd {
output=${output} \
debug=${debug} \
$1
-} \ No newline at end of file
+}
+
+source libremessages \ No newline at end of file
diff --git a/libremessages b/libremessages
new file mode 100755
index 0000000..9fbbc2b
--- /dev/null
+++ b/libremessages
@@ -0,0 +1,77 @@
+# Copyright (c) 2006-2010 Pacman Development Team <pacman-dev@archlinux.org>
+# Copyright (c) 2002-2006 by Judd Vinet <jvinet@zeroflux.org>
+# Copyright (c) 2005 by Aurelien Foret <orelien@chez.com>
+# Copyright (c) 2006 by Miklos Vajna <vmiklos@frugalware.org>
+# Copyright (c) 2005 by Christian Hamar <krics@linuxforum.hu>
+# Copyright (c) 2006 by Alex Smith <alex@alex-smith.me.uk>
+# Copyright (c) 2006 by Andras Voroskoi <voroskoi@frugalware.org>
+# Copyright (c) 2011 by Joshua Haase <hahj87@gmail.com>
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# gettext initialization
+export TEXTDOMAIN='libretools'
+export TEXTDOMAINDIR='/usr/share/locale'
+
+# check if messages are to be printed using color
+unset ALL_OFF BOLD BLUE GREEN RED YELLOW
+
+if tput setaf 0 &>/dev/null; then
+ ALL_OFF="$(tput sgr0)"
+ BOLD="$(tput bold)"
+ BLUE="${BOLD}$(tput setaf 4)"
+ GREEN="${BOLD}$(tput setaf 2)"
+ RED="${BOLD}$(tput setaf 1)"
+ YELLOW="${BOLD}$(tput setaf 3)"
+ PURPLE="${ALL_OFF}$(tput setaf 5)"
+else
+ ALL_OFF="\033[1;0m"
+ BOLD="\033[1;1m"
+ BLUE="${BOLD}\033[1;34m"
+ GREEN="${BOLD}\033[1;32m"
+ RED="${BOLD}\033[1;31m"
+ YELLOW="${BOLD}\033[1;33m"
+ PURPLE="${BOLD}\033[1;30;40m"
+fi
+
+stdnull() {
+ local action=$1;
+ eval "${action} >/dev/null 2>&1"
+}
+
+plain() {
+ local mesg=$1; shift
+ printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
+}
+
+msg() {
+ local mesg=$1; shift
+ printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
+}
+
+msg2() {
+ local mesg=$1; shift
+ printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
+}
+
+warning() {
+ local mesg=$1; shift
+ printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
+}
+
+error() {
+ local mesg=$1; shift
+ printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
+}
+
diff --git a/main.sh b/main.sh
new file mode 100644
index 0000000..ac504a4
--- /dev/null
+++ b/main.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+
+source config.sh
+
+function mkrsexclude {
+ error=1
+ while ${error}; do
+ run_python_cmd "filter.py"
+ error=$?
+ done
+}
+
+msg "Cleaning $tempdir"
+stdnull "rm -r $tempdir/* "
+
+msg "Generating exclude list for rsync"
+mkrsexclude
+
+msg "Syncing repo files without delete"
+${rsync_update_command} --exclude-from=${rsync_blacklist} ${mirror}${mirropath}/ \ No newline at end of file