private void modifyConfigFile(final Path configFile,
                                  final String url,
                                  final String username,
                                  final String password,
                                  final String stroomHomeDbBase,
                                  final String stroomTempDbBase) {
        logWithColouredArgs("Modifying properties in config file '{}'", configFile.toAbsolutePath());

        try {
            final File file = configFile.toFile();
            String yamlStr = Files.readString(configFile);
            // Parse the YAML into a map, so we can get the current values to make the
            // string replace a bit more robust
            final ObjectMapper objectMapper = YamlUtil.getVanillaObjectMapper();
            final Map<String, Object> map = objectMapper.readValue(file, new TypeReference<>() {
            });
            final FileType fileType = getFileType(configFile);
            if (fileType == FileType.STROOM) {
                yamlStr = modifyStroomConfig(
                        configFile, url, username, password, stroomHomeDbBase, stroomTempDbBase, map, yamlStr);
            } else {
                yamlStr = modifyProxyConfig(
                        configFile, stroomHomeDbBase, stroomTempDbBase, map, yamlStr);
            }

            // write YAML file back out
            Files.writeString(configFile, yamlStr, StandardOpenOption.WRITE, StandardOpenOption.TRUNCATE_EXISTING);
        } catch (IOException e) {
            LOGGER.error("Error parsing/writing yaml file '{}': {}", configFile.toAbsolutePath(), e.getMessage(), e);
            throw new RuntimeException(e);
        }
    }
PSVM for making a dedicated stroom DB and directory structure to allow running multiple
stroom versions, albeit not concurrently.
You can't run multiple strooms concurrently time due to port clashes and the fact that
there is only one nginx instance.
<p>
It will prompt you for a version string, e.g. '7.5' which will be used in the DB name
and in the stroom home/temp file paths.
</p>
<p>
A suggested approach is to have:
<ul>
    <li><pre>Dir: ~/git_work/stroom,
    env name input: 'master',
    db name: 'stroom_master',
    home: '~/.stroom/stroom_master'</pre></li>
    <li><pre>Dir: ~/git_work/stroom,
    env name input: '7.5',
    db name: 'stroom_v7_5',
    home: '~/.stroom/stroom_v7_5'</pre></li>
    <li><pre>Dir: ~/git_work/stroom,
    env name input: '7.6',
    db name: 'stroom_v7_6',
    home: '~/.stroom/stroom_v7_6'</pre></li>
</ul>

</P>
stroom-test-common/src/main/java/stroom/test/common/util/db/SetupDevEnv.java