in pkg/rbeconfigsgen/rbeconfigsgen.go [845:869]
func copyConfigsToOutputDir(o *Options, oc outputConfigs) error {
configsRootDir := path.Join(o.OutputSourceRoot, o.OutputConfigPath)
if err := os.MkdirAll(configsRootDir, os.ModePerm); err != nil {
return fmt.Errorf("unable to create directory %q for writing configs: %w", configsRootDir, err)
}
// Always write the LICENSE first.
if err := writeGeneratedFile(configsRootDir, oc.license); err != nil {
return fmt.Errorf("unable to write the %q file to the output directory %q: %w", oc.license.name, configsRootDir, err)
}
if o.GenCPPConfigs {
if err := copyCppConfigsToOutputDir(configsRootDir, oc.cppConfigsTarball); err != nil {
return fmt.Errorf("unable to extract C++ configs into output directory %q: %w", configsRootDir, err)
}
}
if o.GenJavaConfigs {
if err := writeGeneratedFile(configsRootDir, oc.javaBuild); err != nil {
return fmt.Errorf("unable to write Java configs into output directory %q: %w", configsRootDir, err)
}
}
if err := writeGeneratedFile(configsRootDir, oc.configBuild); err != nil {
return fmt.Errorf("unable to write the crostool top/platform BUILD file into output directory %q: %w", configsRootDir, err)
}
log.Printf("Copied generated configs to directory %q.", configsRootDir)
return nil
}