summaryrefslogtreecommitdiffstats
path: root/pyanaconda/installclass.py
Commit message (Collapse)AuthorAgeFilesLines
* Remove the storage module and replace it with blivet.David Lehman2013-01-281-3/+3
|
* Move tsort, platform, and baseudev into storage.David Lehman2013-01-281-1/+2
| | | | Merge baseudev into storage.udev.
* Remove installclass arch filtering.David Lehman2013-01-281-4/+0
|
* Remove some modules obsoleted by the packaging module.David Lehman2013-01-081-7/+0
|
* Remove anaconda.instLanguage object and language moduleVratislav Podzimek2012-09-041-1/+0
| | | | | We now use ksdata and execute methods for storing and writing configuration.
* networking: mirror end-of-installation network config tweaks in ksdata.Radek Vykydal2012-08-271-1/+2
| | | | | | | ksdata are updated in NetworkSpoke.apply from ifcfg files. At the end of installation we need to modify ifcfg files (network configuration) for devices used by storage and to set ONBOOT defaults. So update also ksdata.
* Streamline autopart request setup slightly.David Lehman2012-08-131-4/+11
| | | | | | | | The storage instance contains a platform instance, so there's no need to pass one in explicitly. Also, setDefaultPartitioning seems to be a good place to set fstype for boot requests only once.
* Don't use "swap" as a variable name; it's already the name of a module.Chris Lumens2012-08-031-2/+2
|
* Merge branch 'master' into newui-mergeChris Lumens2012-08-031-3/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.am anaconda data/systemd/anaconda.target pyanaconda/bootloader.py pyanaconda/constants.py pyanaconda/iutil.py pyanaconda/kickstart.py pyanaconda/network.py pyanaconda/vnc.py scripts/makeupdates
| * Move swapSuggestion to storage and use a new suggested algorithm for itVratislav Podzimek2012-06-271-3/+4
| | | | | | | | | | | | | | | | | | We were using an algorithm that suggested the swap size as 2 GB + size of RAM, but this resulted in huge swaps on machines with a lot of RAM. The new algorithm comes from the discussion with other teams. (ported 84b3444a277b73abeaddf7d4b186a79569eb56d2 from rhel6-branch) (ported 37415063594d00c896ff3c50496582f0c4e9e3d9 from rhel6-branch)
* | remove Network(): list of network devices, final stepsRadek Vykydal2012-07-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is almost the final step, the object is not used anymore, I am keeping the rest only not to forget to handle what is left: - I need to look at imageInstall - creating default ifcfg files (setDefaultConfig) should go to dracut or some network initialization step The whole patchset removes anaconda.network object aiming to have all data/configuration in ksdata. The object was needed for our GUI using nm-c-e. We used to keep list of device configuration objects (basically ifcfg dictionaries) in it so that we could tweak them to be able to use nm-c-e for configuration/activation of devices. Now it seems we can do without the list although we still need to do some modifications of ifcfg files at the end of installation (setting onboot policy, setting values for devices used for storage) Hopefuly we'll be able to represent all the data stored in network object in ksdata. Following to the patchset I want to update ksdata with NetworkData objects for all devices and use it to replace network.getDevices(). I have to think where it should happen: - in kickstart.py - or somewhere in pre-gui network initialization (so that it happens also for non-ks cases) where we e.g. activate default device if needed. - or in initialize of standalone spoke - seems to late, we'll need it already for eventual bring-up of network ----- To sum up what the network.py serves for now: Some of network utility functions (more of them are in isys): - hostname sanity checking - ip sanity checking - hostname resolution - status of networking - connected? - list of active devices - logging (ifcfg files) Network configuration: - hostname setting (getting?) - note: storage (lvm, raid) is using hostname for default names - ksdevice resolution (link, MAC address, bootif) - probably we'll be able to remove it, now it is only used for unspecified --device in kickstart network command - write kickstart (currently from ifcfg config) - used by apply method - write dracut arguments (from ifcfg config) - note: depends on storage - modify configuration of target system (ifcfg files) - note: depends on storage - ONBOOT policy (differs on rhel and Fedora) - FCoE - ONBOOT=yes the devices - root on iSCSI - NM_CONTROLLED=no for root on iscsi (there is a NM BZ to fix this) - write /etc/sysconfig/network configuration - this should be reviewed - copy network configuration files to system - ifcfg-<iface> files and wireless key-<iface> files - dhclient-<iface>.conf files (dhcpclass and dhcp timeout which is not supported in noloader) - /etc/sysconfig/network - /etc/resolv.conf - genrated by NM - /etc/udev/rules.d/70-persistent-net.rules (review) - disable ipv6 on target system (noipv6 boot/ks option)
* | Remove enough of dispatcher so anaconda works without partIntfHelpers.Chris Lumens2012-07-171-64/+0
| | | | | | | | | | | | | | Our tangled set of imports means that anaconda was still trying to import partIntfHelpers through dispatch and rescue mode. This patch breaks those imports (which likely further breaks rescue and upgrade modes) and makes the gui work again.
* | Merge branch 'master' into newui-mergeBrian C. Lane2012-06-201-5/+14
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.am anaconda anaconda.spec.in loader/loader.c loader/net.c loader/unpack.c po/POTFILES.in pyanaconda/__init__.py pyanaconda/bootloader.py pyanaconda/cmdline.py pyanaconda/constants.py pyanaconda/dispatch.py pyanaconda/errors.py pyanaconda/flags.py pyanaconda/iutil.py pyanaconda/kickstart.py pyanaconda/platform.py pyanaconda/storage/__init__.py pyanaconda/storage/devicetree.py pyanaconda/storage/fcoe.py pyanaconda/storage/formats/swap.py pyanaconda/storage/iscsi.py pyanaconda/storage/partitioning.py pyanaconda/yuminstall.py scripts/makeupdates
| * Move sshpw handling out of AnacondaJesse Keating2012-06-081-1/+0
| | | | | | | | | | | | | | | | This creates an ExecStartPre on the anaconda-sshd.service that will check for a kickstart entry for sshpw. It will add/modify users accordingly prior to launching the sshd service. Since now sshpw and sshd bring up happens outside of and before anaconda starts, we can remove sshd.py and any reference to it.
| * Be more verbose about upgrade failures (#735060)Brian C. Lane2012-02-101-1/+11
| | | | | | | | | | | | When an installed system cannot be upgraded it may be helpful to know if it was the product, version or arch that didn't match. This propagates that info up from productUpgradable so that it can be show to the user.
| * Add new field to PartSpec to indicate btrfs reqs.David Lehman2011-12-191-3/+3
| | | | | | | | Things that should be on lvm should not necessarily be on btrfs.
* | Improve the runspoke.py tool and make it callable from makeMartin Sivak2012-05-241-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | make runspoke SPOKE_MODULE=source or make runspoke SPOKE_MODULE=source SPOKE_CLASS=InstallSource - runspoke now accepts the name of the module containing the spoke the user wants to run on command line and will find the spoke automatically - as an optional second argument, the script accepts the name of the spoke class - install classes and gi introspection files are looked for in anaconda sources first, so there is no need to install the anaconda-widgets package to the system - anaconda should use ANACONDA_DATA, ANACONDA_WIDGETS_DATA and ANACONDA_INSTALL_CLASSES env variables to look for data files if those variables are defined - there was a circular dependency between yuminstall, backend and kickstart modules, which caused import yuminstall to fail, because: yuminstall called backend, which called kickstart, which requested NoSuchGroup from yuminstall. NoSuchGroup was present in the source, but much later, so it hadn't been evaluated yet and the import failed with missing symbol error.
* | Run kickstart %post scripts at the end of installation.Chris Lumens2012-05-081-1/+0
| | | | | | | | | | Certain portions of the install are now implemented as kickstart scripts, so they need to start being run.
* | Remove all the writeKS methods except in network and storage.Chris Lumens2012-04-241-1/+0
| | | | | | | | | | | | | | | | Those appear to have a lot of information still in them that may not be present either in pykickstart or elsewhere in anaconda. Those still won't be called, but I'm not yet comfortable removing them entirely. Also, use pykickstart to do the writeKS stuff now.
* | Set the default packaging payload as an attribute on Anaconda.Chris Lumens2012-02-281-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've first removed the definitions of getBackend from our standard install classes. The base class returns None. For other products with their own install classes, they can have getBackend return something. For our products, we will fall back to looking up the payload class based on flags. Note that payload.setup() still needs to be called, but this should be done intentionally when it's needed since it must happen after the network is up and storage is populated. Note also that this adds more crud to Anaconda, but we're going to be removing most of this object later so hopefully it won't be so bad. We'll also need to better document install classes.
* | Move setfilecons code into a kickstart script, too.Chris Lumens2012-02-221-1/+0
| |
* | Log file copying can be handled by a kickstart script now.Chris Lumens2012-02-221-1/+0
|/
* Default to an active network device after reboot on Fedora (ONBOOT) (#498207)Radek Vykydal2011-10-051-0/+3
| | | | | | If no device was activated during install (e.g. DVD install), set ONBOOT=yes for first wired device having link found. (Which means the device will be brought up after system boot).
* Change IsBeta to IsFinalMartin Gracik2011-07-261-1/+1
| | | | | | | When doing composes pungi (and lorax) uses a flag --isfinal, to set a final release, otherwise it is considered a beta release by default. This patch makes the final vs beta more consistent with the composes.
* Make /home autoreq grow a bit faster in relation to root.David Lehman2011-06-271-1/+1
| | | | | | Previously, with a 60G disk you'd end up with something like 50G/7G root/home split. With this change it's more like 39G/19G, which is probably more what people would expect.
* Keep dracut settings in sets instead of many long strings.Ales Kozumplik2011-06-241-1/+1
| | | | | | | This will avoid duplicities in the resulting kernel boot argument line. The patch is merged from the rhel6-branch and since bootloader.py has been overhauled the changes there are different.
* Allow autopart without lvm.David Lehman2011-06-081-3/+4
| | | | Use LVM by default.
* cosmetic: dispatch.request_step is dispatch.request_steps.Ales Kozumplik2011-05-191-1/+1
| | | | Follow the same convention as the other dispatcher methods.
* cosmetic: dispatch.skipStep is dispatch.skip_stepsAles Kozumplik2011-05-191-7/+7
| | | | Follow the same convention as the other dispatcher methods.
* dispatch: fix remaining places using the old dispatch interface.Ales Kozumplik2011-05-191-1/+1
| | | | | | | | dispatch.skipStep("step", skip=0) is dispatch.request_step("step") now and can not be unskipped again. dispatch.stepInSkipList is dispatch.step_disabled and there's a function for the inverse check: dispatch.step_enabled.
* dispatch: Fix rules for running the partitioning step.Ales Kozumplik2011-05-191-1/+0
| | | | | | | | | | | This step is not scheduled by default, it is skipped for any text installation and many kickstart commands (like autopart), it is requested if the user selects "review partitioning layout" on the parttype screen. There is a mechanism in autopartitioning that enables manual partitioning screen (if available) when autopartitioning fails. Instead of checking the availability this just tries to request the manual partitioning step and catches DispatcherError for those cases where this is not possible.
* dispatch: All skips are permanent now.Ales Kozumplik2011-05-191-6/+6
| | | | | That means skipStep("step", permanent=1) is redundant. Also, since the new dispatch interface does not support it, remove the skip=1 argument.
* Cleanup how an installer interface can declare steps it does not implement.Ales Kozumplik2011-05-191-1/+1
|
* Throw away the dispatcher 'skipList' and give Step a state.Ales Kozumplik2011-05-191-1/+1
| | | | | | In particular, 'scheduled' will run if not explicitly skipped, 'skipped' means 'is never going to be run' and 'requested' means 'will run and can not be skipped'.
* Turn sshd setup, kicstart execution and the rescue mode into dispatch steps.Ales Kozumplik2011-05-041-0/+1
| | | | | | | | | | | | | | | | | Involves: - making the RescueInterface compatible with the gui and tui interfaces (so they all can be instantiated in the same way) - the rescue step is disabled by default and never returns. It is enabled if kickstart/command line requires it. - kickstart step is disabled by default, enabled only if a kickstart file was provided. - all the sshd methods (setting user accounts, generating keys) were moved to a separete file, 'sshd.py' - the order of actions during anaconda startup had to be changed (setupDisplay() was called before we parsed kickstart which tells us whether or not to use vnc) Related: https://fedoraproject.org/wiki/Anaconda/Features/Rework_dispatch
* Remove the second upgrade check from yuminstall.py.Chris Lumens2011-04-151-2/+10
| | | | | | This was largely a duplicate of what we do when looking for upgradable roots. Along the way, however, I've gotten rid of the ability to upgrade from one arch to another. We were already saying it was unlikely to work.
* Update remaining parts of anaconda to use new bootloader module.David Lehman2011-04-071-3/+2
|
* Make the "comps" translation domain dynamic.Ales Kozumplik2011-03-141-0/+8
| | | | | | | | | In Fedora, for instance, there's no comps localization file (there's neither a product.img). This patch should make the installation tasks look translated Related: rhbz#681404
* remove trailing whitespace from gui.py and installclass.pyAles Kozumplik2011-02-211-6/+6
|
* No one likes the welcome step anymore, so remove it.Chris Lumens2010-10-121-1/+0
|
* Remove BETANAG, instead reading it from .buildstamp (#628688).Chris Lumens2010-09-101-1/+1
| | | | | | | | By passing buildinstall --isbeta, this in turn gets passed to mk-images which will then write out IsBeta=true to the .buildstamp file. anaconda can then read that and make the right decision. liveinst has to be different, of course.
* modules: necessary changes to the installclasses import statements.Ales Kozumplik2010-06-231-2/+3
|
* Structure the repo layout so it matches final structure better and make isys ↵Martin Sivak2010-05-311-0/+329
a real Python package. Also updates the build and autotools stuff to work with the new structure