mirror of
https://github.com/AuxXxilium/eudev.git
synced 2024-12-27 06:05:24 +07:00
job: also print status messages when we successfully started a unit
This commit is contained in:
parent
41550d40a2
commit
e02cd6f7e0
53
src/job.c
53
src/job.c
@ -476,6 +476,52 @@ int job_run_and_invalidate(Job *j) {
|
|||||||
return r;
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void job_print_status_message(Unit *u, JobType t, JobResult result) {
|
||||||
|
assert(u);
|
||||||
|
|
||||||
|
if (t == JOB_START) {
|
||||||
|
|
||||||
|
switch (result) {
|
||||||
|
|
||||||
|
case JOB_DONE:
|
||||||
|
unit_status_printf(u, "Started %s.\n", unit_description(u));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case JOB_FAILED:
|
||||||
|
unit_status_printf(u, "Starting %s " ANSI_HIGHLIGHT_ON "failed" ANSI_HIGHLIGHT_OFF ", see 'systemctl status %s' for details.\n", unit_description(u), u->meta.id);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case JOB_DEPENDENCY:
|
||||||
|
unit_status_printf(u, "Starting %s " ANSI_HIGHLIGHT_ON "aborted" ANSI_HIGHLIGHT_OFF " because a dependency failed.\n", unit_description(u));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case JOB_TIMEOUT:
|
||||||
|
unit_status_printf(u, "Starting %s " ANSI_HIGHLIGHT_ON "timed out" ANSI_HIGHLIGHT_OFF ".\n", unit_description(u), u->meta.id);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (t == JOB_STOP) {
|
||||||
|
|
||||||
|
switch (result) {
|
||||||
|
|
||||||
|
case JOB_TIMEOUT:
|
||||||
|
unit_status_printf(u, "Stopping %s " ANSI_HIGHLIGHT_ON "timed out" ANSI_HIGHLIGHT_OFF ".\n", unit_description(u), u->meta.id);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case JOB_DONE:
|
||||||
|
case JOB_FAILED:
|
||||||
|
unit_status_printf(u, "Stopped %s.\n", unit_description(u));
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int job_finish_and_invalidate(Job *j, JobResult result) {
|
int job_finish_and_invalidate(Job *j, JobResult result) {
|
||||||
Unit *u;
|
Unit *u;
|
||||||
Unit *other;
|
Unit *other;
|
||||||
@ -512,12 +558,7 @@ int job_finish_and_invalidate(Job *j, JobResult result) {
|
|||||||
t = j->type;
|
t = j->type;
|
||||||
job_free(j);
|
job_free(j);
|
||||||
|
|
||||||
if (result == JOB_FAILED && t == JOB_START)
|
job_print_status_message(u, t, result);
|
||||||
unit_status_printf(u, "Starting %s " ANSI_HIGHLIGHT_ON "failed" ANSI_HIGHLIGHT_OFF ", see 'systemctl status %s' for details.\n", unit_description(u), u->meta.id);
|
|
||||||
else if (result == JOB_TIMEOUT && t == JOB_START)
|
|
||||||
unit_status_printf(u, "Starting %s " ANSI_HIGHLIGHT_ON "timed out" ANSI_HIGHLIGHT_OFF ".\n", unit_description(u), u->meta.id);
|
|
||||||
else if (result == JOB_TIMEOUT && t == JOB_STOP)
|
|
||||||
unit_status_printf(u, "Stopping %s " ANSI_HIGHLIGHT_ON "timed out" ANSI_HIGHLIGHT_OFF ".\n", unit_description(u), u->meta.id);
|
|
||||||
|
|
||||||
/* Fail depending jobs on failure */
|
/* Fail depending jobs on failure */
|
||||||
if (result != JOB_DONE) {
|
if (result != JOB_DONE) {
|
||||||
|
Loading…
Reference in New Issue
Block a user