-
Notifications
You must be signed in to change notification settings - Fork 11
Build automation (RPM+ISO) #29
Comments
Maybe rework GH repo to funtion similar to the fedora lookaside cache |
I can help with this, hit me up another time and we can brainstorm |
From discussion:
|
@ct-martin also assigning you though I can't since you aren't on the repo yet. poke me if you want to be added and I will discuss with team and eboard. |
For what it's worth, I'm 👎 to a self-hosted COPR because it will be difficult for someone to maintain later on. I'd be concerned about what would happen in four years if we hosted our own COPR. |
@jflory7 tbh, git+jenkins/ci+bash (aka, what we have now) seems like the best option |
True. It is likely though that the build system will be on our infra unless
we can find a good hosted way to do RPM builds. Also needs to be able to
function as a dnf repo or put the result in a valid dnf repo. Also signing.
Aidan Kahrs
abkahrs@gmail.com
…On Oct 16, 2017 4:57 PM, "Justin W. Flory" ***@***.***> wrote:
Self hosted COPR
For what it's worth, I'm 👎 to a self-hosted COPR because it will be
difficult for someone to maintain later on. I'd be concerned about what
would happen in four years if we hosted our own COPR.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
<#29 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ADUyLFHaZT6kJpzwLQzJaerBDPmtXFtZks5ss8MygaJpZM4NJJ9h>
.
|
Well, if we're hosting it on our own, I'd figure it would have to be hosted on our infrastructure, right? 😉 If COPR is something we want to use, I have a strong preference for using Fedora's COPR and creating a group for the TigerOS team to maintain any packages there. Hosting on our own introduces a significant amount of work, and it would require all of the team to contribute documentation for how to manage that. I encourage all of you to think too about how this will be maintained in five years from now. |
@jflory7 Licensing might be an issue. Also COPR may want to have one repo per package. |
Status update:
|
@ct-martin Travis is a no go. This is gonna be interesting with COPR. Biggest concern is licensing. I would go with automating our self hosted stuff (maybe ala this substituting fedpkg for rpmbuild ) and the process there but be able to migrate to COPR with tito ala this @jflory7 I would like to get your input on how to make either of those more sustainable |
for help with using tito as describe above in hosted COPR and getting COPR to work with our subdir based approach talk to |
ok. so we should probably use tito in some way to get around the subdir part. we can run tito with jenkins to trigger. signing can likely use the jenkins plugin and deployment is copying in some way from the output dir to the mirror/repo dir and fixing perms. tito will handle making the tarballs and bascially going from flat source files to RPMs and SRPMs. |
Having issues with Jenkins, looking into GitLab Runner |
We now have IP addresses and can provision the webhost |
It will trigger based on push to master |
I think this is going to take a lot longer than the Beta release to complete. Thoughts on moving this to the final release? |
@Tjzabel I'm not going to block the beta on it, but I would like to keep it on the beta milestone due to its importance |
@ct-martin sounds good. Also, it is probably a good idea to split this issue into smaller issues so it is much easier to track. |
@Tjzabel I actually have a draft issue for updating the playbooks right now with some other stuff as well. I have a couple thoughts on how to split up the issue, let's talk about them in the meeting in a couple minutes |
Next steps are to do the write-up on how TigerOS CI is going to work. Current draft is located on my GitLab repo. The goal is to implement CI on a single RPM package to make sure the process goes smoothly. Then, a TigerOS mirror will be set up on the GitLab public site, where we will be hosting CI on the builder, and possibly the mirror. The draft documentation will be added into the wiki at some point. |
Furthermore, I have an RPM CI script in the works to do the RPM building. However, this is still a rough script, and needs to be ironed out in order to make the RPM building process fully automated. At the moment, the release version and package name need to be added as parameters to the script, which are not yet found automatically. In order to build an RPM package, the specific release is needed. We need to figure out a way to grep for the release version without manually putting it in. |
In addition, RPM CI and ISO CI are very different from one another, and so I believe these two CI issues should be separated to create a more easy-to-follow workflow. |
@Tjzabel could you clarify the following? I have no idea what your mean, and my best guess doesn't get close to what I had planned.
Also, I have access to the GitHub credentials now so I can proceed when I have time (probably next weekend) |
@ct-martin If it helps, I also have no idea what I was trying to write there 😄 I am going to update that comment now with what I actually meant to say. |
@ct-martin actually, I do know what I was saying there. Essentially, there will be a GitLab instance that is mirroring what the GitHub repo has, so when there is a change to the repo, the GitLab CI will pull the change and do the automation. Correct me if this line of thinking isn't what you had in mind. |
@Tjzabel ok, yes, that is what I had in mind. I was confused by "mirror" having multiple meanings. What do you think about using terminology along the lines of "TigerOS mirror" or "the mirror" for mirrors.ritlug.com (to maintain backwards-compatibility in terminology) and "GitLab repo mirror" for the GitLab CI/CD for external repositories? Wording doesn't have to be exact. Thanks for the clarification |
@ct-martin I got the same confusion when I re-read my own comment. I definitely think it is a good idea to create uniform terminology when referring to the different parts. Even GitLab mirror is enough imo, and TigerOS mirror for the packages mirror. |
@Tjzabel I think it would be a good idea to use "GitLab repo mirror" (with "repo") since GitLab Runner will be automating things on the mirror soon. I'll file an issue to start a glossary and we can discuss on Wednesday |
As per meeting we have decided to do Continuous Delivery to a new development mirror based on the |
I have installed GitLab Runner on the builder, will set up the pipelines another time. |
This is no longer in scope for a beta release. |
UpdateCurrently testing out the ISO-building Dockerfile in order to build the F29 ISO. |
Currently RPMs are updated, built and added to the repo manually. It would be nice to script this funtionality so that we can have changes pushed to github trigger rebuilding of RPMs and updating of the repo.
The GH sources affected are those for the scripts and possibly the branding.
For help ask about Fedora SOP in #fedora-admin and #fedora-devel on freenode
The text was updated successfully, but these errors were encountered: