<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Vladimir,<br>
    <br>
    I just put up <a class="moz-txt-link-freetext" href="https://review.openstack.org/#/c/79088/">https://review.openstack.org/#/c/79088/</a> for review to
    get the teeth-agent imported into openstack. I'm not sure if we want
    this merged immediately or if we want to get the outstanding
    non-Openstack dependencies settled before then, but hopefully this
    can help get things started.<br>
    <br>
    --<br>
    Jay Faulkner<br>
    <br>
    <div class="moz-cite-prefix">On 3/7/14, 12:53 PM, Vladimir
      Kozhukalov wrote:<br>
    </div>
    <blockquote
cite="mid:CAFLqvG4Kz7kETQsQ4x5QqChPLdKVmiwiqz6DVuHBzwoB9o8i9g@mail.gmail.com"
      type="cite">
      <div dir="ltr">Russell, 
        <div><br>
        </div>
        <div>Great to hear you are going to move towards Pecan+WSME.
          Yesterday I had a look at teeth projects. Next few days I am
          going to start contributing. First of all, I think, we need to
          arrange all that stuff about pluggable architecture. I've
          created a wiki page about Ironic python agent <a
            moz-do-not-send="true"
            href="https://wiki.openstack.org/wiki/Ironic-python-agent">https://wiki.openstack.org/wiki/Ironic-python-agent</a>. </div>
        <div><br>
        </div>
        <div>And the question about contributing. Have you managed to
          send pull request to openstack-infra in order to move this
          project into <a moz-do-not-send="true"
            href="http://github.com/stackforge">github.com/stackforge</a>?
          Or we are supposed to arrange everything (werkzeug ->
          Pecan/WSME, architectural questions) before we move this agent
          to stackforge?</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
      </div>
      <div class="gmail_extra"><br clear="all">
        <div>
          <div>Vladimir Kozhukalov</div>
        </div>
        <br>
        <br>
        <div class="gmail_quote">On Fri, Mar 7, 2014 at 8:53 PM, Russell
          Haering <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:russellhaering@gmail.com" target="_blank">russellhaering@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div dir="ltr">Vladmir,
              <div><br>
              </div>
              <div>Hey, I'm on the team working on this agent, let me
                offer a little history. We were working on a system of
                our own for managing bare metal gear which we were
                calling "Teeth". The project was mostly composed of:</div>
              <div><br>
              </div>
              <div>1. teeth-agent: an on-host provisioning agent</div>
              <div>2. teeth-overlord: a centralized automation mechanism</div>
              <div><br>
              </div>
              <div>Plus a few other libraries (including teeth-rest,
                which contains some common code we factored out of the
                agent/overlord).</div>
              <div><br>
              </div>
              <div>A few weeks back we decided to shift our focus to
                using Ironic. At this point we have effectively
                abandoned teeth-overlord, and are instead focusing on
                upstream Ironic development, continued agent development
                and building an Ironic driver capable of talking to our
                agent.</div>
              <div><br>
              </div>
              <div>Over the last few days we've been removing
                non-OS-approved dependencies from our agent: I think
                teeth-rest (and werkzeug, which it depends on) will be
                the last to go when we replace it with Pecan+WSME
                sometime in the next few days.</div>
              <div><br>
              </div>
              <div>Thanks,</div>
              <div>Russell</div>
            </div>
            <div class="HOEnZb">
              <div class="h5">
                <div class="gmail_extra"><br>
                  <br>
                  <div class="gmail_quote">On Fri, Mar 7, 2014 at 8:26
                    AM, Vladimir Kozhukalov <span dir="ltr"><<a
                        moz-do-not-send="true"
                        href="mailto:vkozhukalov@mirantis.com"
                        target="_blank">vkozhukalov@mirantis.com</a>></span>
                    wrote:<br>
                    <blockquote class="gmail_quote" style="margin:0 0 0
                      .8ex;border-left:1px #ccc solid;padding-left:1ex">
                      <div dir="ltr">As far as I understand, there are 4
                        projects which are connected with this topic.
                        Another two projects which were not mentioned by
                        Devananda are 
                        <div>
                          <a moz-do-not-send="true"
                            href="https://github.com/rackerlabs/teeth-rest"
                            target="_blank">https://github.com/rackerlabs/teeth-rest</a></div>
                        <div><a moz-do-not-send="true"
                            href="https://github.com/rackerlabs/teeth-overlord"
                            target="_blank">https://github.com/rackerlabs/teeth-overlord</a><br>
                        </div>
                        <div><br>
                        </div>
                        <div>Vladimir Kozhukalov<br>
                        </div>
                        <div class="gmail_extra">
                          <br>
                          <br>
                          <div class="gmail_quote">
                            <div>
                              <div>On Fri, Mar 7, 2014 at 4:41 AM,
                                Devananda van der Veen <span dir="ltr"><<a
                                    moz-do-not-send="true"
                                    href="mailto:devananda.vdv@gmail.com"
                                    target="_blank">devananda.vdv@gmail.com</a>></span>
                                wrote:<br>
                              </div>
                            </div>
                            <blockquote class="gmail_quote"
                              style="margin:0 0 0 .8ex;border-left:1px
                              #ccc solid;padding-left:1ex">
                              <div>
                                <div>
                                  <div dir="ltr">All,
                                    <div><br>
                                    </div>
                                    <div>The Ironic team has been
                                      discussing the need for a "deploy
                                      agent" since well before the last
                                      summit -- we even laid out a few
                                      blueprints along those lines. That
                                      work was deferred  and we have
                                      been using the same deploy ramdisk
                                      that nova-baremetal used, and we
                                      will continue to use that ramdisk
                                      for the PXE driver in the Icehouse
                                      release.</div>
                                    <div><br>
                                    </div>
                                    <div>That being the case, at the
                                      sprint this week, a team from
                                      Rackspace shared work they have
                                      been doing to create a more
                                      featureful hardware agent and an
                                      Ironic driver which utilizes that
                                      agent. Early drafts of that work
                                      can be found here:</div>
                                    <div><br>
                                    </div>
                                    <div><a moz-do-not-send="true"
                                        href="https://github.com/rackerlabs/teeth-agent"
                                        target="_blank">https://github.com/rackerlabs/teeth-agent</a><br>
                                    </div>
                                    <div><a moz-do-not-send="true"
                                        href="https://github.com/rackerlabs/ironic-teeth-driver"
                                        target="_blank">https://github.com/rackerlabs/ironic-teeth-driver</a><br>
                                    </div>
                                    <div><br>
                                    </div>
                                    <div>I've updated the original
                                      blueprint and assigned it to Josh.
                                      For reference:</div>
                                    <div><br>
                                    </div>
                                    <div><a moz-do-not-send="true"
                                        href="https://blueprints.launchpad.net/ironic/+spec/utility-ramdisk"
                                        target="_blank">https://blueprints.launchpad.net/ironic/+spec/utility-ramdisk</a><br>
                                    </div>
                                    <div><br>
                                    </div>
                                    <div>I believe this agent falls
                                      within the scope of the baremetal
                                      provisioning program, and welcome
                                      their contributions and
                                      collaboration on this. To that
                                      effect, I have suggested that the
                                      code be moved to a new OpenStack
                                      project named
                                      "openstack/ironic-python-agent".
                                      This would follow an independent
                                      release cycle, and reuse some
                                      components of tripleo
                                      (os-*-config). To keep the
                                      collaborative momentup up, I would
                                      like this work to be done now
                                      (after all, it's not part of the
                                      Ironic repo or release). The new
                                      driver which will interface with
                                      that agent will need to stay on
                                      github -- or in a gerrit feature
                                      branch -- until Juno opens, at
                                      which point it should be proposed
                                      to Ironic.</div>
                                    <div><br>
                                    </div>
                                    <div>The agent architecture we
                                      discussed is roughly:</div>
                                    <div>- a pluggable JSON transport
                                      layer by which the Ironic driver
                                      will pass information to the
                                      ramdisk. Their initial
                                      implementation is a REST API.</div>
                                    <div>- a collection of
                                      hardware-specific utilities
                                      (python modules, bash scripts,
                                      what ever) which take JSON as
                                      input and perform specific actions
                                      (whether gathering data about the
                                      hardware or applying changes to
                                      it).<br>
                                    </div>
                                    <div>- and an agent which routes the
                                      incoming JSON to the appropriate
                                      utility, and routes the response
                                      back via the transport layer.</div>
                                    <span><font color="#888888">
                                        <div><br>
                                        </div>
                                        <div><br>
                                        </div>
                                        <div>
                                          -Devananda<br>
                                        </div>
                                      </font></span></div>
                                  <br>
                                </div>
                              </div>
_______________________________________________<br>
                              OpenStack-dev mailing list<br>
                              <a moz-do-not-send="true"
                                href="mailto:OpenStack-dev@lists.openstack.org"
                                target="_blank">OpenStack-dev@lists.openstack.org</a><br>
                              <a moz-do-not-send="true"
                                href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"
                                target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
                              <br>
                            </blockquote>
                          </div>
                          <br>
                        </div>
                      </div>
                      <br>
                      _______________________________________________<br>
                      OpenStack-dev mailing list<br>
                      <a moz-do-not-send="true"
                        href="mailto:OpenStack-dev@lists.openstack.org"
                        target="_blank">OpenStack-dev@lists.openstack.org</a><br>
                      <a moz-do-not-send="true"
                        href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"
                        target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
                      <br>
                    </blockquote>
                  </div>
                  <br>
                </div>
              </div>
            </div>
            <br>
            _______________________________________________<br>
            OpenStack-dev mailing list<br>
            <a moz-do-not-send="true"
              href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
            <a moz-do-not-send="true"
              href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"
              target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
            <br>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
OpenStack-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>