diff options
-rw-r--r-- | distbuild/build_controller.py | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/distbuild/build_controller.py b/distbuild/build_controller.py index 23c37f68..58d89cdf 100644 --- a/distbuild/build_controller.py +++ b/distbuild/build_controller.py @@ -661,10 +661,19 @@ class BuildController(distbuild.StateMachine): logging.debug('Notifying initiator of successful build') baseurl = urlparse.urljoin( self._artifact_cache_server, '/1.0/artifacts') - filename = ('%s.%s.%s' % - (self._artifact.source.cache_key, - self._artifact.source.morphology['kind'], - self._artifact.name)) - url = '%s?filename=%s' % (baseurl, urllib.quote(filename)) - finished = BuildFinished(self._request['id'], [url]) + urls = [] + for c in self._components: + name = ('%s.%s.%s' % + (c.source.cache_key, + c.source.morphology['kind'], + c.name)) + urls.append('%s?filename=%s' % (baseurl, urllib.quote(name)) + if not self._components: + name = ('%s.%s.%s' % + (self._artifact.source.cache_key, + self._artifact.source.morphology['kind'], + self._artifact.name)) + urls.append('%s?filename=%s' % (baseurl, urllib.quote(name)) + + finished = BuildFinished(self._request['id'], urls) self.mainloop.queue_event(BuildController, finished) |