Skip to main content

systemprompt_manifest/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 EXPORTS: &str = "exports";
49    pub const DATA: &str = "data";
50    pub const SCRATCH: &str = "data/scratch";
51    pub const IMAGES: &str = "files/images";
52    pub const GENERATED: &str = "files/images/generated";
53    pub const LOGOS: &str = "files/images/logos";
54    pub const AUDIO: &str = "files/audio";
55    pub const VIDEO: &str = "files/video";
56    pub const DOCUMENTS: &str = "files/documents";
57    pub const UPLOADS: &str = "files/uploads";
58    pub const CSS: &str = "files/css";
59    pub const JS: &str = "files/js";
60}
61
62pub mod build {
63    pub const CARGO_TARGET: &str = "target";
64    pub const BINARY_NAME: &str = "systemprompt";
65}
66
67pub mod env_vars {
68    pub const CUSTOM_SECRETS: &str = "SYSTEMPROMPT_CUSTOM_SECRETS";
69}