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 SERVICES_CACHE: &str = "/app/services-cache";
36    pub const LOGS: &str = "/app/logs";
37    pub const STORAGE: &str = "/app/storage";
38    pub const WEB: &str = "/app/web";
39    pub const WEB_DIST: &str = "/app/web/dist";
40    pub const WEB_CONFIG: &str = "/app/services/web";
41    pub const PROFILES: &str = "/app/services/profiles";
42    pub const TEMPLATES: &str = "/app/services/web/templates";
43    pub const ASSETS: &str = "/app/services/web/assets";
44}
45
46pub mod storage {
47    pub const FILES: &str = "files";
48    pub const IMAGES: &str = "files/images";
49    pub const GENERATED: &str = "files/images/generated";
50    pub const LOGOS: &str = "files/images/logos";
51    pub const AUDIO: &str = "files/audio";
52    pub const VIDEO: &str = "files/video";
53    pub const DOCUMENTS: &str = "files/documents";
54    pub const UPLOADS: &str = "files/uploads";
55    pub const CSS: &str = "files/css";
56    pub const JS: &str = "files/js";
57}
58
59pub mod build {
60    pub const CARGO_TARGET: &str = "target";
61    pub const BINARY_NAME: &str = "systemprompt";
62}
63
64pub mod env_vars {
65    pub const CUSTOM_SECRETS: &str = "SYSTEMPROMPT_CUSTOM_SECRETS";
66}