feat(devenv)!: integrate all services and tasks

Signed-off-by: Noa Virellia <noa@requiem.garden>
This commit is contained in:
2025-12-28 16:30:03 +08:00
parent 8fb2df072d
commit a764ced295
2 changed files with 57 additions and 43 deletions

View File

@@ -1,11 +1,12 @@
{ pkgs, config, ... }:
{
env.GREET = "devenv";
process.managers.process-compose = {
settings.log_level = "info";
};
packages = [
pkgs.git
pkgs.bun
pkgs.just
];
@@ -17,49 +18,59 @@
];
};
languages.go = {
enable = true;
version = "1.25.5";
languages = {
go = {
enable = true;
version = "1.25.5";
};
javascript.enable = true;
javascript.bun.enable = true;
};
services.caddy = {
enable = true;
dataDir = "${config.env.DEVENV_STATE}/caddy";
config = ''
:8080 {
handle /api/* {
reverse_proxy 127.0.0.1:8000
processes = {
vite = {
exec = "bun run dev";
cwd = "./client";
};
backend.exec = "just run";
};
tasks = {
"backend:build".exec = "just clean && just build";
};
services = {
caddy = {
enable = true;
dataDir = "${config.env.DEVENV_STATE}/caddy";
config = ''
:8080 {
handle /api/* {
reverse_proxy 127.0.0.1:8000
}
handle {
reverse_proxy 127.0.0.1:5173
}
}
'';
};
redis = {
enable = true;
};
postgres = {
enable = true;
createDatabase = true;
listen_addresses = "127.0.0.1";
initialDatabases = [
{
name = "postgres";
user = "postgres";
pass = "postgres";
}
handle {
root * ${config.env.DEVENV_ROOT}/.outputs/static
encode zstd gzip
@assets path /assets/*
header @assets Cache-Control "public, max-age=31536000, immutable"
try_files {path} /index.html
file_server
}
}
'';
};
services.redis = {
enable = true;
};
services.postgres = {
enable = true;
createDatabase = true;
listen_addresses = "127.0.0.1";
initialDatabases = [
{
name = "postgres";
user = "postgres";
pass = "postgres";
}
];
};
services.meilisearch = {
enable = true;
];
};
meilisearch = {
enable = true;
};
};
}

View File

@@ -26,3 +26,6 @@ run:
test:
cd {{ output_dir }} && CONFIG_PATH={{ output_dir }} GO_ENV=test go test -C .. ./...
dev:
devenv up --verbose