[all][tc] Skyline as a new official project [was: What's happening in Technical Committee: summary 15th Oct, 21: Reading: 5 min]

Dmitry Tantsur dtantsur at redhat.com
Thu Oct 21 11:18:31 UTC 2021

On Wed, Oct 20, 2021 at 5:22 PM Thomas Goirand <zigo at debian.org> wrote:

> On 10/18/21 2:18 PM, Jeremy Stanley wrote:
> > On 2021-10-18 11:22:11 +0800 (+0800), 高瀚翔 wrote:
> >> Skyline-apiserver is a pure Python code project, following the
> >> Python wheel packaging standard, using pip for installation, and
> >> the dependency management of the project using poetry[1]
> >>
> >> Skyline-console uses npm for dependency management, development
> >> and testing. During the packaging and distribution process,
> >> webpack will be used to process the source code and dependent
> >> library code first, and output the packaged static resource files.
> >> These static resource files will be stored in an empty Python
> >> module[2].
> > [...]
> >
> > GNU/Linux distributions like Debian are going to want to separately
> > package the original source code for all of these Web components and
> > their dependencies, and recreate them at the time the distro's
> > binary packages are built. I believe the concerns are making it easy
> > for them to find the source for all of it, and to attempt to use
> > dependencies which these distributions already package in order to
> > reduce their workload. Further, it helps to make sure the software
> > is capable of using multiple versions of its dependencies when
> > possible, because it's going to be installed into shared
> > environments with other software which may have some of the same
> > dependencies, so may need to be able to agree on common versions
> > they all support.
> Hi,
> Thanks Jeremy for summing-up things in a better way that I ever would.
> Also, using pip is *not* an option for distros. I'm not sure what you
> mean by "following the Python wheel packaging standard", but to me,
> we're not there yet. I'd like to have a normal setup.py and setup.cfg
> file in each Python module so it's easy to call "python3 setup.py
> install --root $(pwd)/debian/skyline-apiserver --install-layout=deb".

Side note: calling setup.py is essentially deprecated:

> I would also expect to see a "normal" requirements.txt and
> test-requirements.txt like in every other OpenStack project, the use of
> stestr to run unit tests, and so on.
> Right now, when looking at the skyline-apiserver as the Debian OpenStack
> package maintainer, I'd need a lot of manual work to use pyproject.toml
> instead of my standard tooling.

PyProject is the universal way forward, you'll (and we'll) need to adopt
sooner or later.


> As I understand, dependencies are expressed in the pyproject.toml, but
> then how do I get the Python code installed under debian/skyline-apiserver?
> BTW, what made you choose something completely different than the rest
> of the OpenStack project?
> Cheers,
> Thomas Goirand (zigo)

Red Hat GmbH, https://de.redhat.com/ , Registered seat: Grasbrunn,
Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: Charles Cachera, Brian Klemm, Laurie Krebs, Michael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-discuss/attachments/20211021/c9ee7c9e/attachment.htm>

More information about the openstack-discuss mailing list