|
- #!/bin/bash
- #
- # Copyright (c) 2020 Bubble, Inc. All rights reserved. For personal (non-commercial) use, see license: https://getbubblenow.com/bubble-license/
- #
- #
- # Write a model to a bubble server
- #
- # Usage: bmodel [-u/--update-all] model-file
- #
- # -u or --update : if present, every entity that is not otherwise created will be updated
- # model-file : a manifest.json file or a single model JSON file
- #
- # Environment variables
- #
- # BUBBLE_API : which API to use. Default is local (http://127.0.0.1:PORT, where PORT is found in .bubble.env)
- # BUBBLE_USER : account to use. Default is root
- # BUBBLE_PASS : password for account. Default is root
- # BUBBLE_SCRIPTS : location of run.sh script. Default is to assume it is in the same directory containing this script
- #
- SCRIPT="${0}"
- SCRIPT_DIR=$(cd $(dirname ${SCRIPT}) && pwd)
- . ${SCRIPT_DIR}/bubble_common
-
- UPDATE_OPT=""
- if [[ ! -z "${1}" && ( "${1}" == "-u" || "${1}" == "--update-all" ) ]] ; then
- UPDATE_OPT="--update-all"
- shift
- fi
-
- MODEL="${1:?no manifest or model file specified}"
- shift
-
- is_manifest="$(basename ${MODEL} | grep "manifest" | wc -c | tr -d ' ')"
- if [[ ${is_manifest} -gt 0 ]] ; then
- MODEL_OPT="-m"
- else
- MODEL_OPT="-f"
- fi
-
- ${SCRIPT_DIR}/bubble model ${UPDATE_OPT} ${MODEL_OPT} "${MODEL}"
|