Good Evening,

It has been a few years since I've configured a Windows system for building
OpenAFS, but I'm taking a shot at it on the same system I'm hosting the
Debian buildslaves on.  I have no guesses as to what the typical build
completion time would be like on my system (provided I can successfully
re-create the compilation environment needed).  I'll let y'all know how it
goes.

Assuming I can get everything working and the build time is reasonable, it
may be possible to get it added into the Gerrit-triggered builds.  However,
my system is hosted from my house over a consumer-grade internet
connection.  I cannot guarantee 99.99% uptime for this system.  What is the
maximum acceptable outage window for Gerrit-triggered builds?

Regards,
Nathan

On Thu, Dec 24, 2015 at 2:44 PM, Jason Edgecombe <[email protected]>
wrote:

> Hi Kostas,
>
> Ideally, the new windows build slave needs to be online 24/7. If the
> proposed windows build slave is only online for 12 hours/day, then we could
> still have scheduled builds, but gerrit-triggered builds would likely be
> unworkable because gerrit commits might have to wait for 12+ hours to
> receive build status feedback.
>
> I have no experience with building OpenAFS on windows, so I can't speak to
> the software requirements in the build environment. I know that this sounds
> odd because I'm the 'buildbot owner', but each buildslave admin sets up the
> build environment, so that knowledge lies with each individual buildslave
> maintainer. I can provide advice on how to install/configure the buildbot
> software and how to compile on Linux platforms.
>
> Here is a quick explanation of our best build slave options (in my
> opinion) and the trade-offs for each:
>  * gerrit-triggered, always on  (24x7) - ideal case, builds trigger on
> every gerrit change, build status is pushed into the gerrit system and
> marks a commit as  'Verified'. The gerrit status isn't published until all
> slaves have reported back. builds are queued up if slaves are offline.
>  * scheduled - builds are triggered based on time, the build status only
> appears on the buildbot status page.
>
> gerrit-triggered builders have an added requirement of a maximum on the
> build time, but that maximum time is determined by the community of
> developers. How long do you want to wait for feedback?
>
> builbot can also support a 'latent' build slave where the buildbot
> software will start and stop a VM (libvirt) or a cloud VM (AWS) on-demand.
> I have no previous experience with this type of build slave and that would
> require some extra research and testing to pull off, along with the added
> complexity.
>
> The buildbot software is very flexible. Builds can be initiated by a
> variety of triggers (gerrit, scheduled, manual, web hook, git push). There
> are a variety of options for build status updates: email, IRC, gerrit, etc.
>
> You can read more about our version of the buildbot software at
> http://docs.buildbot.net/0.8.10/index.html
>
> Sincerely,
> Jason
>
>
> On 12/24/2015 04:02 AM, Kostas Liakakis wrote:
>
>> Ben, Jason
>>
>> Do you have an estimation of CPU resources required for a Windows
>> buildslave? Do they have to be available 24/7 or would a say, 12h window
>> suffice? Would a Pentium G3260 cut it or is an i-class CPU required to
>> complete the build jobs within a useful timeframe?
>>
>> How hard is the VS2005 or VS2008 requirement? In the build environment
>> instructions link Ben posted, VS2012 is mentioned as an option for
>> AFSVER_CL. VS2012 is the oldest I can easily get my hands on through our
>> Dreamspark subscription. I think if VS version can be tackled, the rest
>> of the build requirements are of a non-issue.
>>
>> How does one BUILD a buildslave for Windows after setting up the build
>> environment? Is there any rundown for this?
>>
>> Regards,
>>
>>
>> -K.
>>
>>
>> On 12/23/2015 11:47 PM, Benjamin Kaduk wrote:
>>
>>> Hi all,
>>>
>>> The automated buildbot builder for Windows that performs a test build of
>>> each code submission to gerrit before that code can be merged into the
>>> tree has been disabled; please see the forwarded message below.  That
>>> builder was previously donated by Jeffrey Altman and provided tremendous
>>> value to the OpenAFS project over the years; thank you Jeffrey for having
>>> donated these resources for so long.
>>>
>>> It is my opinion that in the absence of a gerrit-triggered windows
>>> builder, the OpenAFS code for windows will very quickly bitrot and become
>>> unusable.  The development environment for Windows imposes constraints
>>> not
>>> found on Unix systems, and most of our developers are unfamiliar with
>>> those constraints, so without a way to automatically enforce them before
>>> merging commits, the windows development constraints will quickly be
>>> violated.
>>>
>>> If you are interested in OpenAFS continuing to function on the Windows
>>> platforms, I urge you to contribute resources towards a functioning
>>> Windows buildbot builder.
>>>
>>> http://git.openafs.org/?p=openafs.git;a=blob;f=README-WINDOWS;h=4f9af252f51677dd49e32c4af4411bd96eed53c9;hb=HEAD
>>> has some (probably somewhat outdated) instructions for setting up a
>>> Windows build environment.  Do note that the specific (old) versions of
>>> various softwares are important: newer versions will not work in most
>>> cases.  I may be able to provide some assistance in setting up a build
>>> environment; please post questions encountered while setting up such a
>>> development environment to [email protected].
>>>
>>> Thank you,
>>>
>>> Ben Kaduk
>>>
>>>
>>>
>>> ---------- Forwarded message ----------
>>> Date: Wed, 23 Dec 2015 16:17:20 -0500
>>> From: Jason Edgecombe <[email protected]>
>>> To: [email protected]
>>> Subject: [OpenAFS-devel] Window build slaves are disabled and removed
>>>
>>> Hi everyone,
>>>
>>> The only windows build slave has been disabled and removed from the
>>> OpenAFS
>>> buildbot system. If anyone wants to stand up a replacement, please
>>> contact me.
>>>
>>> You may see the current buildbot status and variety of build slaves at
>>> http://buildbot.openafs.org/waterfall
>>>
>>> Sincerely,
>>> Jason
>>> _______________________________________________
>>> OpenAFS-devel mailing list
>>> [email protected]
>>> https://lists.openafs.org/mailman/listinfo/openafs-devel
>>> _______________________________________________
>>> OpenAFS-devel mailing list
>>> [email protected]
>>> https://lists.openafs.org/mailman/listinfo/openafs-devel
>>>
>>>
> _______________________________________________
> OpenAFS-devel mailing list
> [email protected]
> https://lists.openafs.org/mailman/listinfo/openafs-devel
>

Reply via email to