7f14edd039
=====================================================================
Excited to bring V5 to life. This includes some BREAKING CHANGES to
several aspects of ZSH-type scwrypts. Please refer to the readme
for upgrade details (specifically docs/upgrade/v4-to-v5.md)
--- New Features -------------------------
- ZSH testing library with basic mock capabilities
- new scwrypts environment file format includes metadata and more
advanced features like optional parent env overrides, selection
inheritence, and improved structurual flexibility
- speedup cache for non-CI runs of ZSH-type scwrypts
- ${scwryptsmodule} syntax now allows a consistent unique-naming
scheme for functions in ZSH-type scwrypts while providing better
insight into origin of API calls in other modules
- reusable, case-statement-driven argument parsers in ZSH-type scwrypts
--- Changes ------------------------------
- several utility function renames in ZSH-type scwrypts to improve
consistency
- documentation comments included in ZSH libraries
- ZSH-type scwrypts now allow library modules to live alongside
executables
(zsh/lib still supported; autodetection determines default)
--- Bug Fixes ----------------------------
- hardened environment checking for REQUIRED_ENV variables; this removes
the ability to overwrite variables in local function contexts
55 lines
1.0 KiB
Bash
55 lines
1.0 KiB
Bash
#####################################################################
|
|
|
|
use helm/validate
|
|
use scwrypts/get-realpath
|
|
|
|
#####################################################################
|
|
|
|
${scwryptsmodule}() {
|
|
local PARSED=0
|
|
|
|
case $1 in
|
|
( -t | --template-filename )
|
|
PARSED=2
|
|
TEMPLATE_FILENAME="$(scwrypts.get-realpath "$2")"
|
|
;;
|
|
esac
|
|
|
|
return ${PARSED}
|
|
}
|
|
|
|
${scwryptsmodule}.locals() {
|
|
local TEMPLATE_FILENAME
|
|
local ARGS=()
|
|
|
|
# configured by helm.validate
|
|
local CHART_NAME
|
|
local CHART_ROOT
|
|
local HELM_ARGS=()
|
|
}
|
|
|
|
${scwryptsmodule}.usage() {
|
|
USAGE__options+='
|
|
-t, --template-filename path to a template/*.yaml file of a helm chart
|
|
'
|
|
|
|
USAGE__args+='
|
|
\$@ additional args are forwarded to helm
|
|
'
|
|
}
|
|
|
|
${scwryptsmodule}.validate() {
|
|
helm.validate || return 1
|
|
|
|
HELM_ARGS+=(${ARGS[@]})
|
|
|
|
echo.debug "
|
|
template filename : ${TEMPLATE_FILENAME}
|
|
chart name : ${CHART_NAME}
|
|
chart root : ${CHART_ROOT}
|
|
helm args : ${HELM_ARGS[@]}
|
|
"
|
|
}
|
|
|
|
#####################################################################
|