juhp / fbrnch

Tool to update fedora packages branches
https://hackage.haskell.org/package/fbrnch
GNU General Public License v2.0
23 stars 3 forks source link

Confused by existing build, not in override #3

Closed QuLogic closed 4 years ago

QuLogic commented 4 years ago

I ran a few builds with fbrnch parallel --branch 31, then they got stuck somewhere (I think because wait-repo or some other koji command timed out), so I killed it.

I restarted the set, and it magically figured out that some builds were done, which is great. However, one build was complete (https://koji.fedoraproject.org/koji/buildinfo?buildID=1547258), but without override. It noticed this, but did not request an override:

== R-gplots f31 ==
74696912 Update to latest version.
30491309 rebuild for R 4
git pushing... done

R-gplots-3.0.4-1.fc31 is already built
Warning: nvr R-gplots-3.0.4-1.fc31 is not current in tag f31-build
  latest build in f31-build is R-gplots-3.0.3-1.fc31

So it's stuck on this last build waiting for it to show up in f31-build, but this won't happen since there's no override.

juhp commented 4 years ago

Okay thanks for reporting this. I would actually recommend using side-tags for fbrnch parallel builds. [1] I haven't really tested parallel building with overrides yet, but let me look into this and try to add a fix.

Can I assume you are using fbrnch-0.2-2?

I am also planning to replace koji wait-repo with something more robust since koji client connections are rather fragile.

[1] I may make that a requirement/assumption later.

QuLogic commented 4 years ago

Yes, that's the version.

I saw the --target command argument, but didn't think of using it.

juhp commented 4 years ago

I hope that 47dc2a9 fixes this.

Can you try out fbrnch-0.2-3? which includes this and also some other fixes.

QuLogic commented 4 years ago

I tried out that version with the same set of packages (and R-gplot doesn't have an override yet), but it fails to load things:

$ fbrnch parallel --branch f31 R-AsioHeaders R-Cairo R-IRkernel R-V8 R-ape R-backports R-bit64 R-data.table R-deldir R-future R-gamlss.dist R-gplots R-httr R-jsonlite R-lokern R-openssl R-pingr R-pkgbuild R-processx R-remotes R-showtextdb R-stringdist R-svglite R-tikzDevice R-tinytex R-xfun
# f31
fbrnch: No spec file found in R-data.table
CallStack (from HasCallStack):
  error, called at src/Distribution/RPM/Build/Graph.hs:113:33 in rpmbuild-order-0.4.0-inplace:Distribution.RPM.Build.Graph

(f31 is not currently checked out, but there should be a spec file, since I previously built that set.)

juhp commented 4 years ago

Okay I am also improving a couple more things:

Anyway the error you got with R-data.table is from rpmbuild-order (I think it is removing .table) - let me fix that first now. Good that you spotted this, thanks - I hadn't tested on any packages containing a ..

QuLogic commented 4 years ago

firstly parallel wasn't even switching branch 🤦🏻

Ah, is that why it showed that it was pushing commits, even though there should have been nothing to do (at least for second and subsequent runs)? Fortunately, master and f31 are in sync for all these packages.

juhp commented 4 years ago

Yes, sorry about that. I just checked and tested that too - I think the build coming now in fbrnch copr should fix this.

parallel uses different code for setting up a package, because it does all waiting for builds in the background.

juhp commented 4 years ago

If you can try fbrnch-0.2-4 I hope it should fix the above issues: though you will need to merge f31 "by hand" (parallel doesn't do any merging) - for example you can use fbrnch merge -b f31 to do that.

The copr is built now.

QuLogic commented 4 years ago

Seems to be working.

I also just realized the dot issue is why some random packages weren't built. I thought I had just forgotten to specify them in the list.