summaryrefslogtreecommitdiffstats
path: root/src/config
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2021-04-26 14:44:41 +0200
committerMatthias Beyer <mail@beyermatthias.de>2021-05-11 11:22:36 +0200
commitb9a2249f3c8d7e475ed7f60f15036c03a1691240 (patch)
treecf2cabf8a2ebe8f82d146d8ad5ffd53b30727b95 /src/config
parenta9ff0b1ebb6e23d04535169763e08cb526d910fb (diff)
Add doc on config members
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'src/config')
-rw-r--r--src/config/not_validated.rs32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/config/not_validated.rs b/src/config/not_validated.rs
index b005aca..1d041a5 100644
--- a/src/config/not_validated.rs
+++ b/src/config/not_validated.rs
@@ -24,78 +24,108 @@ use crate::package::PhaseName;
/// The configuration that is loaded from the filesystem
#[derive(Debug, Getters, Deserialize)]
pub struct NotValidatedConfiguration {
+
+ /// Compatibility setting
+ ///
+ /// If the version of butido is (semver) incompatible to this setting in the configuration,
+ /// butido won't execute any further because it might fail later due to configuration
+ /// incompatibilities
#[getset(get = "pub")]
compatibility: semver::VersionReq,
+ /// The directory logs are written to, if logs are requested in plaintext files
#[getset(get = "pub")]
log_dir: PathBuf,
+ /// Whether the script interpolation feature should be struct, i.e. missing variables result in
+ /// a failing interpolation. This should be `true` for most users.
#[serde(default = "default_strict_script_interpolation")]
#[getset(get = "pub")]
strict_script_interpolation: bool,
+ /// The format of the progress bars
#[serde(default = "default_progress_format")]
#[getset(get = "pub")]
progress_format: String,
+ /// The format of the spinners in the CLI
#[serde(default = "default_spinner_format")]
#[getset(get = "pub")]
spinner_format: String,
+ /// The format used to print a package
+ ///
+ /// This is handlebars syntax
#[serde(default = "default_package_print_format")]
#[getset(get = "pub")]
package_print_format: String,
+ /// How many lines should be printed from the log if a build fails
#[serde(default = "default_build_error_lines")]
#[getset(get = "pub")]
build_error_lines: usize,
+ /// The theme used to highlight scripts when printing them to the CLI
#[getset(get = "pub")]
script_highlight_theme: Option<String>,
+ /// The linter executable that is used to lint packaging scripts
#[getset(get = "pub")]
script_linter: Option<PathBuf>,
+ /// The shebang that is added at the very beginning of the package scripts
#[serde(default = "default_script_shebang")]
#[getset(get = "pub")]
shebang: String,
+ /// The directory where releases are stored
#[serde(rename = "releases_root")]
#[getset(get = "pub")]
releases_directory: PathBuf,
+ /// The names of the directories inside the `releases_directory` to store different releases in
#[serde(rename = "release_stores")]
#[getset(get = "pub")]
release_stores: Vec<String>,
+ /// The directory where intermediate ("staging") artifacts are stored.
+ /// This is used as a root directory, a UUID-named directory will be added below this, using
+ /// the UUID of the submit
#[serde(rename = "staging")]
#[getset(get = "pub")]
staging_directory: PathBuf,
+ /// Where the sources are cached
#[serde(rename = "source_cache")]
#[getset(get = "pub")]
source_cache_root: PathBuf,
+ /// The hostname used to connect to the database
#[getset(get = "pub")]
#[serde(rename = "database_host")]
database_host: String,
+ /// The post used to connect to the database
#[getset(get = "pub")]
#[serde(rename = "database_port")]
database_port: u16,
+ /// The user used to connect to the database
#[getset(get = "pub")]
#[serde(rename = "database_user")]
database_user: String,
+ /// The password used to connect to the database
#[getset(get = "pub")]
#[serde(rename = "database_password")]
database_password: String,
+ /// The name of the database
#[getset(get = "pub")]
#[serde(rename = "database_name")]
database_name: String,
+ /// The configuration for the docker endpoints
#[getset(get = "pub")]
#[serde(rename = "database_connection_timeout")]
database_connection_timeout: Option<u16>,
@@ -103,9 +133,11 @@ pub struct NotValidatedConfiguration {
#[getset(get = "pub")]
docker: DockerConfig,
+ /// The configuration for the containers
#[getset(get = "pub")]
containers: ContainerConfig,
+ /// The names of the phases which should be compiled into the packaging script
#[getset(get = "pub")]
available_phases: Vec<PhaseName>,
}