<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Title" content="">
<meta name="Keywords" content="">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Apple Color Emoji";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:monospace;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"MS Mincho";
        panose-1:2 2 6 9 4 2 5 8 3 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.gmail-m8803862222613683673m7405315328385846847font
        {mso-style-name:gmail-m_8803862222613683673m_7405315328385846847font;}
span.gmail-m8803862222613683673m7405315328385846847size
        {mso-style-name:gmail-m_8803862222613683673m_7405315328385846847size;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.msoIns
        {mso-style-type:export-only;
        mso-style-name:"";
        text-decoration:underline;
        color:teal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">I wrote that script ages ago.  I needed it in the repo  so I could consistently deploy.  It may still be entirely tailored around my environment
<span style="font-family:"Apple Color Emoji"">☺</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">That said, I had always hoped someone would make a generic cloud bootstrap for Kolla based upon the work in that script originally.  Maybe this is the time.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Cheers<o:p></o:p></p>
<p class="MsoNormal">-steve<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">Jeffrey Zhang <zhang.lei.fly@gmail.com><br>
<b>Reply-To: </b>"OpenStack Development Mailing List (not for usage questions)" <openstack-dev@lists.openstack.org><br>
<b>Date: </b>Tuesday, November 28, 2017 at 7:48 PM<br>
<b>To: </b>Samuel Yaple <sam@yaple.net>, OpenStack Development Mailing List <openstack-dev@lists.openstack.org><br>
<b>Subject: </b>Re: [openstack-dev] [kolla] Ansiblize init-runonce script<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"monospace",serif">yes. it is not  <o:p>
</o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"monospace",serif">​recommend to use in prod env, i never used this script. But <o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"monospace",serif">the reality is <o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-family:"Courier",serif">lots users are using it, at least in the test environment.</span><o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"monospace",serif">and there are patches trying to make this script ​<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:9.5pt;font-family:"monospace",serif">idempotent
<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Courier",serif">​ recently.​<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">2017<span style="font-family:"MS Mincho",serif">年</span>11<span style="font-family:"MS Mincho",serif">月</span>28<span style="font-family:"MS Mincho",serif">日</span> 23:28<span style="font-family:"MS Mincho",serif">,</span>"Sam Yaple" <<a href="mailto:sam@yaple.net" target="_blank">sam@yaple.net</a>><span style="font-family:"MS Mincho",serif">写道:</span><o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">For what its worth, this init-runonce script was never meant for production usage. Ops *shouldn't* be running it like you suggest. It was historically for use in the gate and a quick-n-dirty environment setup for testing.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">If you want to get into writing operations scripts, thats your prerogative, but it was discussed before and mostly considered a bad idea.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">SamYaple<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">-------- Original Message --------<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Subject: Re: [openstack-dev] [kolla] Ansiblize init-runonce script<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Local Time: November 28, 2017 8:10 AM<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">UTC Time: November 28, 2017 1:10 PM<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">From: <a href="mailto:zhang.lei.fly@gmail.com" target="_blank">
zhang.lei.fly@gmail.com</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">To: OpenStack Development Mailing List (not for usage questions) <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier",serif">in my opinion, <o:p>
</o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Courier",serif"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier",serif"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier",serif">idempotent scrip<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Courier",serif">t is very necessary.<o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847font"><span style="font-size:12.0pt;font-family:"Courier",serif">for several reason</span></span><span style="font-size:12.0pt"><o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847font"><span style="font-size:12.0pt;font-family:"Courier",serif">- there is already some idempotent logical in the script</span></span><span style="font-size:12.0pt"><o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847font"><span style="font-size:12.0pt;font-family:"Courier",serif">- it is common that this script failed by wrong configuration, </span></span><span style="font-size:12.0pt"><o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Courier",serif">  after fix the config,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier",serif">ops will want to run this script again.<o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">On Tue, Nov 28, 2017 at 7:14 PM, Paul Bourke <<a href="mailto:paul.bourke@oracle.com" target="_blank">paul.bourke@oracle.com</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">I think this came up before at one stage. My position is I don't see the need to ansible-ise small shell scripts. init-runonce is currently just an easy to understand sequence of openstack commands provided to help people test/demo their
 setups. Unless we want to make it more than that, i.e. make it idempotent, customizable, etc. I don't see the need to wheel in Ansible.<br>
<br>
On 28/11/17 03:23, Jeffrey Zhang wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">hi<br>
<br>
check this [0]. I tried to convert it  to ansible playbooks.<br>
<br>
[0] <a href="https://review.openstack.org/523072" target="_blank">https://review.openstack.org/523072</a><br>
<br>
On Tue, Nov 28, 2017 at 2:57 AM, Ravi Shekhar Jethani <<a href="mailto:rsjethani@gmail.com" target="_blank">rsjethani@gmail.com</a> <mailto:<a href="mailto:rsjethani@gmail.com" target="_blank">rsjethani@gmail.com</a>>> wrote:<br>
<br>
    Hi,<br>
<br>
    While exploring kolla-ansible I ran into a few issues with<br>
    init-runonce script. This lead to following bugs and patches:<br>
<br>
    <a href="https://launchpad.net/bugs/1732963" target="_blank">https://launchpad.net/bugs/1732963</a> <<a href="https://launchpad.net/bugs/1732963" target="_blank">https://launchpad.net/bugs/1732963</a>><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">    <a href="https://review.openstack.org/522221" target="_blank">
https://review.openstack.org/522221</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">    <<a href="https://review.openstack.org/522221" target="_blank">https://review.openstack.org/522221</a>><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">    <a href="https://review.openstack.org/521190" target="_blank">
https://review.openstack.org/521190</a><br>
    <<a href="https://review.openstack.org/521190" target="_blank">https://review.openstack.org/521190</a>><br>
<br>
    But it was highlighted that instead of fixing/changing the<br>
    script, 'ansibilzing' it would be the ideal solution.<br>
    Hence I hereby formally propose the same.<br>
<br>
    My thoughts:<br>
    * Playbook Name: init-stack.yml<br>
<br>
    * Playbook path can be:<br>
    kolla-ansible/ansible/init-stack.yml<br>
<br>
    * The play can be executed like:<br>
    $ kolla-ansible init-stack -i <inventory_file><br>
<br>
    * The cirros test image should be downloaded in /tmp<br>
<br>
    * What should be the behavior if the play is run multiple times<br>
    against the same stack?<br>
       - some error message OR<br>
       - simply ignore the action<br>
<br>
    Kindly provide suggestions.<br>
<br>
    --<br>
    Best Regards,<br>
    Ravi J.<br>
<br>
    __________________________________________________________________________<br>
    OpenStack Development Mailing List (not for usage questions)<br>
    Unsubscribe:<br>
    <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
    <<a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a>><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">    <a 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>
    <<a 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>
<br>
<br>
<br>
-- <br>
Regards,<br>
Jeffrey Zhang<br>
Blog: <a href="http://xcodest.me" target="_blank">http://xcodest.me</a> <<a href="http://xcodest.me/" target="_blank">http://xcodest.me/</a>><br>
<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><o:p></o:p></p>
</div>
</blockquote>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">__________________________________________________________________________<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">OpenStack Development Mailing List (not for usage questions)<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><o:p></o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">-- <o:p></o:p></p>
</div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847font"><span style="font-size:10.0pt;font-family:"Courier",serif">Regards,</span></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847font"><span style="font-size:10.0pt;font-family:"Courier",serif">Jeffrey Zhang</span></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span class="gmail-m8803862222613683673m7405315328385846847size"><span style="font-size:9.5pt;font-family:"Courier",serif">Blog: </span></span><a href="http://xcodest.me/" target="_blank"><span style="font-size:9.5pt;font-family:"Courier",serif">http://xcodest.me</span></a><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</div>
</div>
</body>
</html>