summaryrefslogtreecommitdiff
path: root/distbuild/initiator.py
diff options
context:
space:
mode:
authorAdam Coldrick <adam.coldrick@codethink.co.uk>2015-03-16 15:10:42 +0000
committerAdam Coldrick <adam.coldrick@codethink.co.uk>2015-04-02 08:07:09 +0000
commit19cb5098dcec8e4dd4152aeff95b8e5a7fe1c69a (patch)
tree281fa9424c6423ebc9cd86f61184de605a22cf62 /distbuild/initiator.py
parent128a8a927ce3c0ba4dd8a1d3b7a83dae45d8e0a3 (diff)
downloadmorph-19cb5098dcec8e4dd4152aeff95b8e5a7fe1c69a.tar.gz
Implement partial distbuilds
In addition to partial builds we also want to be able to do partial distbuilds, and distbuild uses a different codepath. This commit updates the distbuild code to know what to do if a partial build is requested. It only builds up to the latest chunk/stratum that was requested, and displays where to find the artifacts for each of the chunks/strata requested upon completion of the build. The usage is the same as for local builds. Change-Id: I0537f74e2e65c7aefe5e71795f17999e2415fce5
Diffstat (limited to 'distbuild/initiator.py')
-rw-r--r--distbuild/initiator.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/distbuild/initiator.py b/distbuild/initiator.py
index eef4c9ec..48299a3d 100644
--- a/distbuild/initiator.py
+++ b/distbuild/initiator.py
@@ -54,7 +54,7 @@ def create_build_directory(prefix='build'):
class Initiator(distbuild.StateMachine):
def __init__(self, cm, conn, app, repo_name, ref, morphology,
- original_ref):
+ original_ref, component_names):
distbuild.StateMachine.__init__(self, 'waiting')
self._cm = cm
self._conn = conn
@@ -63,6 +63,10 @@ class Initiator(distbuild.StateMachine):
self._ref = ref
self._morphology = morphology
self._original_ref = original_ref
+ self._component_names = component_names
+ self._partial = False
+ if self._component_names:
+ self._partial = True
self._step_outputs = {}
self.debug_transitions = False
@@ -101,6 +105,8 @@ class Initiator(distbuild.StateMachine):
ref=self._ref,
morphology=self._morphology,
original_ref=self._original_ref,
+ component_names=self._component_names,
+ partial=self._partial,
protocol_version=distbuild.protocol.VERSION
)
self._jm.send(msg)