Mailinglist Archive: yast-devel (108 mails)

< Previous Next >
Re: [yast-devel] Storage Redesign
On Fri, Oct 31, 2014 at 08:00:20AM +0100, Josef Reidinger wrote:

my hackweek project was to evaluate using the boost graph library
(BGL) in libstorage. For me the project was interesting and
successful. I have documented it at
https://github.com/aschnell/libstorage-bgl-eval/wiki. The code is
also available there.

So now I would like to redesign the storage part of YaST. Here
are the main steps required:

- Make the new API robust against API and ABI changes.

Sounds good, question is how?

At least export (via header files) only what really required,
e.g. use the d-ptr pattern (e.g. http://qt-project.org/wiki/Dpointer).

- Export new API to Ruby (help would be good) for use by all YaST
modules.

I think it would be very cool if we have in ruby nice object oriented
API. I can help you with ruby bindings. I think it is usually better to
have combination of C bindings and ruby code that make usage in ruby
smoother.

I prefer to not write manual bindings. On the other hand I
haven't checked what swig allows here.

- Make all code in YaST use new API (task for several
developers).

For this step we really need some storage setup factory, so e.g. in
bootloader I can replace old mocks of target maps with new stuff and
change code.

The current libstorage already has support to not probe the
system and instead read the setup from files. This will of course
stay and even be extended (to cover all features,
e.g. multipath).

- Finally drop target-map (as decided during workshop).

That will be great step especially together with object oriented API.
Then we can have something like Disk.find( bios_id:
"0x80").find_partition(mount_to: "/boot").sw_raid? in bootloader.

Well, I'm not used to such a "find" API so I cannot say whether
it will like that way.

Also so far libstorage does not know the bios-id, hwinfo provides
that informations and it's "merged" in Ruby into the target-map.

ciao
Arvin

--
Arvin Schnell, <aschnell@xxxxxxx>
Senior Software Engineer, Research & Development
SUSE LINUX GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 21284
(AG Nürnberg)
Maxfeldstraße 5
90409 Nürnberg
Germany
--
To unsubscribe, e-mail: yast-devel+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: yast-devel+owner@xxxxxxxxxxxx

< Previous Next >
Follow Ups