Move module declaration and all internal imports from github.com/Snider/Borg to forge.lthn.ai/Snider/Borg. Also updates Enchantrix dependency path to forge.lthn.ai/Snider/Enchantrix. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
42 lines
879 B
Go
42 lines
879 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
"os"
|
|
|
|
"forge.lthn.ai/Snider/Borg/pkg/compress"
|
|
"forge.lthn.ai/Snider/Borg/pkg/tarfs"
|
|
)
|
|
|
|
func main() {
|
|
log.Println("Serving datanode...")
|
|
|
|
// Create a dummy datanode for serving.
|
|
err := os.WriteFile("serve.dat", []byte{}, 0644)
|
|
if err != nil {
|
|
log.Fatalf("Failed to create dummy datanode: %v", err)
|
|
}
|
|
|
|
data, err := os.ReadFile("serve.dat")
|
|
if err != nil {
|
|
log.Fatalf("Failed to read datanode: %v", err)
|
|
}
|
|
|
|
decompressed, err := compress.Decompress(data)
|
|
if err != nil {
|
|
log.Fatalf("Failed to decompress datanode: %v", err)
|
|
}
|
|
|
|
fs, err := tarfs.New(decompressed)
|
|
if err != nil {
|
|
log.Fatalf("Failed to create tarfs: %v", err)
|
|
}
|
|
|
|
http.Handle("/", http.FileServer(fs))
|
|
log.Println("Listening on :8080...")
|
|
err = http.ListenAndServe(":8080", nil)
|
|
if err != nil {
|
|
log.Fatalf("Failed to start server: %v", err)
|
|
}
|
|
}
|