turnkeylinux / tracker

TurnKey Linux Tracker
https://www.turnkeylinux.org
70 stars 16 forks source link

support for di-live preseeding #149

Open coopstah13 opened 10 years ago

coopstah13 commented 10 years ago

I'm sorry to bring this up here, but I think this is a feature request. I've asked for some help on the forums (do devs read these?) but I have gotten no responses.

We are trying to build our own in house appliance using tkldev. This works well for generating the ISO, but we want to distribute this as an OVA.

Our process currently entails creating the ISO (done automatically with build system) and then creating OVA manually.

I am finding it very difficult to understand what is going on with the di-live system you are using to run the ISO installer. I've tried hacking 42partman-base to add new preseed values to no avail and am in need of help.

Ideally there would be a generic way to insert custom preseeds as detailed here. I don't really care which method it is ultimately, but if a local file on the iso could be used that would be best for us because we can use the overlay to put it in the right spot.

alonswartz commented 10 years ago

Sorry for the radio silence on the forum, its been a little hectic lately.

As you noted, di-live (currently) does not support preseeding, as there hasn't been a valid use case to dedicate resources for it. Unfortunately, I'm a little rusty on the details as I wrote the partitioning code back in 2010.

Random idea - instead of manually creating the OVA, why not script its creation so it can be done automatically? We have some scripts which convert ISO's to various formats which we've been meaning to open source but require some refactoring first. If you could describe the process you perform manually I could most likely send you some code to get you started.

coopstah13 commented 10 years ago

Sure, perhaps we just need to change our process some.

Right now we have a tkldev build generate an ISO. The manual steps I perform (note most can be automated, but since i couldn't automate iso install I haven't spent time on them)

Create VM on ESX host with CPU/MEM/Disk configuration we like. Mount the ISO on the virtual cdrom interface on the vm Power on the VM and run the install, when install is done power off machine before it boots back up again (to avoid firstboot running) Create an OVA from the VM (we use ovftool to do this currently).

If I could get a VMDK instead of ISO from the build (in the firstboot state, grub installed to mbr, etc) then I could automate around that and do the rest quite easily.

Thanks

coopstah13 commented 10 years ago

Any ETA on those scripts?

coopstah13 commented 10 years ago

Even just high level details about what your scripts do would be appreciated at this point.

You must have a lot of magic going on, because I can't find any details about how to go from an ISO to an OVA file anywhere on the web.

Unfortunately your choice on not using debian-installer to perform the installation makes this much harder than it should be (not sure what your reason was and not judging). In any case, because the OS is debian based, I should be able to create a preseed.cfg file just like I would for a regular debian automated install.

safderkhan commented 9 years ago

Is there a plan to add option for preseeding to di-live ? Great tool to convert VM's to ISO's for bare metal installation but without the ability to pre-seed we cannot use it for unattended installs.

JedMeister commented 9 years ago

@coopstah13 Sorry for such ridiculously slow response on this. I know how frustrating that can be! I will try to get that build code opened ASAP. Even if you have moved on and it's no longer relevant to you it needs to be public IMO.

FWIW, AFAIK the rational behind the custom di-live is that Debian doesn't support running live by default and that was an important feature of TurnKey (especially early on in the piece). So di-live was created to allow both running live and installation.

TurnKey provides inithooks to allow for customisation of installations (which works regardless of build type e.g. works great with VMDK etc as well as ISO) that the idea of making di-live also support seeding is superfluous to our needs...

So @safderkhan perhaps it may be worth you investigating how inithooks may be an alernate route to provide what you need?

I think ideally it would be great if di-live did also support preseeding, however I'm not sure when that will happen - it certainly isn't a priority for us...

coopstah13 commented 9 years ago

For me the problem is not solved by inithooks.

I needed the pre-first boot stuff handled, formatting the disk, etc. Thats why I asked about getting a VMDK out of the build instead of the ISO. I don't need any help beyond automating the disk partitioning/formatting.

JedMeister commented 9 years ago

Ah ok. Well the VMDK build code would probably solve that issue for you as you can make it partition the image as you instruct. I'll get onto that for you (us!) :)

JedMeister commented 9 years ago

FWIW the di-live code has just been fully synced with the public GitHub repo (IIRC it was here already but not quite complete...). For anyone that is inclined feel free to tweak it and issue a pull request...

JedMeister commented 9 years ago

The build scripts (called 'buildtasks') are now public. They've been on GitHub for a while now but I forgot about this thread... So it still doesn't directly address this feature request but it should allow you to workaround it...

JedMeister commented 8 years ago

FWIW I closed this issue in favour of #412 as it would be resolved by reverting to the default debian-installer.

We are a little in a bind on this one. As we intend to rebase on the debian-installer at some point; there's no real desire to add this (or any other) feature(s) to di-live (which already exist in the default debian-installer). However we aren't in any rush to replace di-live because it involves a fair bit of effort in testing etc and di-live still works (although obviously doesn't supply all the desired features)...

So if anyone wants to work on this issue (either by testing the re-implementation of debian-installer or a pull request against di-live) please feel free to reopen this issue and/or let us know.

JedMeister commented 7 years ago

I'm actually going to reopen this as whilst there is overlap; this is a specific issue that may be addressed in multiple ways.

JedMeister commented 6 years ago

As per #932 & #942, we'll defer this for v15.0. It would have been awesome to finally resolve it, but we're already so far behind, that we need to focus on getting something released!