fix service templates and paths

This commit is contained in:
pavel 2026-05-14 20:21:01 +02:00
commit 3ac11468a1
7 changed files with 70 additions and 30 deletions

View file

@ -19,7 +19,10 @@ func (a *App) renderSystemdForProject(ctx context.Context, p Project) error {
}
envVars = []EnvVar{}
}
projectDir := filepath.Join(a.cfg.ProjectRoot, slugify(p.UserID), p.Workspace, p.Slug)
projectDir, err := a.projectDirFor(p)
if err != nil {
return err
}
if err := os.MkdirAll(projectDir, 0o755); err != nil {
return err
}
@ -27,6 +30,11 @@ func (a *App) renderSystemdForProject(ctx context.Context, p Project) error {
if err := os.MkdirAll(dataDir, 0o755); err != nil {
return err
}
binDir := filepath.Join(projectDir, "bin")
if err := os.MkdirAll(binDir, 0o755); err != nil {
return err
}
binaryPath := filepath.Join(binDir, "app")
socketPath := filepath.Join(projectDir, "app.sock")
envPath := filepath.Join(projectDir, ".env")
@ -58,6 +66,9 @@ func (a *App) renderSystemdForProject(ctx context.Context, p Project) error {
if err := ensureOwnedByUnixUser(dataDir, p.UnixUser, 0o755); err != nil {
return err
}
if err := ensureOwnedByUnixUser(binDir, p.UnixUser, 0o755); err != nil {
return err
}
if err := ensureOwnedByUnixUser(envPath, p.UnixUser, 0o600); err != nil {
return err
}
@ -76,7 +87,7 @@ RestartSec=5
[Install]
WantedBy=default.target
`, p.Name, dataDir, envPath, a.cfg.DefaultRunCommand)
`, p.Name, dataDir, envPath, binaryPath)
homeDir, err := homeForUnixUser(p.UnixUser)
if err != nil {