From baf3b6af8082ceb91a94bb221ecad87452bf5d6c Mon Sep 17 00:00:00 2001
From: aviau <alexandre@alexandreviau.net>
Date: Thu, 28 Jul 2016 14:12:40 -0400
Subject: [PATCH] deploy-packages: support manual download location

Change-Id: I42f69660cef7b0e004b11a8ab0035721b0a2efe9
Tuleap: #872
---
 .gitignore                 |  1 +
 scripts/deploy-packages.sh | 51 +++++++++++++++++++++++++++++---------
 2 files changed, 40 insertions(+), 12 deletions(-)

diff --git a/.gitignore b/.gitignore
index 077261c6..6b8a84f1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ packages
 ring_*.tar.gz
 Makefile.packaging.distro_targets
 repositories
+manual-download
diff --git a/scripts/deploy-packages.sh b/scripts/deploy-packages.sh
index e708c405..d0eece84 100755
--- a/scripts/deploy-packages.sh
+++ b/scripts/deploy-packages.sh
@@ -37,8 +37,12 @@ case $i in
     KEYID="${i#*=}"
     shift
     ;;
-    --remote-location=*)
-    REMOTE_LOCATION="${i#*=}"
+    --remote-repository-location=*)
+    REMOTE_REPOSITORY_LOCATION="${i#*=}"
+    shift
+    ;;
+    --remote-manual-download-location=*)
+    REMOTE_MANUAL_DOWNLOAD_LOCATION="${i#*=}"
     shift
     ;;
     *)
@@ -55,12 +59,12 @@ echo "#########################"
 echo "## Creating repository ##"
 echo "#########################"
 
-DISTRIBUTION_FOLDER=$(realpath repositories)/${DISTRIBUTION}
-rm -rf ${DISTRIBUTION_FOLDER}
-mkdir -p ${DISTRIBUTION_FOLDER}/conf
+DISTRIBUTION_REPOSITOIRY_FOLDER=$(realpath repositories)/${DISTRIBUTION}
+rm -rf ${DISTRIBUTION_REPOSITOIRY_FOLDER}
+mkdir -p ${DISTRIBUTION_REPOSITOIRY_FOLDER}/conf
 
 # Distributions file
-cat << EOF > ${DISTRIBUTION_FOLDER}/conf/distributions
+cat << EOF > ${DISTRIBUTION_REPOSITOIRY_FOLDER}/conf/distributions
 Origin: ring
 Label: Ring ${DISTRIBUTION} Repository
 Codename: ring
@@ -71,8 +75,8 @@ SignWith: ${KEYID}
 EOF
 
 # Options file
-cat << EOF > ${DISTRIBUTION_FOLDER}/conf/options
-basedir ${DISTRIBUTION_FOLDER}
+cat << EOF > ${DISTRIBUTION_REPOSITOIRY_FOLDER}/conf/options
+basedir ${DISTRIBUTION_REPOSITOIRY_FOLDER}
 EOF
 
 ####################################
@@ -93,17 +97,40 @@ echo "####################"
 echo "## including debs ##"
 echo "####################"
 for package in packages/${DISTRIBUTION}*/*.deb; do
-    reprepro --verbose --basedir ${DISTRIBUTION_FOLDER} includedeb ring ${package}
+    reprepro --verbose --basedir ${DISTRIBUTION_REPOSITOIRY_FOLDER} includedeb ring ${package}
 done
 
 # Rebuild the index
-reprepro --verbose --basedir ${DISTRIBUTION_FOLDER} export ring
+reprepro --verbose --basedir ${DISTRIBUTION_REPOSITOIRY_FOLDER} export ring
+
+#######################################
+## create the manual download folder ##
+#######################################
+DISTRIBUTION_MANUAL_DOWNLOAD_FOLDER=$(realpath manual-download)/${DISTRIBUTION}
+mkdir -p ${DISTRIBUTION_MANUAL_DOWNLOAD_FOLDER}
+for package in packages/${DISTRIBUTION}*/*.deb; do
+    cp ${package} ${DISTRIBUTION_MANUAL_DOWNLOAD_FOLDER}
+    package_name=$(dpkg -I ${package} | grep Package: | awk '{print $2}')
+    package_arch=$(dpkg -I ${package} | grep Architecture: | awk '{print $2}')
+    cp ${package} ${DISTRIBUTION_MANUAL_DOWNLOAD_FOLDER}/${package_name}_${package_arch}.deb
+done
+
+############
+## deploy ##
+############
 
 # Deploy the repository
 echo "##########################"
 echo "## deploying repository ##"
 echo "##########################"
-rsync --archive --recursive --verbose --delete ${DISTRIBUTION_FOLDER} ${REMOTE_LOCATION}
+rsync --archive --recursive --verbose --delete ${DISTRIBUTION_REPOSITOIRY_FOLDER} ${REMOTE_REPOSITORY_LOCATION}
+
+# deploy the manual download files
+echo "#####################################"
+echo "## deploying manual download files ##"
+echo "#####################################"
+rsync --archive --recursive --verbose --delete ${DISTRIBUTION_MANUAL_DOWNLOAD_FOLDER} ${REMOTE_MANUAL_DOWNLOAD_LOCATION}
 
-# Remove the local copy of the repository
+# remove deployed files
+rm -rf manual-download
 rm -rf repositories
-- 
GitLab