ACC SHELL

Path : /usr/share/YaST2/clients/
File Upload :
Current File : //usr/share/YaST2/clients/storage_finish.ycp

/**
 * File:
 *  storage_finish.ycp
 *
 * Module:
 *  Step of base installation finish
 *
 * Authors:
 *  Jiri Srain <jsrain@suse.cz>
 *
 * $Id: storage_finish.ycp 58237 2009-07-31 09:55:20Z aschnell $
 *
 */

{

textdomain "storage";

import "Storage";
import "StorageSettings";
import "StorageUpdate";
import "Mode";
import "Installation";
import "Initrd";

any ret = nil;
string func = "";
map param = $[];

/* Check arguments */
if( size(WFM::Args())>0 && is(WFM::Args(0), string) )
    {
    func = (string)WFM::Args(0);
    if(size(WFM::Args()) > 1 && is(WFM::Args(1), map))
	param = (map)WFM::Args(1);
    }

y2milestone ("starting storage_finish");
y2debug("func=%1", func);
y2debug("param=%1", param);

if (func == "Info")
    {
    return (any)$[
	"steps" : 1,
	// progress step title
	"title" : _("Saving file system configuration..."),
	"when" : [ `installation, `live_installation, `update, `autoinst ],
	];
    }
else if (func == "Write")
    {
/*
    list<string> storage_initrdm = (list<string>)Storage::GetRootInitrdModules();
    foreach(string m, storage_initrdm, {
        Initrd::AddModule (m, "");
    });
*/
    if( !Mode::update () )
	{
	SCR::Execute (.target.mkdir, Installation::sourcedir);
        Storage::FinishInstall ();
	}
    else
	{
        StorageUpdate::Update(Installation::installedVersion, Installation::updateVersion);
	}
    if (Storage::CheckForLvmRootFs() )
	{
	SCR::Execute (.target.bash, "/sbin/vgscan");
	}
    Storage::SaveUsedFs();
    StorageSettings::Save();
    }
else
    {
    y2error ("unknown function: %1", func);
    ret = nil;
    }

y2debug("ret=%1", ret);
y2milestone("storage_finish finished");
return ret;

} /* EOF */

ACC SHELL 2018