<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 08/18/2015 03:06 PM, Martin Basti
      wrote:<br>
    </div>
    <blockquote cite="mid:55D32DD3.3050501@redhat.com" type="cite">
      <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
      <br>
      <br>
      <div class="moz-cite-prefix">On 08/18/2015 11:32 AM, thierry
        bordaz wrote:<br>
      </div>
      <blockquote cite="mid:55D2FBAC.2030801@redhat.com" type="cite">
        <meta content="text/html; charset=UTF-8"
          http-equiv="Content-Type">
        <div class="moz-cite-prefix">On 08/18/2015 10:02 AM, Martin
          Basti wrote:<br>
        </div>
        <blockquote cite="mid:55D2E68F.7080601@redhat.com" type="cite">
          <meta content="text/html; charset=UTF-8"
            http-equiv="Content-Type">
          <br>
          <br>
          <div class="moz-cite-prefix">On 08/18/2015 09:59 AM, thierry
            bordaz wrote:<br>
          </div>
          <blockquote cite="mid:55D2E5C9.7030703@redhat.com" type="cite">
            <meta content="text/html; charset=UTF-8"
              http-equiv="Content-Type">
            <div class="moz-cite-prefix">On 08/18/2015 09:55 AM, Martin
              Basti wrote:<br>
            </div>
            <blockquote cite="mid:55D2E4E0.6010005@redhat.com"
              type="cite">
              <meta content="text/html; charset=UTF-8"
                http-equiv="Content-Type">
              <br>
              <br>
              <div class="moz-cite-prefix">On 08/18/2015 09:50 AM,
                thierry bordaz wrote:<br>
              </div>
              <blockquote cite="mid:55D2E3C1.2030404@redhat.com"
                type="cite">
                <meta content="text/html; charset=UTF-8"
                  http-equiv="Content-Type">
                <div class="moz-cite-prefix">On 08/17/2015 08:33 PM,
                  Martin Basti wrote:<br>
                </div>
                <blockquote cite="mid:55D2290F.3030509@redhat.com"
                  type="cite">Hello, <br>
                  <br>
                  the 'user-stage' command replaces 'stageuser-add
                  --from-delete' command. <br>
                  <a moz-do-not-send="true"
                    class="moz-txt-link-freetext"
                    href="https://fedorahosted.org/freeipa/ticket/5041">https://fedorahosted.org/freeipa/ticket/5041</a>
                  <br>
                  <br>
                  Thierry can you check If I don't break everything, it
                  works for me, but the one never knows. <br>
                  <br>
                  Honza can you please check the framework side? I use
                  self.api.Object.stageuser.add.* in user command, I'm
                  not sure if this is right way, but it works. <br>
                  <br>
                  Patch attached. I created it in hurry, I'm expecting
                  NACK :D <br>
                  <br>
                  <br>
                  Just question at the end: should I implement way
                  Active user -> stageuser? IMHO it would be
                  implemented internally by calling 'user-del
                  --preserve' inside 'user-stage'. <br>
                  <br>
                  <br>
                  <br>
                </blockquote>
                <font face="Times New Roman, Times, serif">Hi Martin,<br>
                  <br>
                  There is a small failure with VERSION (edewata pushed
                  his patch first ;-) )<br>
                  <br>
                </font>
                <blockquote><tt>git apply -v
                    /tmp/freeipa-mbasti-0297-Add-user-stage-command.patch</tt><br>
                  <tt>Checking patch API.txt...</tt><br>
                  <tt>Checking patch VERSION...</tt><br>
                  <tt>error: while searching for:</tt><br>
                  <tt>#                                                     


                    #</tt><br>
                  <tt>########################################################</tt><br>
                  <tt>IPA_API_VERSION_MAJOR=2</tt><br>
                  <tt>IPA_API_VERSION_MINOR=148</tt><br>
                  <tt># Last change: ftweedal - add --out option to
                    user-show</tt><br>
                  <br>
                  <tt>error: patch failed: VERSION:90</tt><br>
                  <tt>error: VERSION: patch does not apply</tt><br>
                  <tt>Checking patch ipalib/plugins/stageuser.py...</tt><br>
                  <tt>Checking patch ipalib/plugins/user.py...</tt><br>
                </blockquote>
                <font face="Times New Roman, Times, serif"><br>
                </font> </blockquote>
              There is many pending patches that may change VERSION
              number, I will change it to right one before push.<br>
              <br>
              Does code looks good for you?<br>
            </blockquote>
            <font face="Times New Roman, Times, serif">Hi Martin,<br>
              <br>
              Just a question, there is no additional permission. Did
              you test being 'admin' ?<br>
              <br>
              thanks<br>
              theirry<br>
            </font> </blockquote>
          No I didn't,.<br>
          <br>
          I preserver all permission, the original permissions should
          work.<br>
          <br>
          Martin<br>
        </blockquote>
        <font face="Times New Roman, Times, serif">Hi Martin,<br>
          <br>
          Running a test script, I have an issue with<br>
          <br>
        </font>
        <blockquote><tt>ipa stageuser-add --first=t --last=b tb1</tt><br>
          <tt>ipa: ERROR: an internal error has occurred</tt><br>
          <br>
          <br>
          <tt>[Tue Aug 18 11:16:56.440658 2015] [wsgi:error] [pid 10486]
            ipa: INFO: [jsonserver_kerb] <a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:stageadm@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM">stageadm@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM</a>:
            stageuser_add(u'tb1', givenname=u't', sn=u'b', cn=u't b',
            displayname=u't b', initials=u'tb', gecos=u't b',
            krbprincipalname=u'<a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:tb1@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM">tb1@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM</a>',


            random=False, all=False, raw=False, version=u'2.149',
            no_members=False): AttributeError</tt><br>
          <tt>[Tue Aug 18 11:21:25.198021 2015] [wsgi:error] [pid 10485]
            ipa: ERROR: non-public: AttributeError: 'DN' object has no
            attribute 'setdefault'</tt><br>
          <tt>[Tue Aug 18 11:21:25.198053 2015] [wsgi:error] [pid 10485]
            Traceback (most recent call last):</tt><br>
          <tt>[Tue Aug 18 11:21:25.198058 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipaserver/rpcserver.py",
            line 347, in wsgi_execute</tt><br>
          <tt>[Tue Aug 18 11:21:25.198062 2015] [wsgi:error] [pid
            10485]     result = self.Command[name](*args, **options)</tt><br>
          <tt>[Tue Aug 18 11:21:25.198066 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line
            443, in __call__</tt><br>
          <tt>[Tue Aug 18 11:21:25.198070 2015] [wsgi:error] [pid
            10485]     ret = self.run(*args, **options)</tt><br>
          <tt>[Tue Aug 18 11:21:25.198081 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipalib/frontend.py", line
            760, in run</tt><br>
          <tt>[Tue Aug 18 11:21:25.198133 2015] [wsgi:error] [pid
            10485]     return self.execute(*args, **options)</tt><br>
          <tt>[Tue Aug 18 11:21:25.198139 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipalib/plugins/baseldap.py",
            line 1227, in execute</tt><br>
          <tt>[Tue Aug 18 11:21:25.198144 2015] [wsgi:error] [pid
            10485]     *keys, **options)</tt><br>
          <tt>[Tue Aug 18 11:21:25.198147 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipalib/plugins/stageuser.py",
            line 373, in pre_callback</tt><br>
          <tt>[Tue Aug 18 11:21:25.198151 2015] [wsgi:error] [pid
            10485]     attrs_list, *keys, **options)</tt><br>
          <tt>[Tue Aug 18 11:21:25.198155 2015] [wsgi:error] [pid
            10485]   File
            "/usr/lib/python2.7/site-packages/ipalib/plugins/stageuser.py",
            line 277, in set_default_values_pre_callback</tt><br>
          <tt>[Tue Aug 18 11:21:25.198159 2015] [wsgi:error] [pid
            10485]     entry_attrs.setdefault('description', [])</tt><br>
          <tt>[Tue Aug 18 11:21:25.198163 2015] [wsgi:error] [pid 10485]
            AttributeError: 'DN' object has no attribute 'setdefault'</tt><br>
          <tt>[Tue Aug 18 11:21:25.199276 2015] [wsgi:error] [pid 10485]
            ipa: INFO: [jsonserver_session] <a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:stageadm@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM">stageadm@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM</a>:
            stageuser_add(u'tb1', givenname=u't', sn=u'b', cn=u't b',
            displayname=u't b', initials=u'tb', gecos=u't b',
            krbprincipalname=u'<a moz-do-not-send="true"
              class="moz-txt-link-abbreviated"
              href="mailto:tb1@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM">tb1@ABC.IDM.LAB.ENG.BRQ.REDHAT.COM</a>',


            random=False, all=False, raw=False, version=u'2.149',
            no_members=False): AttributeError</tt><br>
        </blockquote>
        <font face="Times New Roman, Times, serif"><br>
          The new set_default_values_pre_callback, can not use the
          set_default function. It is not clear why. entry_attrs is one
          of pre_callback parameter.<br>
          Should </font><font face="Times New Roman, Times, serif">set_default_values_pre_callback


          be a subfonction of pre_callback ?<br>
          <br>
          <br>
          thanks<br>
          thierry<br>
        </font> </blockquote>
      <br>
      Thank you,<br>
      <br>
      updated patch attached.<br>
    </blockquote>
    <br>
    <font face="Times New Roman, Times, serif">So far, tests are ok.<br>
      Just one comment, the 'user-stage' command description is wrong,
      as it moves an active user into the staged area<br>
      <br>
    </font><tt>user-stage                             Move deleted user
      into staged area</tt><font face="Times New Roman, Times, serif"><br>
    </font>
  </body>
</html>