public static void main(final String[] args) {
        if (args.length != 1) {
            throw new RuntimeException("Expected 1 argument that is the location of the config.");
        }
        final Path configFile = YamlUtil.getYamlFileFromArgs(args);
        Config config;
        try {
            config = StroomYamlUtil.readConfig(configFile);
        } catch (final IOException e) {
            throw new RuntimeException("Unable to read yaml config");
        }

        // We are running stroom so want to use a proper db
        final Injector injector = Guice.createInjector(new SetupSampleDataModule(config, configFile));

        // Start task manager
        injector.getInstance(TaskManager.class).startup();

        final CommonTestControl commonTestControl = injector.getInstance(CommonTestControl.class);

        // Clear the DB and remove all content and data.
        commonTestControl.clear();
        // Setup the DB ready to load content and data.
        commonTestControl.setup(null);

        // Load the sample data and content from the 'samples' dirs
        final SetupSampleDataBean setupSampleDataBean = injector.getInstance(SetupSampleDataBean.class);
        setupSampleDataBean.run(true);

        // Load the content packs specified in the definition.
        final Path contentPackDefinition = configFile.getParent().resolve("content-packs.yml");
        final ContentImportService contentImportService = injector.getInstance(ContentImportService.class);
        contentImportService.importFromDefinitionYaml(contentPackDefinition);

        // Stop task manager
        injector.getInstance(TaskManager.class).shutdown();
    }
A main() method for pre-loading the stroom database with content and data for manual testing
of the application.
<p>
***********************************************************************************************
IMPORTANT - This should only be run from the gradle task setupSampleData, NOT from the IDE.
The gradle task does the additional step of downloading content packs and placing them in the
appropriate directory for auto-import into stroom on boot. If you run it from the IDE you will
not get the content packs.
***********************************************************************************************
<p>
The aim of setupSampleData is to load test content and data that is located in
stroom-core/src/test/resources/samples. The content in this folder should NOT duplicate any content
that is available in content packs.
<p>
The content packs that get downloaded (for auto import) are defined in the root build.gradle file.
stroom-app/src/test/java/stroom/test/SetupSampleData.java