debian-forge/osbuild
Christian Kellner a5e07cf506 devices: introduce new device manager class
Introduce a new class to manage devices, `DeviceManger` and move the
code to open devices from the `Device` here. The main insight of why
the logic should be place here is that certain information is needed
to open the devices, independently of specific type: the path to the
device node directory, `devpath`, the actual `tree` and the service
manager instance to start the actual service. Instead of passing all
this information again and again to the `Device` class, we now have
a specialized (service) manager class for devices that has all the
needed information all the time. Additionally, the special handling
of parent devices is moved from the pipeline to the service manager,
which is where it belongs.
This will make even more sense for mounts, where the `DeviceManger`
can then be passed to access the individual devices.
Port the test to use the `DeviceManager`.
2021-10-30 15:32:44 +01:00
..
formats device: add support for parent devices 2021-08-13 12:20:54 +02:00
util util/rhsm: Check if repositories is None before iterating 2021-09-03 20:52:17 +02:00
__init__.py pipeline: remove Assembler class 2021-01-19 10:42:26 +01:00
__main__.py osbuild: always return exit code 2020-10-27 22:04:09 +01:00
api.py api: remove host side arguments facility 2021-07-08 15:01:33 +01:00
buildroot.py buildroot: make mounting /boot optional 2021-10-30 00:16:03 +01:00
devices.py devices: introduce new device manager class 2021-10-30 15:32:44 +01:00
host.py host: check reply_fds before sending them 2021-09-24 12:14:04 +01:00
inputs.py inputs: convert to host service 2021-06-09 18:37:47 +01:00
loop.py loop: helper to call ioctl_blockdev_flushbuf 2021-08-13 17:35:32 +02:00
main_cli.py sources: port to host services 2021-09-22 00:00:20 +02:00
meta.py osbuild: introduce mount host service 2021-06-09 18:37:47 +01:00
monitor.py monitor/log: print pipeline information 2021-02-12 15:55:43 +01:00
mounts.py osbuild: introduce mount host service 2021-06-09 18:37:47 +01:00
objectstore.py objectstore: use recursive bind mounts 2021-07-09 18:09:37 +01:00
pipeline.py devices: introduce new device manager class 2021-10-30 15:32:44 +01:00
remoteloop.py remoteloop: close loop device controller 2021-08-11 20:59:51 +02:00
sources.py sources: pass items via temporary file 2021-09-24 08:27:19 +01:00
treesum.py treesum: handle special device files 2021-02-16 23:00:13 +00:00