about summary refs log tree commit diff stats
path: root/internal/builder/builder.go
diff options
context:
space:
mode:
authorAlan Pearce2025-01-26 21:34:06 +0100
committerAlan Pearce2025-01-26 21:34:06 +0100
commit04809ffd7971032818238db14feb6d3c95470e3b (patch)
treeb87da3fb771c854b011c75e1026d206d10e9403f /internal/builder/builder.go
parente616014e22fca30cb6375352f70f73d234cb1f7c (diff)
downloadwebsite-04809ffd7971032818238db14feb6d3c95470e3b.tar.lz
website-04809ffd7971032818238db14feb6d3c95470e3b.tar.zst
website-04809ffd7971032818238db14feb6d3c95470e3b.zip
use storage.Writer interface in builder
Diffstat (limited to 'internal/builder/builder.go')
-rw-r--r--internal/builder/builder.go19
1 files changed, 13 insertions, 6 deletions
diff --git a/internal/builder/builder.go b/internal/builder/builder.go
index 7b12315..8d2f0a4 100644
--- a/internal/builder/builder.go
+++ b/internal/builder/builder.go
@@ -13,6 +13,7 @@ import (
 	"go.alanpearce.eu/website/internal/config"
 	"go.alanpearce.eu/website/internal/content"
 	"go.alanpearce.eu/website/internal/sitemap"
+	"go.alanpearce.eu/website/internal/storage"
 	"go.alanpearce.eu/website/internal/storage/files"
 	"go.alanpearce.eu/website/templates"
 	"go.alanpearce.eu/x/log"
@@ -69,11 +70,12 @@ func copyRecursive(storage storage.Writer, src string) error {
 
 }
 
-func build(ioConfig *IOConfig, config *config.Config, log *log.Logger) (*Result, error) {
-	storage := files.NewWriter(ioConfig.Destination, log, &files.Options{
-		Compress: !ioConfig.Development,
-	})
-
+func build(
+	storage storage.Writer,
+	ioConfig *IOConfig,
+	config *config.Config,
+	log *log.Logger,
+) (*Result, error) {
 	joinSource := joinSourcePath(ioConfig.Source)
 
 	log.Debug("output", "dir", ioConfig.Destination)
@@ -236,5 +238,10 @@ func BuildSite(ioConfig *IOConfig, cfg *config.Config, log *log.Logger) (*Result
 	templates.Setup()
 	loadCSS(ioConfig.Source)
 
-	return build(ioConfig, cfg, log)
+	var storage storage.Writer
+	storage = files.NewWriter(ioConfig.Destination, log, &files.Options{
+		Compress: !ioConfig.Development,
+	})
+
+	return build(storage, ioConfig, cfg, log)
 }