mirror of
https://github.com/JGRennison/OpenTTD-patches.git
synced 2024-11-13 07:10:57 +00:00
88 lines
2.2 KiB
Bash
Executable File
88 lines
2.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
set -ex
|
|
|
|
if [ -z "$1" ]; then
|
|
echo "Usage: $0 <folder-with-bundles>"
|
|
exit 1
|
|
fi
|
|
|
|
FOLDER=$1
|
|
|
|
if [ ! -e .version ] || [ ! -e .release_date ]; then
|
|
echo "This script should be executed in the root of an extracted source tarball"
|
|
exit 1
|
|
fi
|
|
|
|
# Find the name based on the version
|
|
if [ -e .is_stable ]; then
|
|
isTesting=$(cat .version | grep "RC\|beta" || true)
|
|
if [ -z "${isTesting}" ]; then
|
|
NAME="stable"
|
|
else
|
|
NAME="testing"
|
|
fi
|
|
else
|
|
NAME=$(cat .version | cut -d- -f2 | cut -d- -f-2)
|
|
fi
|
|
|
|
# Convert the date to a YAML date
|
|
DATE=$(cat .release_date | tr ' ' T | sed 's/TUTC/:00-00:00/')
|
|
VERSION=$(cat .version)
|
|
BASE="openttd-${VERSION}"
|
|
|
|
echo "name: ${NAME}" > manifest.yaml
|
|
echo "date: ${DATE}" >> manifest.yaml
|
|
echo "base: ${BASE}-" >> manifest.yaml
|
|
|
|
error=""
|
|
|
|
FILES=
|
|
DEV_FILES=
|
|
for filename in $(ls ${FOLDER} | grep -v ".txt$\|.md$\|sum$" | sort); do
|
|
case ${filename} in
|
|
*docs* |\
|
|
*source* |\
|
|
*dbg.deb |\
|
|
*pdb.xz )
|
|
DEV_FILES="${DEV_FILES} ${filename}"
|
|
;;
|
|
|
|
*)
|
|
FILES="${FILES} ${filename}"
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# output_files key filename...
|
|
output_files() {
|
|
if [ "$#" -lt 2 ]; then return; fi
|
|
key=$1
|
|
echo "${key}:" >> manifest.yaml
|
|
shift
|
|
while [ "$#" -gt 0 ]; do
|
|
filename=$1
|
|
if [ ! -e ${FOLDER}/${filename}.md5sum ] || [ ! -e ${FOLDER}/${filename}.sha1sum ] || [ ! -e ${FOLDER}/${filename}.sha256sum ]; then
|
|
echo "ERROR: missing checksum file for ${filename}" 1>&2
|
|
error="y"
|
|
shift
|
|
continue
|
|
fi
|
|
|
|
echo "- id: ${filename}" >> manifest.yaml
|
|
echo " size: $(stat -c"%s" ${FOLDER}/${filename})" >> manifest.yaml
|
|
echo " md5sum: $(cat ${FOLDER}/${filename}.md5sum | cut -d\ -f1)" >> manifest.yaml
|
|
echo " sha1sum: $(cat ${FOLDER}/${filename}.sha1sum | cut -d\ -f1)" >> manifest.yaml
|
|
echo " sha256sum: $(cat ${FOLDER}/${filename}.sha256sum | cut -d\ -f1)" >> manifest.yaml
|
|
shift
|
|
done
|
|
}
|
|
|
|
output_files files ${FILES}
|
|
output_files dev_files ${DEV_FILES}
|
|
|
|
if [ -n "${error}" ]; then
|
|
echo "ERROR: exiting due to earlier errors" 1>&2
|
|
exit 1
|
|
fi
|