The wmill_pg package (psycopg2 wrapper for running PostgreSQL queries) has been fully replaced by Windmill's native PostgreSQL support. Remove the package directory and all references from build, publish, install, version, LSP, and dependabot configs. Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
68 lines
2.3 KiB
Bash
Executable File
68 lines
2.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
sed() {
|
|
gsed "$@"
|
|
}
|
|
fi
|
|
|
|
mkdir openapi || true
|
|
# cp ../backend/windmill-api/openapi.yaml openapi/openapi.yaml
|
|
|
|
LEGACY_WILDCARD="\$ref: \"..\/..\/openflow.openapi.yaml#\/components\/schemas\""
|
|
# We will need to use old syntax of openapi to maintain compatability with previous windmill-api versions.
|
|
# If we use new format, many models use another namespace, thus make it not fully compatible with old versions
|
|
|
|
# Replace everything between markers with legacy wildcard
|
|
sed -z "
|
|
s/# -- INLINE START --\n.*# -- INLINE END --\n/$LEGACY_WILDCARD\n/g;
|
|
" ../backend/windmill-api/openapi.yaml > openapi/openapi.yaml
|
|
|
|
npx @redocly/openapi-cli@latest bundle openapi/openapi.yaml > openapi-bundled.yaml
|
|
|
|
sed -z 's/FlowModuleValue:/FlowModuleValue2:/' openapi-bundled.yaml > openapi-decycled.yaml
|
|
|
|
echo " FlowModuleValue: {}" >> openapi-decycled.yaml
|
|
npx @redocly/openapi-cli@latest bundle openapi-decycled.yaml --ext json -d > openapi-deref.json
|
|
|
|
sed '$d' .gitignore > .gitignore2
|
|
mv .gitignore2 .gitignore
|
|
|
|
rm -rf windmill-api/ || true
|
|
openapi-python-client generate --config $PWD/python-gen.yaml --path openapi-deref.json
|
|
echo "" > windmill-api/windmill_api/models/__init__.py
|
|
rm -rf openapi/
|
|
rm openapi*
|
|
|
|
cp LICENSE windmill-api/
|
|
|
|
sed -i '5 i license = "Apache-2.0"' windmill-api/pyproject.toml
|
|
|
|
sed -i 's/authors = \[\]/authors = \["Ruben Fiszel <ruben@windmill.dev>"\]/g' windmill-api/pyproject.toml
|
|
|
|
echo "# Autogenerated Windmill OpenApi Client" >> windmill-api/README.md.tmp
|
|
echo "This is the raw autogenerated api client. You are most likely more interested \
|
|
in [wmill](https://pypi.org/project/wmill/) which leverages this client to offer an \
|
|
user friendly experience. We use \
|
|
[this openapi python client generator](https://github.com/openapi-generators/openapi-python-client/)"\
|
|
>> windmill-api/README.md.tmp
|
|
|
|
echo "" >> windmill-api/README.md.tmp
|
|
|
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
tail -r windmill-api/README.md | tail -n +14 | tail -r >> windmill-api/README.md.tmp
|
|
else
|
|
head -n -13 windmill-api/README.md >> windmill-api/README.md.tmp
|
|
fi
|
|
|
|
mv windmill-api/README.md.tmp windmill-api/README.md
|
|
|
|
cd windmill-api && poetry build
|
|
cd ../wmill && poetry build
|
|
cd .. && echo "windmill-api/" >> .gitignore
|
|
|
|
# Build documentation (similar to typescript-client/build_typedoc.sh)
|
|
./build_pdoc.sh
|