// Создать новый конфигурационный файл на основании данных файлов содержащихся в каталоге func buildCf(pathToDirWithSourceData string, pathToCf string) { pathToTarget := createTargetDir(utils.GetParentDir(pathToCf)) utils.InitLogger(pathToTarget, utils.LogLevel_INFO) utils.AddTextToLog(utils.LogLevel_INFO, "Начало") var err error var objectCf cf.ConfCf if err = objectCf.InitFromCatalog(pathToDirWithSourceData); err != nil { panic(err.Error()) } fileData := objectCf.GetDataForConfigFile() if err = ioutil.WriteFile(pathToCf, fileData, os.ModeAppend); err != nil { panic(err.Error()) } utils.AddTextToLog(utils.LogLevel_INFO, "-Завершение") }
// Распаковать конфигурационный файл в каталог func unpackToDir(pathToCf string, pathToTarget string) { createTargetDir(pathToTarget) utils.InitLogger(pathToTarget, utils.LogLevel_INFO) utils.AddTextToLog(utils.LogLevel_INFO, "Начало") var err error var fileData []byte if fileData, err = ioutil.ReadFile(pathToCf); err != nil { panic(err.Error()) } pathToUnpackDir := createTargetDir(path.Join(pathToTarget, "unpack")) var objectCf cf.ConfCf if err = objectCf.InitFromFile(fileData); err != nil { panic(err.Error()) } objectCf.SaveBlocksToFiles(pathToUnpackDir) utils.AddTextToLog(utils.LogLevel_INFO, "-Завершение") }