Files
windmill/python-client/dev.nu
Alexander Petric e437764f5e adding python client
2024-12-12 00:11:43 +01:00

55 lines
1.2 KiB
Nu
Executable File

#! /usr/bin/env nu
let cache = "/tmp/windmill/cache/python_311/"
# Clean cache
def "main clean" [] {
^rm -rf ($cache ++ "/wmill*")
}
# Watch changes in directory and autopatch (watchexec required)
def "main watch" [] {
# watchexec -w ../backend/windmill-api/openapi.yaml './dev.nu -g' &
# TODO: Watch openapi.yaml
^watchexec ./dev.nu -p
}
# Build client and move to windmill's cache
# To build you will need nushell and tsc (typescript compiler)
# If none arguments selected, all will be turned on
# If any argument specified, all others will be disabled
def main [
--gen(-g) # Generate code (OpenAPI codegen)
--compile(-c) # Compile code (TS >> JS)
--patch(-p) # Patch
] {
let do_all = not ($gen or $compile or $patch);
# TODO: Gen windmill-client.js
# TODO: Gen bundle? (README_DEV.md)
if ($do_all or $gen) {
print "Generating code from openapi.yml..."
./build.sh
}
if ($do_all or $patch) {
print "Patching cache..."
# Clean up in all versions
rm -rf ($cache ++ wmill*/wmill/*)
# Copy files from local ./dist to every wm-client version in cache
ls /tmp/windmill/cache/python_311/wmill* | each {
|i|
let path = $i | get name;
^cp -r wmill/wmill/* ($path ++ "/wmill")
}
}
print Done!
}