Description:
This happens if there has not been a build in the tree yet.
One of the goals of autopush was that I do not need to build and test locally but can leave this to autopush. This goal is missed if I need to build at least.
Not even --help and --version work!!!
~/internals/dev/autopush.pl --version
ERROR: Can't find my_print_defaults. Can't read my.cnf.
FIX: Please install my_print_defaults from MySQL distribution, OR
compile MySQL and autopush.pl will use extra/my_print_defaults, OR
use --force as the FIRST option to disable reading my.cnf(s)
Using --force might be a workaround for normal work, but prohibits the use of my.cnf. And requiring --force for --help and --version looks <CENSORED>.
How to repeat:
clone a tree
pull changes from another tree
~/internals/dev/autopush.pl --version
Suggested fix:
If you cannot make autopush independent of my_print_defaults, give it a --no-defaults option. In this case don't even try to run my_print_defaults. You can force --no-defaults to be the first argument like all other MySQL programs/scripts do, if it makes things easier. This is different from --force as it does not suppress non-fatal errors.
In case of --help and --version do not try to run my_print_defaults either.