Merge master to output-tags branch and resolve conflict
authorJiayong Li <jiayong@math.mit.edu>
Tue, 15 Nov 2016 19:59:55 +0000 (14:59 -0500)
committerJiayong Li <jiayong@math.mit.edu>
Tue, 15 Nov 2016 19:59:55 +0000 (14:59 -0500)
1  2 
sdk/cwl/arvados_cwl/__init__.py
sdk/cwl/arvados_cwl/arvcontainer.py
sdk/cwl/arvados_cwl/arvjob.py
sdk/cwl/arvados_cwl/runner.py
sdk/cwl/tests/test_make_output.py

index 6778eb0222a2fb404e0754578d698df91e792df0,92be92d6e0469fba63a1504a5f0c834fb4a9b2b7..b3d47dd8d05e5981ae4f645fa9c968ee7707e747
@@@ -235,14 -248,13 +249,20 @@@ class ArvCwlRunner(object)
                      final.api_response()["name"],
                      final.manifest_locator())
  
-         self.final_output_collection = final
 +        final_uuid = final.manifest_locator()
 +        tags = tagsString.split(',')
 +        for tag in tags:
 +             self.api.links().create(body={
 +                "head_uuid": final_uuid, "link_class": "tag", "name": tag
 +                }).execute(num_retries=self.num_retries)
 +
+         def finalcollection(fileobj):
+             fileobj["location"] = "keep:%s/%s" % (final.portable_data_hash(), fileobj["location"])
+         adjustDirObjs(outputObj, finalcollection)
+         adjustFileObjs(outputObj, finalcollection)
+         return (outputObj, final)
  
      def set_crunch_output(self):
          if self.work_api == "containers":
          else:
              if self.output_name is None:
                  self.output_name = "Output of %s" % (shortname(tool.tool["id"]))
 -            self.final_output, self.final_output_collection = self.make_output_collection(self.output_name, self.final_output)
 +            if self.output_tags is None:
 +                self.output_tags = ""
-             self.make_output_collection(self.output_name, self.output_tags, self.final_output)
++            self.final_output, self.final_output_collection = self.make_output_collection(self.output_name, self.output_tags, self.final_output)
              self.set_crunch_output()
  
          if self.final_status != "success":
Simple merge
Simple merge
Simple merge
index a1cb605bfc83f78605c72b8eb10c47c73e1c95de,3228ad77b3ca9343c0d6ff736b0714c23acd060b..53f379f1a5ac0cc488af5157080e78933d543367
@@@ -35,7 -32,7 +35,7 @@@ class TestMakeOutput(unittest.TestCase)
          final.open.return_value = openmock
          openmock.__enter__.return_value = cwlout
  
-         runner.make_output_collection("Test output", "tag0,tag1,tag2", {
 -        _, runner.final_output_collection = runner.make_output_collection("Test output", {
++        _, runner.final_output_collection = runner.make_output_collection("Test output", "tag0,tag1,tag2", {
              "foo": {
                  "class": "File",
                  "location": "keep:99999999999999999999999999999991+99/foo.txt",