[Slackbuilds-users] Help offer
atelszewski at gmail.com
Sun Nov 6 12:07:44 UTC 2016
On 06/11/16 12:47, David Spencer wrote:
>> I have some ideas for automated builds of pending submissions, but that is
>> > for separate discussion (and I don't know how you admins are handling it
>> > now).
> I'm sending this to the list because it needs to be sanity checked by
> everybody else :)
> As far as I know several people have been thinking independently about
> automated testing, continuous integration, etc
> I haven't discussed this with anybody until now, but maybe buildbot
> could be useful to us. Unless I've made a mistake reading the buildbot
> docs, it would allow people to volunteer their own systems as build
> hosts. There are a couple of things we would need to worry about -
> clean build environment, authentication - but the idea would seem to
> fit a project like SlackBuilds.org that tries to exist with minimum
> infrastructure of our own.
> So the outline idea would be
> - a submission arrives
> - our bot checks if it's a simple update, and how many packages
> depend on it -- including optional deps ;)
> - if it's a simple update, and the total expected build time
> (including depending packages) is less than a threshold, throw all
> those builds and rebuilds at the automatic build queue (I already have
> a database of build times)
> - if possible, do builds with multiple build tools (sbopkg sbotools
> slackrepo) because diverse tests catch more problems
> - do some automated tests on the final package (e.g. Heinz's lintpkg)
> - if the automatic builds fail, the submitter (maintainer) can see
> what happened and resubmit
> - otherwise flag it for manual testing
> - final approval always a human decision
> I've got a draft SlackBuild for buildbot-0.9.1, but since 0.9 it's one
> of those packages that need to download huge quantities of npm stuff
> at build time :(
> Anyway I'd love to make some progress on this today, but I have a
> wedding to go to -- not mine :)
You have outlined more than less what I've been thinking of ;-)
But I wonder if there could be a case where the update is not checked by
human at all.
Assume it's a version bump.
Then you only make sure that the only part changed in the download link
is version string.
The check for version can be very strict, e.g. it has to change from 0.1
to 0.2 so it won't change from 0.1 to 0.$(screw up the system).
When it comes to automated build systems, there is also https://jenkins.io/
But I've been thinking about rolling our own too.
More information about the SlackBuilds-users