Project

General

Profile

Tâche #10475

Distribution EOLE - Scénario #13757: Étude pré-scénario (45-47)

Passage de la méthode 'fill' à la méthode 'auto'

Added by christophe guerinot about 6 years ago. Updated over 5 years ago.

Status:
Fermé
Priority:
Normal
Assigned To:
Start date:
02/03/2015
Due date:
% Done:

100%

Estimated time:
2.00 h
Spent time:
Remaining (hours):
0.0

Description

pour les deux fonctions suivantes, l'adaptation de la méthode 'fill' à 'auto' ne pose aucun problème pour le calcul de la variable 'smb_ldap_admin_dn', par contre provoque l'erreur "calc_ldap_suffix() got an unexpected keyword argument 'valeur'" dans gen_config lorsque l'on accède à la rubrique samba

# -*- coding: utf-8 -*-

"""Helper for /etc/hosts in LXC containers
""" 

def calc_ldap_admin_dn(uid=None, group=None, base_dn=None):
    """ 
    Return ldap admin dn based on given uid, samba group and base dn.

    :param uid: admin's uid, beginning by uid=
    :type uid: `str`
    :param group: samba workgroup
    :type group: `str`
    :param base_dn: base dn
    :type base_dn: `str`
    :return: full admin dn
    :rtype: `str`

    """ 

    admin_dn_tmpl = u'{0}{1},ou={1},{2}'
    if uid is None or group is None or base_dn is None:
        admin_dn = None
    else:
        admin_dn = admin_dn_tmpl.format(uid, group.upper(), base_dn)
    return admin_dn

def calc_ldap_suffix(group=None, base_dn=None):

    """ 
    Return ldap suffix based on samba group and base dn.

    :param group: samba workgroup
    :type group: `str`
    :param base_dn: base dn
    :type base_dn: `str`
    :return: ldap suffix
    :rtype: `str`

    """ 

    ldap_suffix_tmpl = u'ou={0},{1}'
    if group is None or base_dn is None:
        ldap_suffix = None
    else:
        ldap_suffix = ldap_suffix_tmpl.format(group.upper(), base_dn)
    return ldap_suffix

avec les contraintes

        <auto name='calc_ldap_admin_dn' target='smb_ldap_admin_dn'>
            <param type='eole' name='uid'>ecdl_ldap_admin</param>
            <param type='eole' name='group'>smb_workgroup</param>
            <param type='eole' name='base_dn'>ldap_base_dn</param>
        </auto>
        <auto name='calc_ldap_suffix' target='smb_ldap_suffix'>
            <param type='eole' name='group'>smb_workgroup</param>
            <param type='eole' name='base_dn'>ldap_base_dn</param>
        </auto>

Un contournement, qui fonctionne, pourrait être de rajouter le paramètre 'valeur=None' pour la fonction 'calc_ldap_suffix'
comme ci-dessous

def calc_ldap_suffix(group=None, base_dn=None, valeur=None):
    """ 
    Return ldap suffix based on samba group and base dn.

    :param group: samba workgroup
    :type group: `str`
    :param base_dn: base dn
    :type base_dn: `str`
    :return: ldap suffix
    :rtype: `str`

    """ 

    ldap_suffix_tmpl = u'ou={0},{1}'
    if group is None or base_dn is None:
        ldap_suffix = None
    else:
        ldap_suffix = ldap_suffix_tmpl.format(group.upper(), base_dn)
    return ldap_suffix

10475.patch View (672 Bytes) Joël Cuissinat, 02/05/2015 11:47 AM


Related issues

Duplicated by creole - Evolution #10492: Gestion correcte du remplacement d'un fill par un auto (et inversement) Fermé

Associated revisions

Revision eb9ffe80 (diff)
Added by Philippe Caseiro almost 6 years ago

creole/var_loader.py: Application du patch 10475.patch

Ce patch résoud le problème de surcharge d'un auto après un redefine.

Correction pour la 2.5

ref #10475

Revision 096021d1 (diff)
Added by Joël Cuissinat over 5 years ago

Tests unitaire validant le redefine entre fill et auto

  • tests/test_genconfig.py : ajout de tests complémentaires dans "test_redefine()"
  • tests/dicos/redefine/*.xml : déclaration des variables associées

Ref: #10475 @1h

History

#1 Updated by Joël Cuissinat about 6 years ago

  • File 10475.patch View added
  • Tracker changed from Anomalie to Tâche
  • Estimated time set to 2.00 h
  • Parent task set to #10492
  • Remaining (hours) set to 2.0

Je joins un patch réalisé vite fait avec Manu mais qui serait à valider de façon plus globale.

#2 Updated by Joël Cuissinat over 5 years ago

  • Status changed from Nouveau to En cours
  • Assigned To set to Joël Cuissinat
  • Parent task changed from #10492 to #13757

#3 Updated by Joël Cuissinat over 5 years ago

  • % Done changed from 0 to 100
  • Remaining (hours) changed from 2.0 to 0.25

#4 Updated by Joël Cuissinat over 5 years ago

Le patch proposé a déjà été appliqué en 2.5

J'ai ajouté un test unitaire permettant de valider le remplacement d'un fill par un auto et inversement.

#5 Updated by Scrum Master over 5 years ago

  • Status changed from En cours to Fermé
  • Remaining (hours) changed from 0.25 to 0.0

Also available in: Atom PDF