scala/fs2json/amm
author Tomas Zeman <tomas@functionals.cz>
Tue, 15 Dec 2020 09:22:21 +0100
changeset 60 4267602e8494
permissions -rwxr-xr-x
fs2json: directory structure -> json object converter. E.g. to be used instead of erica / py-Couchapp (interaction with couchdb is left to the user).

#!/usr/bin/env sh

# This is a wrapper script, that automatically download ammonite from GitHub release pages
# You can give the required mill version with AMM_VERSION env variable
# If no version is given, it falls back to the value of DEFAULT_AMM_VERSION
DEFAULT_AMM_VERSION=2.3.8

set -e

if [ -z "$AMM_VERSION" ] ; then
  AMM_VERSION=$DEFAULT_AMM_VERSION
fi

AMM_DOWNLOAD_PATH="$HOME/.ammonite/download"
AMM_EXEC_PATH="${AMM_DOWNLOAD_PATH}/$AMM_VERSION"

if [ ! -x "$AMM_EXEC_PATH" ] ; then
  mkdir -p $AMM_DOWNLOAD_PATH
  DOWNLOAD_FILE=$AMM_EXEC_PATH-tmp-download
  AMM_DOWNLOAD_URL="https://github.com/lihaoyi/ammonite/releases/download/${AMM_VERSION%%-*}/2.13-$AMM_VERSION"
  curl --fail -L -o "$DOWNLOAD_FILE" "$AMM_DOWNLOAD_URL"
  chmod +x "$DOWNLOAD_FILE"
  mv "$DOWNLOAD_FILE" "$AMM_EXEC_PATH"
  unset DOWNLOAD_FILE
  unset AMM_DOWNLOAD_URL
fi

unset AMM_DOWNLOAD_PATH
unset AMM_VERSION

exec $AMM_EXEC_PATH "$@"