Univention Bugzilla – Attachment 4916 Details for
Bug 29759
System Setup Memberserver wieder hinzufügen
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Fix system role change
29759.patch (text/plain), 6.98 KB, created by
Dirk Wiesenthal
on 2012-12-12 20:52:11 CET
(
hide
)
Description:
Fix system role change
Filename:
MIME Type:
Creator:
Dirk Wiesenthal
Created:
2012-12-12 20:52:11 CET
Size:
6.98 KB
patch
obsolete
>Index: univention-system-setup/umc/js/setup/BasisPage.js >=================================================================== >--- univention-system-setup/umc/js/setup/BasisPage.js (Revision 37753) >+++ univention-system-setup/umc/js/setup/BasisPage.js (Arbeitskopie) >@@ -246,7 +246,7 @@ > } > if (!values.root_password) { > var widget = this._form.getWidget('root_password'); >- if (!widget.required) { >+ if (!widget.get('required')) { > warnings.push(_('Root password empty. Continue?')); > } // else it is invalid and will be caught in save() > } >Index: univention-system-setup/umc/js/setup/LanguagePage.js >=================================================================== >--- univention-system-setup/umc/js/setup/LanguagePage.js (Revision 37753) >+++ univention-system-setup/umc/js/setup/LanguagePage.js (Arbeitskopie) >@@ -126,7 +126,7 @@ > return this._localesDeferred.then(function(locales) { > return array.map(ids, function(id) { > if (typeof id == "string") { >- return { id: id, label :locales[id] }; >+ return { id: id, label: locales[id] }; > } > return id; > }); >Index: univention-system-setup/umc/js/setup/SystemRolePage.js >=================================================================== >--- univention-system-setup/umc/js/setup/SystemRolePage.js (Revision 37753) >+++ univention-system-setup/umc/js/setup/SystemRolePage.js (Arbeitskopie) >@@ -73,8 +73,7 @@ > { id: 'domaincontroller_master', label: _('Domain controller master') }, > { id: 'domaincontroller_backup', label: _('Domain controller backup') }, > { id: 'domaincontroller_slave', label: _('Domain controller slave') }, >- // Disable memberserver selection: Bug #29757 >- // { id: 'memberserver', label: _('Member server') } >+ { id: 'memberserver', label: _('Member server') } > // { id: 'basesystem', label: _('Base system') } > ] > }, { >Index: univention-system-setup/umc/python/setup/setup_script.py >=================================================================== >--- univention-system-setup/umc/python/setup/setup_script.py (Revision 37753) >+++ univention-system-setup/umc/python/setup/setup_script.py (Arbeitskopie) >@@ -361,9 +361,12 @@ > def reopen_cache(self): > self.package_manager.reopen_cache() > >+ def mark_auto(self, auto, *pkgs): >+ self.package_manager.mark_auto(auto, *pkgs) >+ > def commit(self, install=None, remove=None, msg_if_failed=''): > with self.noninteractive(): >- self.package_manager.commit(install, remove, msg_if_failed) >+ self.package_manager.commit(install, remove, msg_if_failed=msg_if_failed) > > def install(self, *pkg_names): > with self.noninteractive(): >@@ -383,7 +386,7 @@ > return self.package_manager.cache[pkg_name] > except KeyError: > self.error(_('Failed to get package for Role %s') % role_name) >- return False >+ return None > > def autoremove(self): > with self.noninteractive(): >Index: univention-system-setup/usr/lib/univention-system-setup/scripts/role/10role >=================================================================== >--- univention-system-setup/usr/lib/univention-system-setup/scripts/role/10role (Revision 37753) >+++ univention-system-setup/usr/lib/univention-system-setup/scripts/role/10role (Arbeitskopie) >@@ -30,7 +30,6 @@ > # License with the Debian GNU/Linux or Univention distribution in file > # /usr/share/common-licenses/AGPL-3; if not, see > # <http://www.gnu.org/licenses/>. >-import sys > import os.path > import shutil > import glob >@@ -89,15 +88,14 @@ > > self.finish_task() > >+ self.install(wanted_server_role_package) > if current_server_role_package: >- self.commit(install=[wanted_server_role_package], remove=[current_server_role_package]) >- else: >- self.commit(install=[wanted_server_role_package]) >- >+ self.uninstall(current_server_role_package) > self.finish_task() > > # mark these packages as manually installed >- self.install('univention-pam', 'univention-management-console') >+ self.mark_auto(False, 'univention-pam', 'univention-management-console') >+ self.reopen_cache() > > # apt-get autoremove > self.autoremove() >Index: univention-lib/python/package_manager.py >=================================================================== >--- univention-lib/python/package_manager.py (Revision 37753) >+++ univention-lib/python/package_manager.py (Arbeitskopie) >@@ -309,11 +309,11 @@ > self.unlock() > > def _set_apt_pkg_config(self, options): >- revert_options = {} >- for option_name, option_value in options.iteritems(): >+ revert_options = [] >+ for option_name, option_value in options: > old_value = apt_pkg.config.get(option_name) > apt_pkg.config[option_name] = option_value >- revert_options[option_name] = old_value >+ revert_options.append((option_name, old_value)) > return revert_options > > def add_hundred_percent(self): >@@ -347,12 +347,12 @@ > @contextmanager > def brutal_noninteractive(self): > with self.noninteractive(): >- options = { >- 'DPkg::Options::': '--force-overwrite', >- 'DPkg::Options::': '--force-overwrite-dir', >- 'APT::Get::Trivial-Only': 'no', >- 'quiet': '1', >- } >+ options = [ >+ ('DPkg::Options::', '--force-overwrite'), >+ ('DPkg::Options::', '--force-overwrite-dir'), >+ ('APT::Get::Trivial-Only', 'no'), >+ ('quiet', '1'), >+ ] > revert_options = self._set_apt_pkg_config(options) > try: > yield >@@ -364,12 +364,12 @@ > ''' dont ever ask for user input ''' > old_debian_frontend = os.environ.get('DEBIAN_FRONTEND') > os.environ['DEBIAN_FRONTEND'] = 'noninteractive' >- options = { >- 'APT::Get::Assume-Yes': 'true', >- 'APT::Get::force-yes': 'true', >- 'APT::Get::AllowUnauthenticated': '1', >- 'DPkg::Options::': '--force-confold', >- } >+ options = [ >+ ('APT::Get::Assume-Yes', 'true'), >+ ('APT::Get::force-yes', 'true'), >+ ('APT::Get::AllowUnauthenticated', '1'), >+ ('DPkg::Options::', '--force-confold'), >+ ] > revert_options = self._set_apt_pkg_config(options) > try: > yield >@@ -440,6 +440,14 @@ > for pkg in self.cache: > yield pkg > >+ def mark_auto(self, auto, *pkgs): >+ '''Immediately sets packages to automatically >+ installed (or not). Calls commit()!''' >+ for pkg in self.get_packages(pkgs): >+ pkg.mark_auto(auto) >+ self.commit() >+ self.reopen_cache() >+ > def mark(self, install, remove, dry_run=False): > '''Marks packages, returns all > installed, removed or broken packages. >@@ -464,8 +472,12 @@ > for pkg in self.cache.get_changes(): > if pkg.marked_install or pkg.marked_upgrade: > to_be_installed.add(pkg.name) >+ if pkg in remove: >+ broken.add(pkg.name) > if pkg.marked_delete: > to_be_removed.add(pkg.name) >+ if pkg in install: >+ broken.add(pkg.name) > if pkg.is_inst_broken: > broken.add(pkg.name) > # some actions can change flags in other pkgs, >@@ -572,7 +584,7 @@ > pkg = self.cache[pkg_name] > if pkg.is_auto_removable: > self.progress_state.info(_('Deleting unneeded %s') % pkg.name) >- # dont autofix. maybe some errors magically >+ # dont auto_fix. maybe some errors magically > # disappear if we just remove > # enough packages... > pkg.mark_delete(auto_fix=False)
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 29759
:
4916
|
4933
|
4977
|
4979