summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-09-11 01:53:24 -0500
committerJeff Carr <[email protected]>2025-09-11 01:53:24 -0500
commit41fe3edc93e20fa78fca5eb679e1d83e71357825 (patch)
tree7c2adab7ec730a1d69748e0e2e83417060eaa03f
parentfe4b47339a9c2d15d1acc0700263239b73e21b3d (diff)
probably rm this
-rw-r--r--configBackup.go67
1 files changed, 67 insertions, 0 deletions
diff --git a/configBackup.go b/configBackup.go
new file mode 100644
index 0000000..8d149c9
--- /dev/null
+++ b/configBackup.go
@@ -0,0 +1,67 @@
+package config
+
+// thank chatgpt for this because why. why write this if you can have it
+// kick this out in 30 seconds
+
+/*
+func (f *Forge) backupConfig() error {
+ // make a new dir to backup the files
+ srcDir := filepath.Join(f.configDir)
+ destDir := filepath.Join(f.configDir, "backup")
+ return backupFiles(srcDir, destDir)
+}
+
+func backupFiles(srcDir string, destDir string) error {
+ // Create the destination directory
+ err := os.MkdirAll(destDir, os.ModePerm)
+ if err != nil {
+ return errors.New(fmt.Sprintf("Failed to create directory: %v", err))
+ }
+
+ // Read the contents of the source directory
+ entries, err := os.ReadDir(srcDir)
+ if err != nil {
+ return errors.New(fmt.Sprintf("Failed to read directory: %v", err))
+ }
+
+ // Iterate over the entries in the source directory
+ for _, entry := range entries {
+ // Skip directories and files that do not have the .test extension
+ if entry.IsDir() {
+ continue
+ }
+
+ // log.Println("backing up file", entry.Name())
+ srcPath := filepath.Join(srcDir, entry.Name())
+ destPath := filepath.Join(destDir, entry.Name())
+
+ // Copy the file
+ if err := copyFile(srcPath, destPath); err != nil {
+ return errors.New(fmt.Sprintf("Failed to copy file %s: %v", entry.Name(), err))
+ }
+ }
+ return nil
+}
+
+// copyFile copies a file from src to dest
+func copyFile(src, dest string) error {
+ srcFile, err := os.Open(src)
+ if err != nil {
+ return err
+ }
+ defer srcFile.Close()
+
+ now := time.Now()
+ timestamp := now.Format("2006.01.02.150405") // bummer. other date doesn't work?
+ dest = dest + timestamp
+ destFile, err := os.Create(dest)
+ if err != nil {
+ return err
+ }
+ defer destFile.Close()
+
+ // Copy the content
+ _, err = io.Copy(destFile, srcFile)
+ return err
+}
+*/