Version 0.2 finally first commit
This commit is contained in:
49
scripts/update-variables.sh
Normal file
49
scripts/update-variables.sh
Normal file
@@ -0,0 +1,49 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Updates metadata using variables in template_vars.env
|
||||
# To be used for updating already defined metadata in an
|
||||
# existing project, when the values in the template_vars.env
|
||||
# file have changed
|
||||
# Currently updates information for project version,
|
||||
# project description, and project keywords
|
||||
|
||||
# TODO: Add updating of additional metadata
|
||||
|
||||
# save to restore working directory later
|
||||
ORIGPATH="$(pwd)"
|
||||
|
||||
# configure path information and working directory
|
||||
SCRIPTPATH="$0"
|
||||
cd "$(dirname ${SCRIPTPATH})/.." || exit 253
|
||||
PROJECTDIR="$(pwd)"
|
||||
|
||||
# source template_vars.env as defined in SOURCEFILE
|
||||
SOURCEFILE="${PROJECTDIR}/template_vars.env"
|
||||
if [ -f "${SOURCEFILE}" ]; then
|
||||
# shellcheck disable=SC1090
|
||||
. "$SOURCEFILE"
|
||||
else
|
||||
echo "Error: environment variables file not found: ${SOURCEFILE}"
|
||||
exit 253
|
||||
fi
|
||||
|
||||
KW=$(echo "${TPL_PROJECTKEYWORDS}" | python -c 'import sys;import re;print( ",".join(["\"{}\"".format(re.sub("[^a-zA-Z01-9 ]","",e.strip())) for e in (sys.stdin.read()).split(",") if e.strip()]) )')
|
||||
|
||||
SED_CMD=$(which sed)
|
||||
|
||||
$SED_CMD -E "s/version\s*=\s*\"[0-9\.\-\_a-zA-Z]+\"/version = \"${TPL_PROJECTVERSION}\"/g" "${PROJECTDIR}/pyproject.toml"
|
||||
$SED_CMD -E "s/description\s*=\s*\".*?\"/description = \"${TPL_PROJECTDESCRIPTION}\"/g" "${PROJECTDIR}/pyproject.toml"
|
||||
$SED_CMD -E "s/^#?\s*keywords\s*=\s*\[.*\]/keywords = [\"${KW}\"]/g" "${PROJECTDIR}/pyproject.toml"
|
||||
|
||||
$SED_CMD -i "s/^__version__ = .*/__version__ = \"${TPL_PROJECTVERSION}\"/" "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/__init__.py"
|
||||
$SED_CMD -i "s/^__author__ = .*/__author__ = \"${TPL_COMPANYNAME}(${TPL_AUTHORNAME})\"/" "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/__init__.py"
|
||||
$SED_CMD -i "s/^__email__ = .*/__email__ = \"${TPL_AUTHOREMAIL}\"/" "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/__init__.py"
|
||||
$SED_CMD -i "s/^__projectDescription__ = .*/__projectDescription__ = \"${TPL_PROJECTDESCRIPTION}\"/" "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/__init__.py"
|
||||
$SED_CMD -i "s/^__description__ = .*/__description__ = \"${TPL_PROJECTDESCRIPTION}\"/" "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/__init__.py"
|
||||
|
||||
# release = '0.0.1'
|
||||
$SED_CMD -i "s/^\s*release\s*=.*?/release = '${TPL_PROJECTVERSION}'/" "${PROJECTDIR}/docs/conf.py"
|
||||
|
||||
echo "${TPL_PROJECTVERSION}" > "${PROJECTDIR}/src/${TPL_PROJECTPREFIX}${TPL_PROJECTNAME}/version.txt"
|
||||
|
||||
cd "${ORIGPATH}" || exit 252
|
||||
Reference in New Issue
Block a user