private static void CreatePipelines()

in SamplesV1/ParameterizedPipelinesForAzureML/DeployDataFactory/DeployDataFactory/RetrainingPipeline.cs [55:154]


        private static void CreatePipelines(
            string resourceGroupName, 
            string dataFactoryName, 
            DataFactoryManagementClient client, 
            string inputDataset, 
            IList<string> outputModelDatasets, 
            IList<string> outputPlaceholderDatasets, 
            string[] parameters, 
            IList<UpdateResourceEndpoint> endpoints)
        {
            int i = 0;
            foreach (string parameter in parameters)
            {
                string[] parameterList = parameter.Split(',');
                string region = parameterList[0];

                // create a pipeline           
                DateTime PipelineActivePeriodStartTime = DateTime.Parse(DataFactoryConfig.PipelineStartTime);
                DateTime PipelineActivePeriodEndTime = PipelineActivePeriodStartTime.AddMinutes(DataFactoryConfig.MinutesToAddToStartTimeForEndTime);
                string PipelineName = String.Format("RetrainingPipeline_{0}", region);
                Console.WriteLine("Creating a pipeline {0}", PipelineName);

                client.Pipelines.CreateOrUpdate(resourceGroupName, dataFactoryName,
                    new PipelineCreateOrUpdateParameters()
                    {
                        Pipeline = new Pipeline()
                        {
                            Name = PipelineName,
                            Properties = new PipelineProperties()
                            {
                                Description = "Pipeline for retraining",

                                // Initial value for pipeline's active period.
                                Start = PipelineActivePeriodStartTime,
                                End = PipelineActivePeriodEndTime,

                                Activities = new List<Activity>()
                                {                                
                                    new Activity()
                                    {   
                                        Name = "AzureMLBatchExecution",
                                        Inputs = new List<ActivityInput>()
                                        {
                                            new ActivityInput() {
                                                Name = inputDataset
                                            }
                                        },
                                        Outputs = new List<ActivityOutput>()
                                        {
                                            new ActivityOutput()
                                            {
                                                Name = outputModelDatasets[i]
                                            }
                                        },
                                        LinkedServiceName = "LinkedServiceRetraining-AzureML",
                                        TypeProperties = new AzureMLBatchExecutionActivity()
                                        {
                                            WebServiceInput = inputDataset,
                                            WebServiceOutputs = new Dictionary<string, string>
                                            {
                                              {"output1", outputModelDatasets[i]}                                                        
                                            },
                                            GlobalParameters = new Dictionary<string, string>
                                            {                                                
                                                {"starttime", "$$Text.Format('\\'{0:yyyy-MM-dd HH:mm:ss}\\'', WindowStart)"},
                                                {"endtime", "$$Text.Format('\\'{0:yyyy-MM-dd HH:mm:ss}\\'', WindowEnd)"},
                                                {"cpf", region}
                                            }                                                       
                                        }
                                    },
                                    new Activity()
                                    {   
                                        Name = "AzureMLUpdateResource",
                                        Inputs = new List<ActivityInput>()
                                        {
                                            new ActivityInput() {
                                                Name = outputModelDatasets[i]
                                            }
                                        },
                                        Outputs = new List<ActivityOutput>()
                                        {
                                            new ActivityOutput()
                                            {
                                                Name = outputPlaceholderDatasets[i]
                                            }
                                        },
                                        LinkedServiceName = "LinkedServiceScoring-AzureML-" + region,
                                        TypeProperties = new AzureMLUpdateResourceActivity()
                                        {
                                            TrainedModelName = "Trained model for facility " + region,
                                            TrainedModelDatasetName = outputModelDatasets[i]
                                        }
                                    }
                                },
                            }
                        }
                    });
                i++;
            }
        }