<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<span style="font-family: Verdana, Geneva, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">+1 for splitting the manifests.</span>
<div style="font-family: Verdana, Geneva, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">
<br>
</div>
<span style="font-family: Verdana, Geneva, sans-serif; font-size: 11pt; color: rgb(0, 0, 0);">It gives STX-Openstack the freedom to upversion and maintain its packages without affecting the platform side.</span><br>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Cervi, Thales Elero <ThalesElero.Cervi@windriver.com><br>
<b>Sent:</b> Friday, June 16, 2023 11:01 AM<br>
<b>To:</b> StarlingX ML <starlingx-discuss@lists.starlingx.io><br>
<b>Subject:</b> [Starlingx-discuss] Manifest decoupling: StarlingX and stx-openstack application</font>
<div> </div>
</div>
<style type="text/css" style="display:none">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr">
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<span class="x_x_elementToProof" data-ogsc="rgb(0, 0, 0)" style="font-family:Calibri,Arial,Helvetica,sans-serif,serif,EmojiFont; font-size:12pt; color:rgb(0,0,0)"><span class="x_x_x_elementToProof x_x_ContentPasted0 x_ContentPasted0" data-ogsc="rgb(0, 0, 0)">Greetings
 to the community!<span data-ogsc="" class="x_x_ContentPasted0 x_ContentPasted0"><br class="x_x_ContentPasted0 x_ContentPasted0">
</span></span></span></div>
<div class="x_elementToProof" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<div class="x_x_elementToProof" data-ogsc="rgb(0, 0, 0)" style="font-family:Calibri,Arial,Helvetica,sans-serif,serif,EmojiFont; font-size:12pt; color:rgb(0,0,0)">
<div class="x_x_x_elementToProof" data-ogsc="rgb(0, 0, 0)"><span class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">I would like to bring to this mailing list a discussion we are having about splitting the stx-openstack application
 repositories from the main starlingx manifest into a new one.
<div data-ogsc=""><br class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
In order to decouple the OpenStack Clients currently shared between platform and application we are suggesting to decouple the platform and application builds in separate manifests (e.g. starlingx/manifest/default.xml and starlingx/manifest/stx-openstack.xml).</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
I understand that the new manifest needs to be created and build jobs configured properly and tested, I can also create the Stories for mapping this work later.</div>
<div data-ogsc=""><br class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
BENEFITS: we achieve the freedom of building different versions of the same packages (i.e. openstack clients) that are shared between the platform and the application.</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
The end goal would be something like:</div>
<div data-ogsc=""><br class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Remain as is   (default manifest aligns to upstream Debian version => Victoria)</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
============</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/barbican</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/keystone</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-barbicanclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-keystoneclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-horizon</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-openstackclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Only keep the services needed by the platform. Some existing patches might have been brought forward to support stx-openstack, so we should re-evaluate as part of this.</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Those would still be built as part of STX Platform builds, i.e. starlingx/manifest/default.xml</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Manifest should not include stx/openstack-armada-app repo anymore.</div>
<div data-ogsc=""><br class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Relocate (stx-openstack app independently aligns to version of choice: Victoria [current] => Antelope [future])</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
====================</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/barbican               copy-to stx/openstack-armada-app/upstream/openstack/barbican</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/keystone               copy-to stx/openstack-armada-app/upstream/openstack/keystone</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-barbicanclient  copy-to stx/openstack-armada-app/upstream/openstack/python-barbicanclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-keystoneclient  copy-to stx/openstack-armada-app/upstream/openstack/python-keystoneclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-horizon         copy-to stx/openstack-armada-app/upstream/openstack/python-horizon</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-openstackclient copy-to stx/openstack-armada-app/upstream/openstack/python-openstackclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/openstack-pkg-tools    move-to stx/openstack-armada-app/upstream/openstack/openstack-pkg-tools</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/openstack-ras          move-to stx/openstack-armada-app/upstream/openstack/openstack-ras</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-aodhclient      move-to stx/openstack-armada-app/upstream/openstack/python-aodhclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-cinderclient    move-to stx/openstack-armada-app/upstream/openstack/python-cinderclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-glanceclient    move-to stx/openstack-armada-app/upstream/openstack/python-glanceclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-gnocchiclient   move-to stx/openstack-armada-app/upstream/openstack/python-gnocchiclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-heatclient      move-to stx/openstack-armada-app/upstream/openstack/python-heatclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-ironicclient    move-to stx/openstack-armada-app/upstream/openstack/python-ironicclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-keystoneclient  move-to stx/openstack-armada-app/upstream/openstack/python-keystoneclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-neutronclient   move-to stx/openstack-armada-app/upstream/openstack/python-neutronclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-novaclient      move-to stx/openstack-armada-app/upstream/openstack/python-novaclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-openstacksdk    move-to stx/openstack-armada-app/upstream/openstack/python-openstacksdk</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-osc-lib         move-to stx/openstack-armada-app/upstream/openstack/python-osc-lib</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-oslo-messaging  move-to stx/openstack-armada-app/upstream/openstack/python-oslo-messaging</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-pankoclient     move-to stx/openstack-armada-app/upstream/openstack/python-pankoclient</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/python-wsme            move-to stx/openstack-armada-app/upstream/openstack/python-wsme</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
stx/upstream  openstack/rabbitmq-server        move-to stx/openstack-armada-app/upstream/openstack/rabbitmq-server</div>
<div data-ogsc=""><br class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
The OpenStack Distro Team will create a new directory under stx/openstack-armada-app to store all application needed packages.</div>
<div class="x_x_x_ContentPasted5 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
This will include clients and the stx-openstack Docker images we build only for the application. This way, on stx-openstack build we can build the same packages (name) but using different versions/source code. Manifest does not include upstream repo.</div>
<br class="x_x_ContentPasted0 x_ContentPasted0">
------<span class="x_x_x_ContentPasted5 x_x_x_ContentPasted6 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">------</span><span class="x_x_x_ContentPasted5 x_x_x_ContentPasted7 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">------</span><span class="x_x_x_ContentPasted5 x_x_x_ContentPasted8 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">------</span><br class="x_x_ContentPasted0 x_ContentPasted0">
<br class="x_x_ContentPasted0 x_ContentPasted0">
</span></div>
<div class="x_x_x_elementToProof x_x_x_ContentPasted0 x_x_x_ContentPasted1 x_x_x_ContentPasted2 x_x_x_ContentPasted4" data-ogsc="rgb(0, 0, 0)">
<span data-ogsc=""></span>
<div class="x_x_x_ContentPasted3 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
We have discussed it between a small group of people so I would like to bring it to the attention of everyone and let the community speak in case there are any concerns against it and/or to support this change proposal. This work will be done in a couple of
 phases, progressively moving towards achieving the end goal explained here.<br class="x_x_ContentPasted0 x_ContentPasted0">
<br class="x_x_ContentPasted0 x_ContentPasted0">
</div>
<div class="x_x_x_ContentPasted3 x_x_ContentPasted0 x_ContentPasted0" data-ogsc="">
Looking forward for hearing back from you : )<br>
</div>
</div>
</div>
<br>
</div>
</div>
</body>
</html>