Skip to content

Commit 0ae0ab1

Browse files
author
buildbot
committed
Added a buildbot build to check that the minimum library version required in requirements.txt works.
- Legacy-Id: 11671
1 parent 0d8ecbc commit 0ae0ab1

1 file changed

Lines changed: 59 additions & 0 deletions

File tree

buildbot/masters/datatracker/master.cfg

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ c['schedulers'] = [
8383
change_filter=filter.ChangeFilter(branch_re='personal/.*')),
8484
# Periodic Schedulers
8585
Nightly(name="lin_test_libs", hour=16, minute=42, branch="trunk", builderNames=["Verify Latest Libs"],),
86+
Nightly(name="lin_test_old_libs", hour=16, minute=42, branch="trunk", builderNames=["Verify Minimum Libs"],),
8687
# Force schedulers
8788
ForceScheduler(name="Force PyFlakes", builderNames=["Check PyFlakes"]),
8889
ForceScheduler(name="Force Test Suite", builderNames=["Test Suite"]),
@@ -390,6 +391,64 @@ c['builders'].append(BuilderConfig(name="Test-Crawler", factory=factory, categor
390391
slavenames=["datatracker_lin_py27_1", ]))
391392

392393

394+
# -*- section Builder_Verify_Old_Libs -*-
395+
396+
# This build runs pip install --upgrade, to make sure that we install the earliest version of
397+
# all dependencies, in order to get an indication if/when an incompatibility turns up with a new
398+
# version of a dependency. The other test suite builders *don't* use --upgrade, in order to not
399+
# change the external test conditions and produce spurious errors because of version changes in
400+
# dependencies.
401+
402+
factory = BuildFactory()
403+
factory.addStep(SVN(
404+
username='buildbot@tools.ietf.org',
405+
descriptionDone="svn update",
406+
workdir=Interpolate('build/%(src::branch)s'),
407+
haltOnFailure=True,
408+
repourl=Interpolate('https://svn.tools.ietf.org/svn/tools/ietfdb/%(src::branch:~trunk)s'),
409+
descriptionSuffix=[Interpolate('%(src::branch)s %(src::revision)s')],
410+
))
411+
factory.addStep(RemovePYCs(workdir=Interpolate('build/%(src::branch)s')))
412+
factory.addStep(ShellCommand(
413+
descriptionDone="install/upgrade requirements",
414+
workdir=Interpolate('build/%(src::branch)s'),
415+
haltOnFailure=True,
416+
command=["sed", "-i", "-e", "s/>=/==/", "requirements.txt"],
417+
))
418+
factory.addStep(ShellCommand(
419+
descriptionDone="install/upgrade requirements",
420+
workdir=Interpolate('build/%(src::branch)s'),
421+
haltOnFailure=True,
422+
command=["pip", "install", "--upgrade", "-r", "requirements.txt"],
423+
))
424+
factory.addStep(ShellCommand(
425+
descriptionDone="seting up settings_local.py",
426+
workdir=Interpolate('build/%(src::branch)s'),
427+
haltOnFailure=True,
428+
command=["cp", "/home/buildbot/settings_local.py", "./"],
429+
))
430+
factory.addStep(ShellCommand(
431+
descriptionDone="list installed pyton modules",
432+
workdir=Interpolate('build/%(src::branch)s'),
433+
haltOnFailure=True,
434+
command=["pip", "list"],
435+
))
436+
factory.addStep(ShellCommand(
437+
descriptionDone="collect static files",
438+
workdir=Interpolate('build/%(src::branch)s'),
439+
haltOnFailure=False,
440+
flunkOnFailure=False,
441+
command=["ietf/manage.py", "collectstatic", "--noinput", ],
442+
))
443+
factory.addStep(UnitTest(
444+
workdir=Interpolate('build/%(src::branch)s'),
445+
haltOnFailure=True,
446+
command=["ietf/manage.py", "test", "--settings=settings_sqlitetest", "--verbosity=2", ],
447+
))
448+
c['builders'].append(BuilderConfig(name="Verify Minimum Libs", factory=factory, category="1. trunk",
449+
slavenames=["datatracker_lin_py27_5"]))
450+
451+
393452
# -*- section Builder_Dependencies -*-
394453

395454
# This build runs pip install --upgrade, to make sure that we install the latest version of all

0 commit comments

Comments
 (0)