chiark / gitweb /
systemctl: subscribe to changes of existing units/jobs
authorLennart Poettering <lennart@poettering.net>
Sat, 22 May 2010 02:39:37 +0000 (04:39 +0200)
committerLennart Poettering <lennart@poettering.net>
Sat, 22 May 2010 02:39:37 +0000 (04:39 +0200)
src/systemctl.vala

index e1e8a0c832e1d3c6be404193f3108abedc9f3460..e3e675f479f7ce28bf59327620d76b8be593f9d5 100644 (file)
@@ -128,16 +128,17 @@ int main (string[] args) {
                         "  clear-jobs                      Cancel all jobs\n" +
                         "  load [NAME...]                  Load one or more units\n" +
                         "  cancel [JOB...]                 Cancel one or more jobs\n" +
                         "  clear-jobs                      Cancel all jobs\n" +
                         "  load [NAME...]                  Load one or more units\n" +
                         "  cancel [JOB...]                 Cancel one or more jobs\n" +
-                        "  start [NAME...]                 Start on or more units\n" +
-                        "  stop [NAME...]                  Stop on or more units\n" +
-                        "  enter [NAME]                    Start one unit and stop all others\n" +
-                        "  restart [NAME...]               Restart on or more units\n" +
-                        "  reload [NAME...]                Reload on or more units\n" +
+                        "  start [NAME...]                 Start one or more units\n" +
+                        "  stop [NAME...]                  Stop one or more units\n" +
+                        "  restart [NAME...]               Restart one or more units\n" +
+                        "  reload [NAME...]                Reload one or more units\n" +
+                        "  isolate [NAME]                  Start one unit and stop all others\n" +
                         "  monitor                         Monitor unit/job changes\n" +
                         "  dump                            Dump server status\n" +
                         "  snapshot [NAME]                 Create a snapshot\n" +
                         "  daemon-reload                   Reload daemon configuration\n" +
                         "  daemon-reexecute                Reexecute daemon\n" +
                         "  monitor                         Monitor unit/job changes\n" +
                         "  dump                            Dump server status\n" +
                         "  snapshot [NAME]                 Create a snapshot\n" +
                         "  daemon-reload                   Reload daemon configuration\n" +
                         "  daemon-reexecute                Reexecute daemon\n" +
+                        "  daemon-exit                     Ask the daemon to quit\n" +
                         "  show-environment                Dump environment\n" +
                         "  set-environment [NAME=VALUE...] Set one or more environment variables\n" +
                         "  unset-environment [NAME...]     Unset one or more environment variables\n");
                         "  show-environment                Dump environment\n" +
                         "  set-environment [NAME=VALUE...] Set one or more environment variables\n" +
                         "  unset-environment [NAME...]     Unset one or more environment variables\n");
@@ -300,6 +301,15 @@ int main (string[] args) {
 
                         manager.subscribe();
 
 
                         manager.subscribe();
 
+                        var unit_list = manager.list_units();
+
+                        foreach (var i in unit_list) {
+                                monitor_on_unit_new(i.id, i.unit_path);
+
+                                if (i.job_id != 0)
+                                        monitor_on_job_new(i.job_id, i.job_path);
+                        }
+
                         manager.unit_new += monitor_on_unit_new;
                         manager.unit_removed += monitor_on_unit_removed;
                         manager.job_new += monitor_on_job_new;
                         manager.unit_new += monitor_on_unit_new;
                         manager.unit_removed += monitor_on_unit_removed;
                         manager.job_new += monitor_on_job_new;