Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[smila-user] Input buckets for a workflow

Hi,

I would like to implement a workflow which start action has two input slots each one associated to a different bucket. I expect the workflow (FrameMatchingWorkflow in the snippet) to be triggered when either bucket 1 (frameBucket) or bucket 2 (logosBucket) has records in it.
I've tried with the following configuration:

workflows.json

    {
       "name":"FrameSegmentationAndIndexingWorkflow",
       "modes":[
        "standard"
      ],
       "parameters":{
        "pipelineRunBulkSize":"20"
       },
       "startAction":{
          "worker":"bulkbuilder",
          "output":{
            "insertedRecords":"importBucket"
          }
       },
       "actions":[
          {
             "worker":"pipelineProcessor",
             "parameters":
              {
                  "pipelineName": "FrameSegmentationAndIndexingPipeline"
              },
             "input":{
                "input":"importBucket"
             },
             "output":{
                 "output":"framesBucket"
             }
          }
       ]
    },
    {
       "name":"LogoDownloadAndIndexingWorkflow",
       "parameters":{
        "pipelineRunBulkSize":"20"
       },
       "startAction":{
          "worker":"bulkbuilder",
          "output":{
            "insertedRecords":"importBucket"
          }
       },
       "actions":[
          {
             "worker":"pipelineProcessor",
             "parameters":
              {
                  "pipelineName": "LogosDownloadAndIndexingPipeline"
              },
             "input":{
                "input":"importBucket"
             },
             "output":{
                "output":"logosBucket"
             }
          }
       ]
    },
    {
       "name":"FrameMatchingWorkflow",
       "startAction":{
          "worker":"pipelineProcessor",
             "parameters":
              {
                  "pipelineName": "FrameMatchingPipeline"
              },
             "input":{
                "input":"framesBucket",
                "input2":"logosBucket"
              }
       }
    }


But I obtain it doesn't work as expected: Matching workflow receives record just from the frameBucket. I thought that the problem was the way I specified the input buckets

"input":{
                "input":"framesBucket",
                "input2":"logosBucket"
              }

but any other configuration gives me Json exceptions.

Thanks,

Nicolò Aquilini

Back to the top