initial work on generalized firmware update

This commit is contained in:
Calin Crisan 2017-02-07 23:12:27 +02:00
parent f748ea3e6c
commit b152773f44
5 changed files with 90 additions and 1 deletions

View File

@ -7,3 +7,8 @@ os_ppp="ppp0"
os_networkless="false" os_networkless="false"
os_country="US" os_country="US"
os_firmware_method="github"
os_firmware_repo="ccrisan/motioneyeos"
os_firmware_username=""
os_firmware_password=""

View File

@ -0,0 +1,54 @@
#!/bin/bash
function exit_usage() {
echo "Usage: $0 latest"
echo " $0 current"
echo " $0 upgrade <version|url>"
echo " $0 progress"
exit -1
}
if [ -z "$1" ]; then
exit_usage
fi
function show_latest() {
}
function show_current() {
}
function do_upgrade() {
}
function show_progress() {
}
case "$1" in
latest)
show_latest
;;
current)
show_current
;;
upgrade)
if [ -z "$2" ];
exit_usage
fi
do_upgrade $2
;;
progress)
show_progress
;;
*)
exit_usage
;;
esac

View File

@ -0,0 +1,15 @@
#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <account/project>" 1>&2
exit -1
fi
opts="-s -S -f"
test -n "$BITBUCKET_USERNAME" && opts+=" --user $BITBUCKET_USERNAME:$BITBUCKET_PASSWORD"
url=https://api.bitbucket.org/2.0/repositories/$1/downloads?pagelen=100
jq_expr='.values[] | [{a: .name | capture("[^-]+-(?<b>[^-]+)-(?<c>[^-]+)\\.img\\.?.*"), url: .links.self.href}] | map(.a.c, "false", .a.b, .url) | join("|")'
curl $opts $url | jq --raw-output "$jq_expr"
exit ${PIPESTATUS[0]}

View File

@ -0,0 +1,15 @@
#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <account/project>" 1>&2
exit -1
fi
opts="-s -S -f"
test -n "$GITHUB_USERNAME" && opts+=" --user $GITHUB_USERNAME:$GITHUB_PASSWORD"
url=https://api.github.com/repos/$1/releases
jq_expr='.[] | {version: .name, prerelease: .prerelease | tostring, name: .assets[].name | capture("[^-]+-(?<b>[^-]+)") | flatten, asset: .assets[].browser_download_url} | flatten | join("|")'
curl $opts $url | jq --raw-output "$jq_expr"
exit ${PIPESTATUS[0]}