summaryrefslogtreecommitdiffstats
path: root/tools/builder_common.sh
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2016-04-21 16:34:40 -0300
committerRenato Botelho <renato@netgate.com>2016-04-21 16:34:52 -0300
commit15333972e7916918be46c3d7c4e8ded240ac773a (patch)
tree383beecf9a2b3c8e944ba4e778c980e07f09e9af /tools/builder_common.sh
parent61b63ac04aeae6ddaefae3f0f793f5c6500dc148 (diff)
downloadpfsense-15333972e7916918be46c3d7c4e8ded240ac773a.zip
pfsense-15333972e7916918be46c3d7c4e8ded240ac773a.tar.gz
Send pkg repos to staging server before move to final one
Diffstat (limited to 'tools/builder_common.sh')
-rw-r--r--tools/builder_common.sh31
1 files changed, 28 insertions, 3 deletions
diff --git a/tools/builder_common.sh b/tools/builder_common.sh
index eac8135..27380e9 100644
--- a/tools/builder_common.sh
+++ b/tools/builder_common.sh
@@ -1833,14 +1833,14 @@ finish() {
}
pkg_repo_rsync() {
- local _repo_path="${1}"
+ local _repo_path_param="${1}"
- if [ -z "${_repo_path}" -o ! -d "${_repo_path}" ]; then
+ if [ -z "${_repo_path_param}" -o ! -d "${_repo_path_param}" ]; then
return
fi
# Sanitize path
- _repo_path=$(realpath ${_repo_path})
+ _repo_path=$(realpath ${_repo_path_param})
local _repo_dir=$(dirname ${_repo_path})
local _repo_base=$(basename ${_repo_path})
@@ -1899,6 +1899,11 @@ pkg_repo_rsync() {
return
fi
+ # Make sure destination directory exist
+ ssh -p ${PKG_RSYNC_SSH_PORT} \
+ ${PKG_RSYNC_USERNAME}@${PKG_RSYNC_HOSTNAME} \
+ "mkdir -p ${PKG_RSYNC_DESTDIR}"
+
echo -n ">>> Sending updated repository to ${PKG_RSYNC_HOSTNAME}... " | tee -a ${_logfile}
if script -aq ${_logfile} rsync -ave "ssh -p ${PKG_RSYNC_SSH_PORT}" \
--timeout=60 --delete-delay ${_repo_path} \
@@ -1910,6 +1915,26 @@ pkg_repo_rsync() {
echo ">>> ERROR: An error occurred sending repo to remote hostname"
print_error_pfS
fi
+
+ if [ -z "${USE_PKG_REPO_STAGING}" ]; then
+ return
+ fi
+
+ if [ -n "${_IS_RELEASE}" -o "${_repo_path_param}" = "${CORE_PKG_PATH}" ]; then
+ local _cmd="rsync -ave \"ssh -p ${PKG_FINAL_RSYNC_SSH_PORT}\" \
+ --timeout=60 --delete-delay ${PKG_RSYNC_DESTDIR}/./${_repo_base%%-core}* \
+ ${PKG_FINAL_RSYNC_USERNAME}@${PKG_FINAL_RSYNC_HOSTNAME}:${PKG_FINAL_RSYNC_DESTDIR}"
+
+ echo -n ">>> Sending updated repositories to ${PKG_FINAL_RSYNC_HOSTNAME}... " | tee -a ${_logfile}
+ if script -aq ${_logfile} ssh -p ${PKG_RSYNC_SSH_PORT} \
+ ${PKG_RSYNC_USERNAME}@${PKG_RSYNC_HOSTNAME} ${_cmd} >/dev/null 2>&1; then
+ echo "Done!" | tee -a ${_logfile}
+ else
+ echo "Failed!" | tee -a ${_logfile}
+ echo ">>> ERROR: An error occurred sending repo to final hostname"
+ print_error_pfS
+ fi
+ fi
}
poudriere_create_patch() {
OpenPOWER on IntegriCloud