Skip to main content

systemprompt_models/paths/
constants.rs

1//! Well-known path, file-name, and directory-name constants.
2//!
3//! Grouped by purpose: [`dir_names`] and [`file_names`] for the
4//! `.systemprompt` profile layout, [`cloud_container`] for fixed in-container
5//! paths, [`storage`] for the file-storage tree, [`build`] for build outputs,
6//! and [`env_vars`] for sanctioned environment-variable names.
7//!
8//! Copyright (c) systemprompt.io — Business Source License 1.1.
9//! See <https://systemprompt.io> for licensing details.
10
11pub mod dir_names {
12    pub const SYSTEMPROMPT: &str = ".systemprompt";
13    pub const PROFILES: &str = "profiles";
14    pub const DOCKER: &str = "docker";
15    pub const STORAGE: &str = "storage";
16    pub const SESSIONS: &str = "sessions";
17}
18
19pub mod file_names {
20    pub const PROFILE_CONFIG: &str = "profile.yaml";
21    pub const PROFILE_SECRETS: &str = "secrets.json";
22    pub const CREDENTIALS: &str = "credentials.json";
23    pub const TENANTS: &str = "tenants.json";
24    pub const SESSION: &str = "session.json";
25    pub const DOCKERFILE: &str = "Dockerfile";
26    pub const ENTRYPOINT: &str = "entrypoint.sh";
27    pub const DOCKERIGNORE: &str = "Dockerfile.dockerignore";
28    pub const COMPOSE: &str = "compose.yaml";
29}
30
31pub mod cloud_container {
32    pub const APP_ROOT: &str = "/app";
33    pub const BIN: &str = "/app/bin";
34    pub const SERVICES: &str = "/app/services";
35    pub const LOGS: &str = "/app/logs";
36    pub const STORAGE: &str = "/app/storage";
37    pub const WEB: &str = "/app/web";
38    pub const WEB_DIST: &str = "/app/web/dist";
39    pub const WEB_CONFIG: &str = "/app/services/web";
40    pub const PROFILES: &str = "/app/services/profiles";
41    pub const TEMPLATES: &str = "/app/services/web/templates";
42    pub const ASSETS: &str = "/app/services/web/assets";
43}
44
45pub mod storage {
46    pub const FILES: &str = "files";
47    pub const IMAGES: &str = "files/images";
48    pub const GENERATED: &str = "files/images/generated";
49    pub const LOGOS: &str = "files/images/logos";
50    pub const AUDIO: &str = "files/audio";
51    pub const VIDEO: &str = "files/video";
52    pub const DOCUMENTS: &str = "files/documents";
53    pub const UPLOADS: &str = "files/uploads";
54    pub const CSS: &str = "files/css";
55    pub const JS: &str = "files/js";
56}
57
58pub mod build {
59    pub const CARGO_TARGET: &str = "target";
60    pub const BINARY_NAME: &str = "systemprompt";
61}
62
63pub mod env_vars {
64    pub const CUSTOM_SECRETS: &str = "SYSTEMPROMPT_CUSTOM_SECRETS";
65}