Commit baf3b6af authored by aviau's avatar aviau

deploy-packages: support manual download location

Change-Id: I42f69660cef7b0e004b11a8ab0035721b0a2efe9
Tuleap: #872
parent 2fd81444
......@@ -8,3 +8,4 @@ packages
ring_*.tar.gz
Makefile.packaging.distro_targets
repositories
manual-download
......@@ -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
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment