mirror of
https://github.com/LukeHagar/discoursejs.git
synced 2025-12-06 04:19:37 +00:00
27 lines
917 B
Makefile
27 lines
917 B
Makefile
.PHONY: *
|
|
|
|
all: speakeasy
|
|
|
|
|
|
speakeasy: check-speakeasy
|
|
speakeasy generate sdk --lang typescript -o . -s ./openapi.yaml
|
|
|
|
speakeasy-validate: check-speakeasy
|
|
speakeasy validate openapi -s ./openapi.yaml
|
|
|
|
openapi:
|
|
curl https://raw.githubusercontent.com/discourse/discourse_api_docs/main/openapi.yml > ./openapi.yaml
|
|
|
|
# This will replace the generation source in your workflow file with your local schema path
|
|
generate-from-local:
|
|
@if ! which sed >/dev/null; then \
|
|
echo "sed is not installed. Please install it using the following command:"; \
|
|
echo "For Ubuntu/Debian: apt-get install sed"; \
|
|
echo "For macOS: sed is pre-installed"; \
|
|
exit 1; \
|
|
fi
|
|
@sed -i '' '/openapi_docs: |/{n;s|-.*|- ./openapi.yaml|;}' ./.github/workflows/speakeasy_sdk_generation.yml
|
|
|
|
check-speakeasy:
|
|
@command -v speakeasy >/dev/null 2>&1 || { echo >&2 "speakeasy CLI is not installed. Please install before continuing."; exit 1; }
|