## Default value: true
##
# locksfile.apply = true
+
+##
+## Where update items are stored
+## (example: scripts, messages)
+##
+## Valid values: path to directory
+## Default value: /var/afm
+##
+# update.datadir = /var/adm
+
+##
+## Where update messages are stored
+##
+## Valid values: path to directory
+## Default value: {update.datadir}/update-messages
+##
+# update.messagesdir = /var/adm/update-messages
+
+##
+## Where update scripts are stored
+##
+## Valid values: path to directory
+## Default value: {update.datadir}/update-scripts
+##
+# update.scriptsdir = /var/adm/update-scripts
+
+
{
apply_locks_file = str::strToBool( value, apply_locks_file );
}
+ else if ( entry == "update.datadir" )
+ {
+ update_data_path = Pathname(value);
+ }
else if ( entry == "update.scriptsdir" )
{
update_scripts_path = Pathname(value);
}
+ else if ( entry == "update.messagessdir" )
+ {
+ update_messages_path = Pathname(value);
+ }
+
}
}
}
Pathname cfg_products_path;
Pathname locks_file;
+ Pathname update_data_path;
Pathname update_scripts_path;
+ Pathname update_messages_path;
bool repo_add_probe;
unsigned repo_refresh_delay;
return _pimpl->apply_locks_file;
}
- Pathname ZConfig::updateScriptsPath() const
+ Pathname ZConfig::update_dataPath() const
+ {
+ return ( _pimpl->update_data_path.empty()
+ ? Pathname("/var/adm") : _pimpl->update_data_path );
+ }
+
+ Pathname ZConfig::update_messagesPath() const
+ {
+ return ( _pimpl->update_messages_path.empty()
+ ? Pathname(update_dataPath()/"update-messages") : _pimpl->update_messages_path );
+ }
+
+
+ Pathname ZConfig::update_scriptsPath() const
{
return ( _pimpl->update_scripts_path.empty()
- ? Pathname("/var/adm/update-scripts") : _pimpl->update_scripts_path );
+ ? Pathname(update_dataPath()/"update-scripts") : _pimpl->update_scripts_path );
}
/////////////////////////////////////////////////////////////////
* It reads /etc/zypp/zypp.conf, the filename can be overridden by
* setting the ZYPP_CONF environment variable to a different file.
*
+ * Note, if you add settings to this file, please follow the following
+ * convention:
+ *
+ * namespace.settingname
+ *
+ * should become
+ *
+ * namespace_settingName()
+ *
* \ingroup Singleton
*/
class ZConfig : private base::NonCopyable
*/
bool apply_locks_file() const;
- /**
- * Path where update scripts are stored
+ /**
+ * Path where the update items are kept (/var/adm)
*/
- Pathname updateScriptsPath() const;
+ Pathname update_dataPath() const;
+
+ /**
+ * Path where the repo metadata is downloaded and kept (update_dataPath()/).
+ * \ingroup g_ZC_REPOCACHE
+ */
+ Pathname update_scriptsPath() const;
+
+ /**
+ * Path where the repo solv files are created and kept (update_dataPath()/solv).
+ * \ingroup g_ZC_REPOCACHE
+ */
+ Pathname update_messagesPath() const;
public:
class Impl;
{
it->status().resetTransact( ResStatus::USER );
// check for and run an update script
- RunUpdateScript(ZConfig::instance().updateScriptsPath(), p->name(), p->edition().version(), p->edition().release());
+ RunUpdateScript(ZConfig::instance().update_scriptsPath(), p->name(), p->edition().version(), p->edition().release());
}
progress.disconnect();
}