Files
windmill/go-client/build.sh
pyranota 6775191f09 fix(go): fix go client (#6561)
* add jq to flake

Signed-off-by: pyranota <pyra@duck.com>

* make build.sh compatible with non-FHS complient systems

Signed-off-by: pyranota <pyra@duck.com>

* fix client

Signed-off-by: pyranota <pyra@duck.com>

---------

Signed-off-by: pyranota <pyra@duck.com>
2025-09-09 14:19:54 +00:00

22 lines
1.3 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
mkdir openapi
cp ../backend/windmill-api/openapi.yaml openapi/openapi.yaml
# sed -i '/ enum:/ { N; / \[/ { N; /"S3Storage",/ { N; /"AzureBlobStorage",/ { N; /"AzureWorkloadIdentity",/ { N; /"S3AwsOidc",/ { N; / \]/d; }}}}}}' openapi/openapi.yaml
# sed -z 's/ extra_params:\n additionalProperties:\n type: string/ extra_params: {}/' openapi/openapi.yaml > openapi/openapi3.yaml
# sed -z 's/ enum: \[script, failure, trigger, command, approval\]//' openapi/openapi1.yaml > openapi/openapi2.yaml
# sed -z 's/ enum: \[deno, python3, go, bash\]//' openapi/openapi2.yaml > openapi/openapi3.yaml
npx @redocly/openapi-cli@latest bundle openapi/openapi.yaml --ext json > openapi-bundled.json
cat openapi-bundled.json | jq 'del(.paths."/oauth/list_connects")' | jq 'del(.components.schemas.Job.discriminator)' > openapi-bundled-cleaned.json
rm -rf api/ || true
mkdir -p api
go install github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen@v2.4.1
~/go/bin/oapi-codegen -old-config-style --package=windmill_api --generate=types,client openapi-bundled-cleaned.json > api/windmill_api.gen.go
rm -rf openapi/
rm openapi*