I have multiple Raspberry Pi's running Octoprint. I'm trying to automate the installation process, to make maintenance easier. I know I can clone an entire SD card, but that doesn't work so well for OS or hardware upgrades.
Is there a way to skip the setup wizard and just copy over a slightly customized config file instead to a printer instead?
You can copy the config.yaml file, or just a skeleton version - the setup wizard will only show up if there is stuff that has not been configured yet, which normally nothing has on a first start up. If you setup one instance, you could copy the config to the other instances config location
Some parts of the setup wizard will still show up if it's not fully configured - for example setting up a new user if you don't have a users.yaml file. I think there's a couple of other parts that will show regardless of the firstrun, they have some additional conditions to check.
The best way to do this automatically would be to write a script for it.
You can view/change OctoPrint config settings via the command line.
Example for OctoPi: oprint/bin/octoprint config set plugins.tracking.enabled false --bool will set that value to false. You can do all of the other values in a similar way, and put them in a shell script that you run once.
I use Ansible as well, remotely installing plugins using the URL and triggering the install script, no manual copying required, but I might try copying the config.yaml from a fully configured instance.