2
0
mirror of https://github.com/VinylDNS/vinyldns synced 2025-08-21 17:37:15 +00:00
vinyldns/build/assemble_api.sh
Emerle, Ryan e1743e5342
Updates
- Simplify build config
- Add TTY check to Makefiles for running Docker containers
- Update `fs2` to latest patch
- Update `sbt-assembly` plugin
- Update portal to remove chatty console
- Update portal scripts to add license header
- Update prepare-portal/Gruntfile to combine js and css where applicable
- Remove unused gentelella files from final portal artifact
- Add support for shared zones to quickstart/docker images
- Consolidate built artifacts in `artifacts/` to make eventual release easier
2021-11-02 17:06:24 -04:00

50 lines
1.1 KiB
Bash

#!/usr/bin/env bash
#
# This script will build the vinyldns-api.jar file using Docker. The file will
# be placed in the configured location (currently `artifacts/` off of the root)
#
set -euo pipefail
DIR=$(
cd "$(dirname "$0")"
pwd -P
)
usage() {
echo "USAGE: assemble_api.sh [options]"
echo -e "\t-n, --no-clean do no perform a clean before assembling the jar"
echo -e "\t-u, --update update the underlying docker image"
}
SKIP_CLEAN=0
UPDATE_DOCKER=0
while [[ $# -gt 0 ]]; do
case "$1" in
--no-clean | -n)
SKIP_CLEAN=1
shift
;;
--update | -u)
UPDATE_DOCKER=1
shift
;;
*)
usage
exit 1
;;
esac
done
if ! [[ $SKIP_CLEAN -eq 1 ]]; then
"${DIR}/deep_clean.sh"
rm "${DIR}/../artifacts/vinyldns-api.jar" &> /dev/null || true
fi
if [[ $UPDATE_DOCKER -eq 1 ]]; then
echo "Pulling latest version of 'vinyldns/build:base-test-integration'"
docker pull vinyldns/build:base-test-integration
fi
echo "Building VinylDNS API artifact"
docker run -i --rm -e RUN_SERVICES=none -v "${DIR}/..:/build" vinyldns/build:base-test-integration -- sbt 'api/assembly'