mirror of
https://github.com/YunoHost/vinaigrette.git
synced 2024-09-03 20:06:11 +02:00
68 lines
1.6 KiB
Bash
Executable file
68 lines
1.6 KiB
Bash
Executable file
#!/bin/bash -p
|
|
|
|
codename=$1
|
|
CODENAME=$1
|
|
package=$2
|
|
version=$3
|
|
arch=$4
|
|
job=$5
|
|
|
|
source /home/vinaigrette/config/config
|
|
source /home/vinaigrette/scripts/package_helpers.sh
|
|
|
|
# Architecture independent packages are built on default arch
|
|
ARCH=$arch
|
|
[[ $arch == all ]] && ARCH=$DEFAULT_ARCH
|
|
|
|
# Resulting changes file
|
|
CHANGES_FILE=$PBUILDER_RESULTS/${package}_${version}_${ARCH}.changes
|
|
|
|
# Retrieve distribution/component
|
|
DISTRIBUTION=$(get_distribution $CHANGES_FILE)
|
|
|
|
# Attempt to extract Debian codename from Distribution
|
|
extract_codename_distribution $DISTRIBUTION || exit 1
|
|
|
|
# Retrieving component from source package
|
|
get_source_component() {
|
|
reprepro -b $REPO_DIR -T dsc --list-max 1 --list-format '${$component}' \
|
|
listfilter $CODENAME "\$Source (==${package}), \$SourceVersion (==${version})"
|
|
}
|
|
COMPONENT=$(get_source_component)
|
|
if [ -z "$COMPONENT" ]; then
|
|
echo "Unable to retrieve source package component"
|
|
exit 1
|
|
fi
|
|
|
|
echo "#########################"
|
|
echo " Adding binary package..."
|
|
echo "#########################"
|
|
|
|
include_to() {
|
|
# Include changes to the given repo (waiting 1m max)
|
|
echo "Adding to ${1}/$COMPONENT..."
|
|
reprepro --waitforlock 6 -b $REPO_DIR -C $COMPONENT include $1 \
|
|
$CHANGES_FILE > /dev/null 1>&1 || return 1
|
|
}
|
|
|
|
if include_to $CODENAME ; then
|
|
status=0
|
|
else
|
|
status=1
|
|
fi
|
|
|
|
if [ $status -eq 0 ]; then
|
|
# Clean pbuilder results
|
|
for f in $(get_files $CHANGES_FILE); do
|
|
rm -f /var/cache/pbuilder/result/$f
|
|
done
|
|
fi
|
|
|
|
|
|
# Send notification on xmpp dev room
|
|
|
|
export HOME=$HOME_PBUILDER
|
|
|
|
sendxmpppy "Completed build of ${package}/${version} for ${CODENAME}/${COMPONENT}/${arch}."
|
|
|
|
exit $status
|