sledge
sledge•5mo ago

Migrating content to another Windmill instance

I have a corp client that is taking forever to make a decision on how they're going to license Windmill. In the meantime, I've been building their integrations using a free cloud instance. I'm curious, is there a documented process for migrating all content from one Windmill instance to another if that becomes a necessity?
4 Replies
rubenf
rubenf•5mo ago
@sledge the CLI sync is able to do 99% of what you need
sledge
sledge•4mo ago
So @rubenf I have a bunch of scripts in my locally running WM instance that I also have synced to a local folder via wmill sync pull and pushed to a git repo (not using windmill git sync). My client now has their instance of WM up and running and I want to migrate all of the scripts. You mention that the cli sync is able to do 99% of that ... do I just need to create a new workspace on the new instance then do a wmill sync push from the git cloned folder after logging into the new workspace with cli?
rubenf
rubenf•4mo ago
Well, yes? Did you try 😄
sledge
sledge•4mo ago
Yes, seems to have worked. Unfortunately this instance seems to have some other issues. On mine I did not have to do anything with CORS. I'm able to access it without issue by name - on my tailscale network, from my browser app. However, this new instance that my client setup is failing due to CORS issues. So I need to figure that out before I can confirm that the wmill sync pull / push worked. Ok - problem was my app API URL was configurable and when I dropped in the URL for the new server I forgot to include the /api/w/workspace-name portion and Windmill was returning a different set of CORS headers therefore (for invalid routes). The confusing thing was that the browser dev tools said the server was "Caddy" - so I thought I had a caddy server problem. I suppose it says that because I'm using the Caddy reverse proxy. Therefore, in answer to the question, doing the wmill sync pull --raw and wmill sync push --raw between the two workspaces worked fine and enabled very simple new-server bringup.