Hello everyone,

I would like to make a proposal and start a discussion about Dist Git for Copr.

At the moment, Copr can build packages only from source rpms, which has been 
uploaded in advance somewhere in the internet - so if you want to build 
something, you need your own file server. As people often delete the sources 
from their server after the build process, the builds are no longer easily 
reproducible. And there is also no history of the sources.

We would like to use the Dist Git project[1] to store the sources. This would 
make all builds reproducible, there would be no need of having a file server to 
build and we would have a history of changes to each package.

At first, we would use the Dist Git server as a storage only. Users would not 
have direct access. Instead, they would either:
  a) upload their source rpms somewhere and use Copr as before (no change in 
work-flow)
  b) submit the source rpms directly into Copr
In both cases, Copr would import ($ fedpkg import) the packages into the Dist 
Git and build them from there.

The design of git repos would be:
  Repo name: 'user-name/copr-project/pkg-name'
  Branch name: 'epel-7', 'fedora-22'

At that moment, we would need a discussion on how to open the Dist Git server 
to users.
 - What would be the best web frontend?
 - Could we use Pagure? (used to be progit)
 - Which tool would they use?
 - How would they authenticate?

There has been some unfinished discussion on 
https://fedorahosted.org/fedora-infrastructure/ticket/4564

The main purpouse of this is having a storage for sources, reproducible builds 
and history of sources. Eventualy, we can extend it with bug tracking, easy 
forking and merging and the other "Git-Hub-like" stuff.


Thanks!
Adam Samalik

[1] https://github.com/release-engineering/dist-git
_______________________________________________
infrastructure mailing list
infrastructure@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/infrastructure

Reply via email to