Enum lal::CliError
[−]
[src]
pub enum CliError {
Io(Error),
Parse(Error),
Hype(Error),
MissingManifest,
MissingConfig,
MissingComponent(String),
ManifestExists,
ExecutableMissing(String),
OutdatedLal(String, String),
MissingSslCerts,
UnmappableRootUser,
MissingMount(String),
MissingDependencies,
DependencyCycle(String),
InvalidVersion(String),
ExtraneousDependencies(String),
MissingLockfile(String),
MultipleVersions(String),
MultipleEnvironments(String),
EnvironmentMismatch(String, String),
NonGlobalDependencies(String),
MissingEnvironment(String),
InvalidEnvironment,
InvalidBuildConfiguration(String),
BuildScriptNotExecutable(String),
MissingBuildScript,
MissingScript(String),
MissingTarball,
MissingBuild,
InvalidStashName(u32),
MissingStashArtifact(String),
SubprocessFailure(i32),
DockerPermissionSafety(String, u32, u32),
DockerImageNotFound(String),
InstallFailure,
BackendFailure(String),
MissingReleaseBuild,
MissingBackendCredentials,
UploadFailure(String),
MissingPrefixPermissions(String),
UpgradeValidationFailure(String),
}The one and only error type for the lal library
Every command will raise one of these on failure, and these is some reuse between
commands for these errors. Result<T, CliError> is effectively the safety net
that every single advanced call goes through to avoid panic!
Variants
Io(Error)Errors propagated from std::fs
Parse(Error)Errors propagated from serde_json
Hype(Error)Errors propagated from hyper
MissingManifestManifest file not found in working directory
MissingConfigConfig not found in ~/.lal
MissingComponent(String)Component not found in manifest
ManifestExistsManifest cannot be overwritten without forcing
ExecutableMissing(String)Executable we shell out to is missing
OutdatedLal(String, String)lal version required by config is too old
MissingSslCertsMissing SSL certificates
UnmappableRootUserRoot user encountered
MissingMount(String)Missing predefined mount
MissingDependenciesCore dependencies missing in INPUT
DependencyCycle(String)Cyclical dependency loop found in INPUT
InvalidVersion(String)Dependency present at wrong version
ExtraneousDependencies(String)Extraneous dependencies in INPUT
MissingLockfile(String)No lockfile found for a component in INPUT
MultipleVersions(String)Multiple versions of a component was involved in this build
MultipleEnvironments(String)Multiple environments was used to build a component
EnvironmentMismatch(String, String)Environment for a component did not match our expected environment
NonGlobalDependencies(String)Custom versions are stashed in INPUT which will not fly on Jenkins
MissingEnvironment(String)Specified environment is not present in the main config
InvalidEnvironmentDefault environment explicitly specified
InvalidBuildConfiguration(String)Build configurations does not match manifest or user input
BuildScriptNotExecutable(String)BUILD script not executable
MissingBuildScriptBUILD script not found
MissingScript(String)Script not found in local .lal/scripts/ directory
MissingTarballFailed to find a tarball after fetching from artifactory
MissingBuildFailed to find build artifacts in OUTPUT after a build or before stashing
InvalidStashName(u32)Invalid integer name used with lal stash
MissingStashArtifact(String)Failed to find stashed artifact in the lal cache
SubprocessFailure(i32)Shell errors from docker subprocess
DockerPermissionSafety(String, u32, u32)Docker permission gate
DockerImageNotFound(String)Docker image not found
InstallFailureUnspecified install failure
BackendFailure(String)Fetch failure related to backend
MissingReleaseBuildMissing release build
MissingBackendCredentialsConfig missing backend credentials
UploadFailure(String)Failed upload request to the backend
MissingPrefixPermissions(String)Failing to write to our current install prefix
UpgradeValidationFailure(String)Failing to validate latest lal version
Trait Implementations
impl Debug for CliError[src]
impl Display for CliError[src]
fn fmt(&self, f: &mut Formatter) -> Result[src]
Formats the value using the given formatter. Read more