示例#1
0
文件: engine.py 项目: viogq/nspawn
 def perform_ensure(self) -> None:
     self.logger.debug("perform_ensure")
     if not SYSTEM_CTL.has_unit(self.service_name()):
         self.perform_create()
     if not SYSTEM_CTL.has_enabled(self.service_name()):
         self.perform_enable()
     if not SYSTEM_CTL.has_active(self.service_name()):
         self.perform_with_status(self.perform_start)
示例#2
0
文件: engine.py 项目: viogq/nspawn
 def perform_desure(self) -> None:
     self.logger.debug("perform_desure")
     if SYSTEM_CTL.has_active(self.service_name()):
         self.perform_with_status(self.perform_stop)
     if SYSTEM_CTL.has_enabled(self.service_name()):
         self.perform_disable()
     if SYSTEM_CTL.has_unit(self.service_name()):
         self.perform_delete()
示例#3
0
文件: main.py 项目: viogq/nspawn
def main():

    parser = nsenter_parser()
    space = parser.parse_args()

    machine = space.machine
    script = space.script

    service = f"{machine}.service"

    if not SYSTEM_CTL.has_active(service):
        sys.exit(f"Service is not active: {service}")

    if not SYSTEM_CTL.has_machine(service):
        sys.exit(f"Service is not a machine: {service}")

    NSENTER.execute_invoke(machine, script)