]> git.frustrated-labs.net Git - frustrated-functor.dev.git/commitdiff
put generated post files in public directory
authorAlexander Goussas <[email protected]>
Sun, 19 Apr 2026 03:49:59 +0000 (22:49 -0500)
committerAlexander Goussas <[email protected]>
Sun, 19 Apr 2026 03:49:59 +0000 (22:49 -0500)
bin/blog-processor/src/root.zig

index 6978da505da4e3fab9e2c78a572561873317fad9..9270be57757abea3a9a4a75cfa4095ea86e45193 100644 (file)
@@ -7,13 +7,16 @@ pub fn processBlog(alloc: std.mem.Allocator, io: std.Io, dirName: []const u8) !v
     const dir = try std.Io.Dir.openDirAbsolute(io, dirName, .{ .iterate = true});
     defer dir.close(io);
 
+    // TODO: Make output dir customizable
+    const outputDir = try std.Io.Dir.openDir(std.Io.Dir.cwd(), io, "public", .{});
+
     var iter = dir.iterate();
     while(try iter.next(io)) |entry|  {
-        try processFile(alloc, dir, io, entry.name);
+        try processFile(alloc, dir, outputDir, io, entry.name);
     }
 }
 
-fn processFile(alloc: std.mem.Allocator, dir: std.Io.Dir, io: std.Io, fileName: []const u8) !void {
+fn processFile(alloc: std.mem.Allocator, dir: std.Io.Dir, outputDir: std.Io.Dir, io: std.Io, fileName: []const u8) !void {
     if (!std.mem.eql(u8, ".md", std.fs.path.extension(fileName))) return;
 
     const postContents = try std.Io.Dir.readFileAlloc(dir, io, fileName, alloc, .unlimited);
@@ -39,8 +42,7 @@ fn processFile(alloc: std.mem.Allocator, dir: std.Io.Dir, io: std.Io, fileName:
     @memcpy(newFileName.ptr, baseName);
     @memcpy(newFileName[baseName.len..].ptr, ext);
 
-    // TODO: Put them in public directory
-    try std.Io.Dir.cwd().writeFile(io, .{ 
+    try outputDir.writeFile(io, .{ 
         .data = htmlOut,
         .sub_path = newFileName,
     });