MAJRO CHANGES!@!!@#

This commit is contained in:
j
2025-12-29 23:35:57 +13:00
parent a183b6814a
commit 7a406168e7
6 changed files with 121 additions and 17 deletions

View File

@@ -0,0 +1,64 @@
#!/bin/bash
# Dropshell Run
# Usage:
# ds_run.sh SERVER SERVICE COMMAND [param1] [param2] ...
# //------------------------------------------------------------------------------------------------
# // remote paths
# // DROPSHELL_DIR
# // |-- server.json
# // |-- backups
# // |-- temp_files
# // |-- agent
# // | |-- bb64
# // | |-- (other agent files)
# // |-- services
# // |-- service name
# // |-- config
# // |-- service.env (actual service config)
# // |-- template
# // |-- (script files)
# // |-- template_info.env
# // |-- config
# // |-- service.env (default service config)
# // |-- (other template/example config files)
# read SERVER, SERVICE from the command line args
export SERVER=TODO
export SERVICE=TODO
export DSCOMMAND=TODO
export DOCKER_CLI_HINTS=false
# we are in the agent directory.
export AGENT_PATH="$(cd "$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" && pwd)"
export DROPSHELL_DIR=TODO
export CONFIG_PATH="${DROPSHELL_DIR}/services/${SERVICE}/config"
source "${AGENT_PATH}/commmon.sh"
[ -d ${CONFIG_PATH} ] || _die "Service ${SERVICE} does not exist on the server."
export TEMPLATE_INFO_ENV="${DROPSHELL_DIR}/services/${SERVICE}/template/template_info.env"
[ -f ${TEMPLATE_INFO_ENV} ] || _die "Couldn't find template_info.env at ${TEMPLATE_INFO_ENV}"
#read in the TEMPLATE_INFO_ENV, exporting all variables
source "${TEMPLATE_INFO_ENV}"
export SERVICE_ENV="${DROPSHELL_DIR}/services/${SERVICE}/config/service.env"
[ -f ${SERVICE_ENV} ] || _die "Couldn't find service.env at ${SERVICE_ENV}"
# read in the SERVICE_ENV, exporting all varialbes
source "${SERVICE_ENV}"
## Run the command
export COMMAND_TO_RUN="${DROPSHELL_DIR}/services/${SERVICE}/template/${DSCOMMAND}"
[ -f "${COMMAND_TO_RUN}" ] || COMMAND_TO_RUN="${COMMAND_TO_RUN}.sh"
[ -f "${COMMAND_TO_RUN}" ] || _die "Couldn't find the command to run: ${COMMAND_TO_RUN}"
# ensure all variables are in the environment of the command being run!!
${COMMAND_TO_RUN}