<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-infrastructure.

</pre>
<p><a href="https://github.com/macports/macports-infrastructure/commit/f8a9a37dfb6dfd2e94c21bea01c917dd71c20b8e">https://github.com/macports/macports-infrastructure/commit/f8a9a37dfb6dfd2e94c21bea01c917dd71c20b8e</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new f8a9a37  Add a basic mirroring step to buildbot cfg
</span>f8a9a37 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f8a9a37dfb6dfd2e94c21bea01c917dd71c20b8e
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Fri Dec 30 00:38:37 2016 +1100

<span style='display:block; white-space:pre;color:#404040;'>    Add a basic mirroring step to buildbot cfg
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Runs a trigger step in each ports-watcher before the one that triggers
</span><span style='display:block; white-space:pre;color:#404040;'>    the actual port builds. The exact command will need to be refined
</span><span style='display:block; white-space:pre;color:#404040;'>    depending on the exact conditions on the buildslave. It might need to
</span><span style='display:block; white-space:pre;color:#404040;'>    update a ports tree to work from, or run a port command installed
</span><span style='display:block; white-space:pre;color:#404040;'>    somewhere non-standard, etc.
</span>---
 buildbot/master.cfg | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/buildbot/master.cfg b/buildbot/master.cfg
</span><span style='display:block; white-space:pre;color:#808080;'>index 83084fe..b281353 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/buildbot/master.cfg
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/buildbot/master.cfg
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -282,6 +282,12 @@ if 'portindex' in config['deploy']:
</span>             name='portindex_force',
             builderNames=['jobs-portindex'])
         ))
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if 'mirror' in config['deploy']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    c['schedulers'].append(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        schedulers.Triggerable(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            name='mirror',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            builderNames=['jobs-mirror'])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        )
</span> 
 portbuilders = izip(portbuilder_triggerables, portbuilder_buildernames)
 c['schedulers'].extend(schedulers.Triggerable(name=t, builderNames=[b])
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -447,6 +453,13 @@ def make_portwatcher_factory(triggerable):
</span>         name='subports',
         description=['listing', 'subports']))
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    if 'mirror' in config['deploy']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        portwatcher_factory.addStep(TriggerWithPortlist(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            schedulerNames=['mirror'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set_properties={'triggered_by': make_build_url},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            waitForFinish=True,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            updateSourceStamp=True))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     portwatcher_factory.addStep(TriggerWithPortlist(
         schedulerNames=[triggerable],
         set_properties={'triggered_by': make_build_url},
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -621,6 +634,14 @@ if 'portindex' in config['deploy']:
</span>                 user=config['deploy']['portindex']['user'],
                 sqlfile='PortIndex.sql')))
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if 'mirror' in config['deploy']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    jobs_mirror_factory = util.BuildFactory()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    jobs_mirror_factory.addStep(steps.ShellCommand(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        command=util.WithProperties('port mirror %(portname)s'),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        name='mirror',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        description=['mirroring'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        descriptionDone=['done']))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> if 'guide' in config['deploy']:
     jobs_guide_factory = util.BuildFactory()
     # TODO: incremental mode with cleanup?
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -720,6 +741,14 @@ if 'guide' in config['deploy']:
</span>             factory=jobs_guide_factory,
             tags=['jobs', 'docs', 'guide'],
             env=merge_dicts(env_buildinfo, {'PATH': path_jobs})))
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if 'mirror' in config['deploy']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    c['builders'].append(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        util.BuilderConfig(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            name='jobs-mirror',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            slavenames=['jobs'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            factory=jobs_mirror_factory,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            tags=['jobs', 'mirror', 'distfiles'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            env=merge_dicts(env_buildinfo, {'PATH': path_jobs})))
</span> 
 
 ####### MAIL NOTIFIERS #######
</pre><pre style='margin:0'>

</pre>