# XXX: This should be removed when elixir's releases get custom command support
detect_flavour() {
- arch="$(uname -m)"
- if [ "$arch" = "x86_64" ]; then
- arch="amd64"
- elif [ "$arch" = "armv7l" ]; then
- arch="arm"
- elif [ "$arch" = "aarch64" ]; then
- arch="arm64"
- else
- echo "Unsupported arch: $arch" >&2
- exit 1
- fi
-
- if getconf GNU_LIBC_VERSION >/dev/null; then
- libc_postfix=""
- elif [ "$(ldd 2>&1 | head -c 9)" = "musl libc" ]; then
- libc_postfix="-musl"
- elif [ "$(find /lib/libc.musl* | wc -l)" ]; then
- libc_postfix="-musl"
- else
- echo "Unsupported libc" >&2
- exit 1
- fi
-
- echo "$arch$libc_postfix"
+ arch="amd64"
+ # Special cases
+ if grep -qe "VERSION_CODENAME=jammy" /etc/os-release; then
+ echo "$arch-ubuntu-jammy"
+ else
+ if getconf GNU_LIBC_VERSION >/dev/null; then
+ libc_postfix=""
+ elif [ "$(ldd 2>&1 | head -c 9)" = "musl libc" ]; then
+ libc_postfix="-musl"
+ elif [ "$(find /lib/libc.musl* | wc -l)" ]; then
+ libc_postfix="-musl"
+ else
+ echo "Unsupported libc" >&2
+ exit 1
+ fi
+
+ echo "$arch$libc_postfix"
+ fi
}
detect_branch() {
done
RELEASE_ROOT=$(dirname "$SCRIPTPATH")
- uri="https://git.pleroma.social"
+ uri="https://akkoma-updates.s3-website.fr-par.scw.cloud"
project_id="2"
project_branch="${BRANCH:-$(detect_branch)}"
flavour="${FLAVOUR:-$(detect_flavour)}"
tmp="${TMP_DIR:-/tmp}"
artifact="$tmp/pleroma.zip"
- full_uri="${FULL_URI:-${uri}/api/v4/projects/${project_id}/jobs/artifacts/${project_branch}/download?job=${flavour}}"
+ full_uri="${FULL_URI:-${uri}/${project_branch}/akkoma-${flavour}}.zip"
echo "Downloading the artifact from ${full_uri} to ${artifact}"
curl "$full_uri" -o "${artifact}"
echo "Unpacking ${artifact} to ${tmp}"
unzip -q "$artifact" -d "$tmp"
+ echo "Backing up erlang cookie"
+ erlang_cookie=$(cat $RELEASE_ROOT/releases/COOKIE)
+ echo "Cookie: $erlang_cookie"
echo "Copying files over to $RELEASE_ROOT"
if [ "$NO_RM" = false ]; then
echo "Removing files from the previous release"
echo "Removing temporary files"
rm -r "$tmp/release"
rm "$artifact"
+ echo "Restoring erlang cookie"
+ echo $erlang_cookie > $RELEASE_ROOT/releases/COOKIE
echo "Done! Please refer to the changelog/release notes for changes and update instructions"
+ echo "You probably also want to update your frontend!"
set +e
}