Files
Jay Brown 451da3d26d Merged in feature/service-accounts-1 (pull request #227)
Support for service accounts with static credentials

* feature complete

* tests and docs

* lint fix
2026-05-21 19:40:04 +00:00

48 lines
1.3 KiB
YAML

---
# https://taskfile.dev
version: "3"
tasks:
lint:
desc: "Lint every OpenAPI spec under serviceAPIs/ with vacuum"
cmds:
- |
for file in serviceAPIs/*.yml serviceAPIs/*.yaml; do
if [[ -f "$file" ]]; then
vacuum lint $file -b -d --no-clip -z -n info -s \
-r vaccum.conf.yaml {{.CLI_ARGS}}
fi
done
generate:
desc: "Generate Go server (./api) and client (./pkg) code from OpenAPI specs"
cmds:
- |
generateGo() {
mkdir -p $2
oapi-codegen \
-generate $4 \
-config .openapi.yml \
-package $1 \
-o $2/api.gen.go \
$3
}
# Below3 the gererateGo for ./pkg is the public client package
# and ./api is the internal server package
for file in serviceAPIs/*.yml serviceAPIs/*.yaml; do
if [[ -f "$file" ]]; then
service=$(basename "$file")
service=${service%.*}
service_lower=${service,,}
# Client Code
generateGo $service_lower ./pkg/$service $file \
"models,client"
# Server Code
generateGo $service_lower ./api/$service $file \
"models,embedded-spec,echo-server"
fi
done