mirror of
https://github.com/raspberrypi/rpi-eeprom.git
synced 2026-01-20 21:13:36 +08:00
Make make-release more flexible, and add make-imager-release as a wrapper script around it
This commit is contained in:
7
imager/make-imager-release
Executable file
7
imager/make-imager-release
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
script_dir=$(cd "$(dirname "$0")" && pwd)
|
||||||
|
|
||||||
|
${script_dir}/make-release critical 2020-09-03 000138a1 "${script_dir}" release rpi-boot-eeprom-recovery
|
||||||
@@ -6,11 +6,7 @@
|
|||||||
|
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
FIRMWARE_RELEASE="critical"
|
|
||||||
OUTPUT_BASENAME="rpi-boot-eeprom-recovery"
|
|
||||||
|
|
||||||
script_dir=$(cd "$(dirname "$0")" && pwd)
|
script_dir=$(cd "$(dirname "$0")" && pwd)
|
||||||
firmware_dir=${script_dir}/../firmware/${FIRMWARE_RELEASE}
|
|
||||||
tmp_dir=""
|
tmp_dir=""
|
||||||
|
|
||||||
die() {
|
die() {
|
||||||
@@ -40,8 +36,8 @@ gen_release() {
|
|||||||
sha256sum vl805.bin | awk '{print $1}' > vl805.sig
|
sha256sum vl805.bin | awk '{print $1}' > vl805.sig
|
||||||
|
|
||||||
"${script_dir}/../rpi-eeprom-config" \
|
"${script_dir}/../rpi-eeprom-config" \
|
||||||
--config "${script_dir}/${config}" --out pieeprom.bin \
|
--config "${config}" --out pieeprom.bin \
|
||||||
"${firmware_dir}/pieeprom-${pieeprom_version}.bin" || die "Failed to create updated EEPROM config with \"${config}\""
|
"${firmware_dir}/pieeprom-${pieeprom_version}.bin" || die "Failed to create updated EEPROM config with \"${config}\""
|
||||||
sha256sum pieeprom.bin | awk '{print $1}' > pieeprom.sig
|
sha256sum pieeprom.bin | awk '{print $1}' > pieeprom.sig
|
||||||
echo "Creating ${out}"
|
echo "Creating ${out}"
|
||||||
zip "${out}" *
|
zip "${out}" *
|
||||||
@@ -51,27 +47,42 @@ gen_release() {
|
|||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
cat <<EOF
|
cat <<EOF
|
||||||
make-release <pieeprom_version> <vl805_version>
|
make-release <firmware_status> <pieeprom_version> <vl805_version> <config_dir> <output_dir> <output_basename>
|
||||||
|
|
||||||
Example: make-release 2020-09-03 000138a1
|
Example: make-release critical 2020-09-03 000138a1 . release rpi-boot-eeprom-recovery
|
||||||
EOF
|
EOF
|
||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
trap cleanup EXIT
|
trap cleanup EXIT
|
||||||
pieeprom_version="${1}"
|
firmware_status="${1}"
|
||||||
vl805_version="${2}"
|
pieeprom_version="${2}"
|
||||||
|
vl805_version="${3}"
|
||||||
|
config_dir="${4}"
|
||||||
|
output_dir="${5}"
|
||||||
|
output_basename="${6}"
|
||||||
|
|
||||||
|
[ -n "${firmware_status}" ] || usage
|
||||||
[ -n "${pieeprom_version}" ] || usage
|
[ -n "${pieeprom_version}" ] || usage
|
||||||
[ -n "${vl805_version}" ] || usage
|
[ -n "${vl805_version}" ] || usage
|
||||||
[ -f "${firmware_dir}/pieeprom-${pieeprom_version}.bin" ] || (echo "${FIRMWARE_RELEASE}/pieeprom-${pieeprom_version}.bin doesn't exist" && exit 1)
|
[ -n "${config_dir}" ] || usage
|
||||||
[ -f "${firmware_dir}/vl805-${vl805_version}.bin" ] || (echo "${FIRMWARE_RELEASE}/vl805-${vl805_version}.bin doesn't exist" && exit 1)
|
[ -n "${output_dir}" ] || usage
|
||||||
|
[ -n "${output_basename}" ] || usage
|
||||||
|
|
||||||
|
firmware_dir=${script_dir}/../firmware/${firmware_status}
|
||||||
|
[ -d "${firmware_dir}" ] || (echo "${firmware_dir} doesn't exist" && exit 1)
|
||||||
|
[ -f "${firmware_dir}/pieeprom-${pieeprom_version}.bin" ] || (echo "${firmware_status}/pieeprom-${pieeprom_version}.bin doesn't exist" && exit 1)
|
||||||
|
[ -f "${firmware_dir}/vl805-${vl805_version}.bin" ] || (echo "${firmware_status}/vl805-${vl805_version}.bin doesn't exist" && exit 1)
|
||||||
|
[ -d "${config_dir}" ] || (echo "${config_dir} doesn't exist" && exit 1)
|
||||||
tag="${pieeprom_version}-vl805-${vl805_version}"
|
tag="${pieeprom_version}-vl805-${vl805_version}"
|
||||||
release_dir="${script_dir}/release"
|
# use realpath to ensure paths are absolute
|
||||||
rm -rf "${release_dir}"
|
config_dir=$(realpath "${config_dir}")
|
||||||
mkdir "${release_dir}"
|
output_dir=$(realpath "${output_dir}")
|
||||||
|
rm -rf "${output_dir}"
|
||||||
|
mkdir "${output_dir}"
|
||||||
|
|
||||||
# Build the different boot priority flavours
|
# Build the different boot priority flavours
|
||||||
gen_release boot-conf-default.txt "${release_dir}/${OUTPUT_BASENAME}-${tag}.zip"
|
gen_release "${config_dir}/boot-conf-default.txt" "${output_dir}/${output_basename}-${tag}.zip"
|
||||||
for variant in sd usb network; do
|
for variant in sd usb network; do
|
||||||
gen_release boot-conf-${variant}.txt "${release_dir}/${OUTPUT_BASENAME}-${tag}-${variant}.zip"
|
gen_release "${config_dir}/boot-conf-${variant}.txt" "${output_dir}/${output_basename}-${tag}-${variant}.zip"
|
||||||
done
|
done
|
||||||
|
|||||||
Reference in New Issue
Block a user