offline_signing: add subcommand to upload to roller

This commit is contained in:
Benjamin Gilbert 2017-09-05 17:01:48 -07:00
parent 3ed15a8762
commit 9c93dcb272

View File

@ -27,18 +27,61 @@ download() {
popd >/dev/null
}
upload() {
local channel="$1"
local version="$2"
local board="$3"
local payload="${BASEDIR}/${board}/${version}/coreos_production_update.gz"
if [[ ! -e "${payload}" ]]; then
echo "No such file: ${payload}" >&2
exit 1
fi
declare -A appid
appid[amd64-usr]=e96281a6-d1af-4bde-9a0a-97b76e56dc57
appid[arm64-usr]=103867da-e3a2-4c92-b0b3-7fbd7f7d8b71
"$(dirname $0)/../core_roller_upload" \
--user="${ROLLER_USERNAME}" \
--api_key="${ROLLER_API_KEY}" \
--app_id="${appid[${board}]}" \
--board="${board}" \
--version="${version}" \
--payload="${payload}"
}
usage() {
echo "Usage: $0 <ARTIFACT-DIR> [{-a|-b|-s} <VERSION>]..." >&2
echo "Usage: $0 {download|upload} <ARTIFACT-DIR> [{-a|-b|-s} <VERSION>]..." >&2
exit 1
}
CMD=download
# Parse base arguments.
CMD="${1:-}"
BASEDIR="${2:-}"
shift 2 ||:
case "${CMD}" in
download)
;;
upload)
if [[ -e "${HOME}/.config/roller.conf" ]]; then
. "${HOME}/.config/roller.conf"
fi
if [[ -z "${ROLLER_USERNAME:-}" || -z "${ROLLER_API_KEY:-}" ]]; then
echo 'Missing $ROLLER_USERNAME or $ROLLER_API_KEY.' >&2
echo "Consider adding shell assignments to ~/.config/roller.conf." >&2
exit 1
fi
;;
*)
usage
;;
esac
BASEDIR="${1:-}"
if [[ -z "${BASEDIR}" ]]; then
usage
fi
shift
if [[ -d "${BASEDIR}" && ! -O "${BASEDIR}" ]]; then
echo "Fixing ownership of ${BASEDIR}..."