summaryrefslogtreecommitdiffstats
path: root/src/endpoint/scheduler.rs
diff options
context:
space:
mode:
authorMatthias Beyer <matthias.beyer@atos.net>2021-01-04 14:58:43 +0100
committerMatthias Beyer <matthias.beyer@atos.net>2021-01-04 14:58:43 +0100
commitda35a9cf03180a299319e77ca98c5412f20b2f32 (patch)
treef4ca1926b4ad40871337e595083f7a7e91a011c1 /src/endpoint/scheduler.rs
parent49eb6361d0dbaaa13a5e075aa53b41e17576fa2c (diff)
Add JobHandle::create_job_run_error() helper function for constructing nice error message
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
Diffstat (limited to 'src/endpoint/scheduler.rs')
-rw-r--r--src/endpoint/scheduler.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/endpoint/scheduler.rs b/src/endpoint/scheduler.rs
index 25165fa..7beb0f5 100644
--- a/src/endpoint/scheduler.rs
+++ b/src/endpoint/scheduler.rs
@@ -179,6 +179,27 @@ impl JobHandle {
Ok(r)
}
+ /// Helper to create an error object with a nice message.
+ fn create_job_run_error(job_id: &Uuid, package_name: &str, package_version: &str, endpoint_uri: &str, container_id: &str) -> anyhow::Error {
+ anyhow!(indoc::formatdoc!(r#"Error while running job
+ {job_id}
+ for package
+ {package_name} {package_version}
+
+ Connect to docker using
+
+ docker --host {endpoint_uri} exec -it {container_id} /bin/bash
+
+ to debug.
+ "#,
+ job_id = job_id,
+ package_name = package_name,
+ package_version = package_version,
+ endpoint_uri = endpoint_uri,
+ container_id = container_id,
+ )).into()
+ }
+
fn create_env_in_db(&self) -> Result<Vec<dbmodels::EnvVar>> {
trace!("Creating environment in database");
trace!("Hardcoded = {:?}", self.job.package().environment());