diff options
author | sadbeast <sadbeast@sadbeast.com> | 2024-06-23 15:36:59 -0700 |
---|---|---|
committer | sadbeast <sadbeast@sadbeast.com> | 2024-07-13 21:58:23 -0700 |
commit | 8d018d996c1eddb882dc64ebbd228bb0135944f3 (patch) | |
tree | d01956546a77dbae33357c9a5d174f511ac9b282 /src/app.zig | |
download | teamdraft-main.tar.gz teamdraft-main.tar.bz2 |
Diffstat (limited to 'src/app.zig')
-rw-r--r-- | src/app.zig | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/app.zig b/src/app.zig new file mode 100644 index 0000000..f6cc157 --- /dev/null +++ b/src/app.zig @@ -0,0 +1,39 @@ +pub const App = struct { + allocator: std.mem.Allocator, + + pool: *pg.Pool, + + // templates: []mustache.Template, + + pub fn init(allocator: std.mem.Allocator) !App { + var env_map = try std.process.getEnvMap(allocator); + defer env_map.deinit(); + + const pool = try pg.Pool.init(allocator, .{ + .size = 5, + .connect = .{ + // .port = 5432, + .unix_socket = env_map.get("PGSQL_SOCKET") orelse "/tmp/pg1/.s.PGSQL.5432", + }, + .auth = .{ + .username = "teamdraft_website", + .database = "teamdraft", + .password = env_map.get("PGSQL_PASSWORD") orelse "teamdraft", + .timeout = 10_000, + }, + }); + + return .{ + .allocator = allocator, + .pool = pool, + }; + } + + pub fn deinit(self: *App) void { + self.pool.deinit(); + } +}; + +const mustache = @import("mustache"); +const pg = @import("pg"); +const std = @import("std"); |