Is the F-Droid build process currently broken?

Yes please! Anyone with buildbot experience would be very helpful right now. buildbot would let us run multiple buildservers easily, and handle other aspects as well.

1 Like

I donā€™t know anything about buildbot, but Iā€™m sure I could pick it up. I donā€™t have time right now to take on a new project, but in the future I might be interested in becoming an F-Droid developer. I think that what F-Droid provides for Android is indispensable.

2 Likes

With our jenkins.debian.net setup, weā€™re able to build ~500 APKs a day.
Thatā€™s not a huge machine. One big bottleneck recently has been that
the build process has been hanging a lot. I think weā€™ve found almost
all the causes of these hangs, which means a build/release cycle should
now finish without manual intervention.

Beyond that, there are many things we could do to speed things up. One
nice would be to make the buildserver build for ~20 hours, then stop,
and publish, no matter what. Right now, the cycle waits for the full
build process to finish before running a publish. That means most
updates would always happen within a day, but some large, troublesome
builds like VLC might be even more delayed.

As for adding more hardware, the whole build process needs to be
rearchitected to allow for multiple build VMs. Right now, it only uses
one. To do that, we should use buildbot. Thatā€™s a big project. If
anyone knows buildbot, or just wants to help out, they could put
together a prototype of running fdroid builds using buildbot.

3 Likes

Hi all :blush:
This Tuesday, I updated my app to version 2.9 (1ST automatic update ^^).
Ref: Bible Multi "The Light" (#351) Ā· Issues Ā· F-Droid / Requests For Packaging Ā· GitLab
The source is taggedā€¦
If you want to check the server buildā€¦
Thanks a lot,

I reopened the RFP in FDroid client.

6 days and not built!

Is there a way to automatically trigger a re-build on the official f-droid server for a unsuccessful build?

One of my apps has encountered a build failure because of an error either in the build server or the connection (as described in this post).
The search function in the wiki couldnā€™t find any other apps with the same error, so I suppose this is most likely a temporary issue (though the search function sometimes malfunctions ā€“ not returning all matches).

The problem may be related to SDK 27 on the f-droid build machine, since

  1. the build log yields problems related to SDK 27 (two logs with different problems)
  2. it happens on the first release (and the second) after switching to 27 (p.s. there isnā€™t a newer release yet, since Iā€™m hoping to see the problem solved before relasing it)

Is there a way to automatically trigger a re-build on the official f-droid server for a unsuccessful build?

No. Failed builds are retried automatically on the next buildserver run until they succeed or someone disables them in the metadata.

I think we need to add this into FAQ.

1 Like

Hi @relan, how can I check the auto-build of my app (above)?
I donā€™t have info.

Rem: +1 to stop some app building that will slow the whole build process.
I also see an app in Fdroid with maybe10 separated apps, maybe they need a dedicated server lol :smiley:
(or special conditions to build them as last)

Edit: ticket solved about Gitlab shared runners

@hotlittlewhitedog, there is a wiki that is auto-updated by the build process, although sometimes it is a trailing indicator (it can take a few days to get updated after the actual build has processed).

There is also build log (also a trailing indicator. but usually updated more quickly than the general wiki):

https://f-droid.org/wiki/index.php?title=org.hlwd.bible/lastbuild&redirect=no

This shows that there hasnā€™t been an attempt to build your APK since October 10.

Other apps are building fine:

https://f-droid.org/wiki/index.php?title=Special:RecentChanges&hidebots=0

The metadata for you app shows that it isnā€™t trying to build any newer version. Because Auto Update Mode is set to none, you or someone else will need to manually edit the metadata file to initialize the build process.

I would recommend changing the metadata file to use some form of auto updating:

For my app, I use Tags, which automatically adds a new build section based on release tags in my repo.

1 Like

ok thanks a lot @sorenstoutner, I will check this :blush:

1 Like

I was checking the build status just now, and find many apps are failed with this error:

INFO: Cleaning Gradle project...
ERROR: Could not build app APP_ID: OSError while trying to execute gradle clean: [Errno 8] Exec format error

This seems to indicate some (or one) gradle-related files lack their shebang?

1 Like

Hmm, buildserver/gradle does have #!/bin/bash at the topā€¦

1 Like

Hi all,
Will be the FAILED applications rebuilt?
Or do we have to make an update to force the auto-update?

1 Like

Yes, that is always the case.

2 Likes

ok, do you have an estimate for fixing this issue? (blocking a lot of apps)

1 Like

We have the whole build process running smoothly now on our testbed on jenkins.debian.net. Now we have to get that all deployed on the production servers, which takes time.

3 Likes

Is there an estimate on when app updates currently held back will be published, that I could communicate to users of my app waiting for the last version?

2 Likes

We have just merged a fix that hopefully will work around the most major problem right now: Build timeout (!437) Ā· Merge requests Ā· F-Droid / fdroidserver Ā· GitLab

That will need a few more days of testing before itā€™ll get deployed. After that the buildserver can hopefully start working through that backlog here: https://f-droid.org/wiki/page/Category:Apps_with_failing_builds

(Itā€™s called failing builds, but most of these are just unbuilt-apps)

Itā€™'ll still take a week or so to built ~150 apps probably.

4 Likes

I donā€™t see my app in the failing builds however no recent update was done. The latest checkpatch https://f-droid.org/wiki/page/checkupdates_1517395564
was processing my app ā€œProcessing com.gacode.relaunchxā€.

Same for The Light | F-Droid - Free and Open Source Android App Repository
No build logs, please check.
Could be the screenshots with fastlane.