Arch Builder INIT
This commit is contained in:
Executable
+41
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
repo="${AYUGRAM_REPO:-AyuGram/AyuGramDesktop}"
|
||||
tag="${1:?release tag required}"
|
||||
version="${tag#v}"
|
||||
|
||||
tmp="$(mktemp -d)"
|
||||
trap 'rm -rf "$tmp"' EXIT
|
||||
|
||||
archive="${tmp}/AyuGramDesktop-${version}-full.tar.gz"
|
||||
url="https://github.com/${repo}/releases/download/${tag}/AyuGramDesktop-${version}-full.tar.gz"
|
||||
|
||||
echo "Downloading upstream full source archive to resolve its pinned tde2e..." >&2
|
||||
curl -fsSL --retry 5 --retry-all-errors -o "$archive" "$url"
|
||||
|
||||
dockerfile="$(tar -tzf "$archive" | grep -E '(^|/)Telegram/build/docker/centos_env/Dockerfile$' | head -n1 || true)"
|
||||
|
||||
if [[ -z "$dockerfile" ]]; then
|
||||
echo "Could not find upstream centos_env Dockerfile in the full release archive." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
content="$(tar -xOf "$archive" "$dockerfile")"
|
||||
|
||||
# Upstream's build environment pins tdlib/tde2e to an exact commit.
|
||||
td_commit="$(awk '
|
||||
/git remote add origin https:\/\/github.com\/tdlib\/td\.git/ { in_td=1; next }
|
||||
in_td && /git fetch --depth=1 origin [0-9a-f]{40}/ {
|
||||
match($0, /[0-9a-f]{40}/, m)
|
||||
print m[0]
|
||||
exit
|
||||
}
|
||||
' <<<"$content")"
|
||||
|
||||
if [[ -z "$td_commit" ]]; then
|
||||
echo "Could not resolve tdlib/tde2e commit from upstream build Dockerfile." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "$td_commit"
|
||||
Reference in New Issue
Block a user