After some research into how to package for software collections, it does look 
feesible to utilize
them for pulp 3.  The main issue will be the fact that yes, we do have to 
package some new
dependencies to utilize software collections instead.  While that statement 
initially appears loaded
with a lot of work to do, in reality it does seem rather manageable.  

There are utilities out there to do things, like convert pypi packages to spec 
files, and to convert
spec files to scl spec files.  We can take advatage of these utilities (and 
potentially help improve
them) to automate the dependency workflow from pypi -> spec -> scl with what 
appears to be a rather
good degree of confidence.

The primary benifit of this, in my mind, is the ability to work with the latest 
upstream packages,
and repackage them in a format usable in Software collections, freeing us from 
being locked in to
what's available in the EL7 repos.  There is precedence for this, as foreman 
appears to do this
already with their ruby dependencies.  They have their own "tfm" software 
collection group (from
what I can tell).

This might seem daunting on the surface, but I belive this will become a net 
positive for us as a
whole. If we didn't go the software collections route, there will still be 
additional work needed to
ensure our code would be python 2.7 AND 3.5 compatible, with extra care needing 
to be practiced by
everyone to achieve it.  Along with potentially subtle differences in our 
dependency versions.  

Also, we currently build our dependencies that are needed in el6/el7/f2x 
already, and serve them up,
sometimes needing work to ensure different versions work where needed.  Since 
pulp 3 is dropping
el6, we can possibly aligning on fedora versions and simplify our dependency 
manangement needs
enough to open up ample time to do this, helping us align with the "Upstream 
First" mentality

At this point, I believe a proof of concept will need to be developed to figure 
out exactly what
this will look like, but I am becoming increasingly optimistic that this is 
achieveable.  There will
be some investment needed up front, but I'm confident it will pay off later.

Starting now, I will be developing this proof of concept, focusing on getting a 
demo django app
working, as well as a simple demo celery app.  While the initial investigation 
has proven
optimistic, it will be nice to have some real world answers here and a picture 
of what this really
looks like.

Questions?  Thoughts?  Concerns?

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Pulp-dev mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/pulp-dev

Reply via email to