update-tarball.sh: allow passing hardcoded date and hash
This commit is contained in:
parent
498742e649
commit
ede8d7f7db
@ -1,4 +1,4 @@
|
||||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
user="tianocore"
|
||||
repo="edk2"
|
||||
@ -8,21 +8,30 @@ uri="https://github.com/${user}/${repo}"
|
||||
api="${uri/github.com/api.github.com/repos}"
|
||||
tar="${uri/github.com/codeload.github.com}/legacy.tar.gz"
|
||||
|
||||
hash=$(curl -s "${api}/git/refs/heads/${branch}" | grep '"sha"' | cut -d'"' -f4)
|
||||
if test "$hash" = ""; then
|
||||
if test $# -ge 1; then
|
||||
hash=$1
|
||||
short=$1
|
||||
else
|
||||
hash=$(curl -s "${api}/git/refs/heads/${branch}" | grep '"sha"' | cut -d'"' -f4)
|
||||
if test "$hash" = ""; then
|
||||
echo "# failed to fetch $branch hash"
|
||||
exit 1
|
||||
fi
|
||||
short=$(echo $hash | sed -e 's/^\(.......\).*/\1/')
|
||||
fi
|
||||
short=$(echo $hash | sed -e 's/^\(.......\).*/\1/')
|
||||
|
||||
date=$(curl -s "${api}/git/commits/$hash" | awk '
|
||||
/"committer"/ { c=1 }
|
||||
/"date"/ { if (c) { print } }
|
||||
' | cut -d'"' -f4)
|
||||
date="${date%T*}"
|
||||
date="${date//-/}"
|
||||
if test $# = 2; then
|
||||
date=$2
|
||||
else
|
||||
date=$(curl -s "${api}/git/commits/$hash" | awk '
|
||||
/"committer"/ { c=1 }
|
||||
/"date"/ { if (c) { print } }
|
||||
' | cut -d'"' -f4)
|
||||
date="${date%T*}"
|
||||
date="${date//-/}"
|
||||
fi
|
||||
|
||||
name="${repo}-${date}-${short}.tar.gz"
|
||||
name="${repo}-${date}-${short}.tar.xz"
|
||||
|
||||
if test -f "$name"; then
|
||||
echo "# exists: $name"
|
||||
@ -41,5 +50,5 @@ echo
|
||||
echo "# cleanup ..."
|
||||
rm -vf ${repo}-*.tar*
|
||||
echo "# fetching $name ..."
|
||||
curl "$tar/$hash" > "$name"
|
||||
curl "$tar/$hash" | zcat | xz -9e > "$name"
|
||||
exit 0
|
||||
|
Loading…
Reference in New Issue
Block a user