Files
owncast/build/gen-api.sh
T
Gabe KangasandGitHub d80a7246e1 Split out tools from main go.mod into tools/ (#4734)
* Split out tools from main go.mod into tools/ and create Makefile to support running them manually

* chore(ci): linter error

* fix(ci): fix the pre-commit and pre-push hooks
2026-01-13 16:17:35 -08:00

36 lines
870 B
Bash
Executable File

#!/bin/bash
# Tools are managed in tools/go.mod and installed to ./bin
# setup
package="generated"
folderPath="webserver/handlers/generated"
specPath="openapi.yaml"
# validate scripts are installed
if ! command -v redocly &>/dev/null; then
echo "Please install \`redocly cli\` before running this script: npm install -g @redocly/cli"
exit 1
fi
# validate schema
npx redocly lint $specPath
if [ $? -ne 0 ]; then
echo "Open API specification is not valid"
exit 1
fi
# cleanup
rm -r $folderPath
mkdir -p $folderPath
# install oapi-codegen
GOBIN=$(pwd)/bin go install -C tools github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen
# codegen
./bin/oapi-codegen -generate types -o $folderPath/$package-types.gen.go -package $package $specPath
./bin/oapi-codegen -generate "chi-server" -o $folderPath/$package.gen.go -package $package $specPath
# go
go mod tidy