<div dir="ltr">Please see my comments inline.<br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Dec 13, 2017 at 9:36 AM, David Martin <span dir="ltr">&lt;<a href="mailto:davmarti@redhat.com" target="_blank">davmarti@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">including aerogear-dev</div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="gmail-h5">On 13 December 2017 at 08:55, Craig Brookes <span dir="ltr">&lt;<a href="mailto:cbrookes@redhat.com" target="_blank">cbrookes@redhat.com</a>&gt;</span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5"><div dir="ltr">Hey guys,<div><br></div><div><b>tldr</b></div><div><b>- Use a combination of configmaps and secrets to store public (ie client config) vs secret (ie credentials) when provisioning services via an APB</b></div><div><b>- Use proposals for these kind of changes (ie where they are larger changes, breaking changes or changes in technical direction that have cross cutting concerns.)</b></div><div><b>- As we have many pieces, setup aerogear/proposals repo.</b></div><div><br></div><div>I would like to suggest that we  make use of a mixture of configmap and secrets during the provision of a mobile &quot;aware&quot; service.</div><div>Currently when we provision a service we must also create a secret with a label: mobile:enabled and at least two pieces of information:</div><div>- uri</div><div>- name</div><div>but it often contains more (such as username and password etc)</div><div><div>This secret is used by the UI to represent that the service is present in the namespace and to display the credential information that allows the developer to sign into the service.</div><div></div></div><div>During the PoC this secret was also used to populate the mobile client config. This meant filtering out fields that we did not want the mobile client to have access to.</div><div>My suggestion is that we move to using an additional configmap labeled &quot;mobile:enabled&quot; that contains the public information that can be exposed to the mobile client as configuration and a secret still labeled &quot;mobile:enabled&quot; to capture other information such as the credentials for logging into the service.</div><div><br></div></div></div></div></blockquote></div></div></blockquote><div> </div><div><font color="#0000ff">+1. This is a quote I found from the author of both secret &amp; configmap:</font></div><div><font color="#0000ff"><br></font></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><ol style="margin:0px 0px 1em 30px;padding:0px;border:0px;font-variant-numeric:inherit;font-stretch:inherit;font-size:15px;line-height:inherit;font-family:Arial,&quot;Helvetica Neue&quot;,Helvetica,sans-serif;vertical-align:baseline;list-style-position:initial"><li style="margin:0px 0px 0.5em;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;font-size:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;word-wrap:break-word"><font color="#0000ff">Use secrets for things which are actually secret like API keys, credentials, etc</font></li><li style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;font-size:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;word-wrap:break-word"><font color="#0000ff">Use config map for not-secret configuration data</font></li></ol></blockquote><div><font color="#0000ff">So the proposed change is well aligned with this statement.</font></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5"><div dir="ltr"><div></div><div> This really amounts to a proposal. Which brings me to the second question. Where to keep proposals? I would like us to standardise on have a public record of technical changes. These proposals should capture the following:</div><div>1) What</div><div>2) Why</div><div>3) How</div><div>As an example here is a proposal that I put together for the ansible service broker:</div><div><a href="https://github.com/openshift/ansible-service-broker/blob/master/docs/proposals/last-operation-description.md" target="_blank">https://github.com/openshift/a<wbr>nsible-service-broker/blob/mas<wbr>ter/docs/proposals/last-operat<wbr>ion-description.md</a></div><div>This shows the kind of level of detail that I believe we should be capturing.</div><div>When is a proposal necessary? In my experience they are often used for larger changes, breaking changes or changes in technical direction that have cross cutting concerns. So in the case of my change outlined above, it is a breaking change that both the CLI and UI need to be aware of along with the developers of service APBs and so it should be a proposal.</div><div>In the ansible service broker case the proposal is kept in the docs dir of the repo, however for something larger like Kubernetes they have a separate repo <a href="https://github.com/kubernetes/community" target="_blank">https://github.com/kubern<wbr>etes/community</a>. </div><div>We could do something similar: aerogear/proposals with directories for each area </div><div>- core</div><div>   - ui</div><div>   - cli</div><div>   - ide-extenstions</div><div>- services</div><div>  - apbs</div><div>  - push</div><div>  - sync</div><div>...</div></div></div></div></blockquote></div></div></blockquote><div><br></div><div><font color="#0000ff">+1 on creating a repo for the proposals. I also want to add sometimes there are a few options on the &#39;How&#39;. In that case, it&#39;s important to list all the options and explain why one of them is being chosen.</font></div><div><font color="#0000ff"><br></font></div><div><font color="#0000ff">We probably also want to capture the status of the proposal - e.g. accepted, rejected, work in progress or completed etc so that community members can easily find out what have been done and what haven&#39;t.</font></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="gmail-h5"><div dir="ltr"><div><br></div><div>I think this would allow the owner or gatekeeper of the proposal to be clearly identified.</div><div><br></div><div>Interested in hearing thoughts and opinions</div><span class="gmail-m_-7048809778993258961HOEnZb"><font color="#888888"><div><br></div><div><br></div><div><br></div><div>-- <br><div class="gmail-m_-7048809778993258961m_4830167983071781500gmail_signature"><div dir="ltr">Craig Brookes<div>RHMAP </div><div>@maleck13 Github</div></div></div>
</div></font></span></div>
<br></div></div>______________________________<wbr>_________________<br>
feedhenry-dev mailing list<br>
<a href="mailto:feedhenry-dev@redhat.com" target="_blank">feedhenry-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/feedhenry-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman<wbr>/listinfo/feedhenry-dev</a><br>
<br></blockquote></div><span class="gmail-HOEnZb"><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div class="gmail-m_-7048809778993258961gmail_signature"><div dir="ltr"><div><div dir="ltr">David Martin<div>Red Hat Mobile</div><div>Twitter: <span style="font-size:12.8px">@irldavem</span></div><div><span style="font-size:12.8px">IRC: @irldavem (feedhenry, mobile-internal)</span></div></div></div></div></div>
</font></span></div>
<br>______________________________<wbr>_________________<br>
feedhenry-dev mailing list<br>
<a href="mailto:feedhenry-dev@redhat.com">feedhenry-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/feedhenry-dev" rel="noreferrer" target="_blank">https://www.redhat.com/<wbr>mailman/listinfo/feedhenry-dev</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><p style="color:rgb(0,0,0);font-family:overpass,sans-serif;font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span>WEI</span> <span>LI</span></p><p style="color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:10px;margin:0px 0px 4px;text-transform:uppercase"><span>SENIOR SOFTWARE ENGINEER</span></p><p style="font-family:overpass,sans-serif;margin:0px;font-size:10px;color:rgb(153,153,153)"><a href="https://www.redhat.com/" style="color:rgb(0,136,206);margin:0px" target="_blank">Red Hat <span>Mobile</span></a></p><p style="font-family:overpass,sans-serif;margin:0px 0px 6px;font-size:10px;color:rgb(153,153,153)"><span style="margin:0px;padding:0px"><a href="mailto:weil@redhat.com" style="color:rgb(0,136,206);margin:0px" target="_blank">weil@redhat.com</a>   </span> <span>M: <a href="tel:+353862393272" style="color:rgb(0,136,206);font-size:11px;margin:0px" target="_blank">+353862393272</a>    </span></p><table border="0" style="color:rgb(0,0,0);font-family:overpass,sans-serif;font-size:medium"><tbody><tr><td width="100px"><a href="https://red.ht/sig" target="_blank"><img src="https://www.redhat.com/files/brand/email/sig-redhat.png" width="90" height="auto"></a></td></tr></tbody></table></div></div></div></div>
</div></div>