diff --git a/TestON/JenkinsFile/FabricJenkinsfileTrigger b/TestON/JenkinsFile/FabricJenkinsfileTrigger
index b958d17..4c9c822 100644
--- a/TestON/JenkinsFile/FabricJenkinsfileTrigger
+++ b/TestON/JenkinsFile/FabricJenkinsfileTrigger
@@ -104,12 +104,6 @@
     isOldFlow = params.isOldFlow
     println "Tests to be run manually : "
 } else {
-    // If it is automated running, it will post the beginning message to the channel.
-    slackSend( channel: 'sr-failures', color: '#03CD9F',
-               message: ":sparkles:" * 16 + "\n" +
-                        "Starting tests on : " + now.toString() +
-                        "\n" + ":sparkles:" * 16 )
-
     for ( String b in onos_branches ){
         // set the list of the tests to run.
         all_testcases[ b ][ "SR" ][ "tests" ] += adder( "SR", dayMap[ today ], true, b )
@@ -125,10 +119,7 @@
 
 // This will hold the block of code to be run.
 def runTest = [
-        "Fabric": [ : ],
-        "Fabric2": [ : ],
-        "Fabric3": [ : ],
-        "Fabric4": [ : ]
+
 ]
 for ( String b in onos_branches ){
     if ( manually_run ){
diff --git a/TestON/JenkinsFile/VM_BMJenkinsfileTrigger b/TestON/JenkinsFile/VM_BMJenkinsfileTrigger
index b0cd743..7a7fabc 100644
--- a/TestON/JenkinsFile/VM_BMJenkinsfileTrigger
+++ b/TestON/JenkinsFile/VM_BMJenkinsfileTrigger
@@ -26,292 +26,198 @@
 fileRelated = evaluate readTrusted( 'TestON/JenkinsFile/dependencies/JenkinsPathAndFiles.groovy' )
 test_list = evaluate readTrusted( 'TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy' )
 
-test_list.init()
+onos_tag = null
+manually_run = null
+now = null
+today = null
+onos_branches = null
+day = null
+post_result = null
+branchesParam = null
+isFabric = null
+testsParam = null
 
-// set the versions of the onos
-fileRelated.init()
-
-// init trend graphs to be on VM.
-funcs.initializeTrend( "VM" );
-triggerFuncs.init( funcs )
-
-// contents for page https://wiki.onosproject.org/display/ONOS/Automated+Test+Schedule
-// which will demonstrates the list of the scheduled tests on the days.
-wikiContents = ""
-
+dayMap = [:]
+fullDayMap = [:]
 all_testcases = [:]
+runTest = [:]
+selectedTests = [:]
+graphPaths = [:]
 
-// read the parameters from the Jenkins
-manually_run = params.manual_run
+main()
 
-onos_tag = params.ONOSTag
-isOldFlow = true
+def main() {
+    init()
+    runTests()
+    generateGraphs()
+}
+
+// **************
+// Initialization
+// **************
+
+// initialize file scope vars
+def init(){
+    // get the name of the job.
+    jobName = env.JOB_NAME
+
+    // set the versions of the onos
+    fileRelated.init()
+    test_list.init()
+    readParams()
+
+    if ( isFabric ){
+        funcs.initializeTrend( "Fabric" )
+        funcs.initialize( "Fabric" )
+    } else {
+        funcs.initializeTrend( "VM" );
+    }
+    triggerFuncs.init( funcs )
+
+    // list of the tests to be run will be saved in each choices.
+    day = ""
+
+    initDates()
+    onos_branches = getONOSBranches()
+    selectedTests = getONOSTests()
+}
+
+def readParams(){
+    // get post result from the params for manually run.
+    post_result = params.PostResult
+    manually_run = params.manual_run
+    onos_tag = params.ONOSTag
+    branchesParam = params.branches
+    isOldFlow = params.isOldFlow
+    testsParam = params.Tests
+    isFabric = params.isFabric
+}
 
 // Set tests based on day of week
-def now = funcs.getCurrentTime()
-print now.toString()
-today = now[ Calendar.DAY_OF_WEEK ]
-
-dayMap = [ ( Calendar.MONDAY )    : "mon",
-           ( Calendar.TUESDAY )   : "tue",
-           ( Calendar.WEDNESDAY ) : "wed",
-           ( Calendar.THURSDAY )  : "thu",
-           ( Calendar.FRIDAY )    : "fri",
-           ( Calendar.SATURDAY )  : "sat",
-           ( Calendar.SUNDAY )    : "sun" ]
-fullDayMap = [ ( Calendar.MONDAY )    : "Monday",
-               ( Calendar.TUESDAY )   : "Tuesday",
-               ( Calendar.WEDNESDAY ) : "Wednesday",
-               ( Calendar.THURSDAY )  : "Thursday",
-               ( Calendar.FRIDAY )    : "Friday",
-               ( Calendar.SATURDAY )  : "Saturday",
-               ( Calendar.SUNDAY )    : "Sunday" ]
-
-if ( manually_run ){
-    onos_branches = params.branches.tokenize( "\n;, " )
-} else {
-    onos_branches = getBranchesFromDay( dayMap[ today ] )
+def initDates(){
+    echo "-> initDates()"
+    now = funcs.getCurrentTime()
+    today = now[ Calendar.DAY_OF_WEEK ]
+    dayMap = [ ( Calendar.MONDAY )    : "mon",
+               ( Calendar.TUESDAY )   : "tue",
+               ( Calendar.WEDNESDAY ) : "wed",
+               ( Calendar.THURSDAY )  : "thu",
+               ( Calendar.FRIDAY )    : "fri",
+               ( Calendar.SATURDAY )  : "sat",
+               ( Calendar.SUNDAY )    : "sun" ]
+    fullDayMap = [ ( Calendar.MONDAY )    : "Monday",
+                   ( Calendar.TUESDAY )   : "Tuesday",
+                   ( Calendar.WEDNESDAY ) : "Wednesday",
+                   ( Calendar.THURSDAY )  : "Thursday",
+                   ( Calendar.FRIDAY )    : "Friday",
+                   ( Calendar.SATURDAY )  : "Saturday",
+                   ( Calendar.SUNDAY )    : "Sunday" ]
+    print now.toString()
 }
 
-// default FUNC,HA to be VM, SCPF,USECASE to be BM.
-// SR will not be used in here.
-testcases_template = [
-        "FUNC": [ tests: "", nodeName: "VM", wikiContent: "" ],
-        "HA": [ tests: "", nodeName: "VM", wikiContent: "" ],
-        "SCPF": [ tests: "", nodeName: "BM", wikiContent: "" ],
-        "SR": [ tests: "", nodeName: "Fabric", wikiContent: "" ],
-        "SRHA": [ tests: "", nodeName: "Fabric", wikiContent: "" ],
-        "USECASE": [ tests: "", nodeName: "BM", wikiContent: "" ]
-]
-
-for ( String b in onos_branches ){
-    all_testcases.put( b, testcases_template )
-}
-
-// list of the tests to be run will be saved in each choices.
-day = ""
-
-// init some paths for the files and directories.
-stat_graph_generator_file = fileRelated.histogramMultiple
-pie_graph_generator_file = fileRelated.pieMultiple
-graph_saved_directory = fileRelated.jenkinsWorkspace + "postjob-VM/"
-
-// get post result from the params for manually run.
-post_result = params.PostResult
-
-// if automatically run, it will remove the comma at the end after dividing the tests.
-if ( manually_run ){
-    for ( String b in onos_branches ){
-        all_testcases[ b ] = triggerFuncs.organize_tests( params.Tests, all_testcases[ b ] )
-    }
-    isOldFlow = params.isOldFlow
-    println "Tests to be run manually:"
-} else {
-    testDivider( today )
-    println "Defaulting to " + day + " tests:"
-}
-
-
-for ( String b in onos_branches ){
-    triggerFuncs.print_tests( all_testcases[ b ] )
-}
-
-def runTest = [
-        "VM": [ : ],
-        "BM": [ : ]
-]
-
-def finalList = [ : ]
-
-finalList[ "VM" ] = [ : ]
-finalList[ "BM" ] = [ : ]
-
-// get the name of the job.
-jobName = env.JOB_NAME
-
-// set the test running function into the dictionary.
-for ( String b in onos_branches ){
-    for ( String test in all_testcases[ b ].keySet() ){
-        if ( all_testcases[ b ][ test ][ "tests" ] != "" ){
-            runTest[ all_testcases[ b ][ test ][ "nodeName" ] ][ test ] = triggerFuncs.
-                    trigger_pipeline( b, all_testcases[ b ][ test ][ "tests" ], all_testcases[ b ][ test ][ "nodeName" ], test,
-                                      manually_run, onos_tag )
-        }
-    }
-
-    // first set the list of the functions to be run.
-    finalList[ "VM" ][ b ] = triggerFuncs.runTestSeq( runTest[ "VM" ] )
-    finalList[ "BM" ][ b ] = triggerFuncs.runTestSeq( runTest[ "BM" ] )
-}
-
-// if first two character of the job name is vm, only call VM.
-// else, only on BM
-
-if ( jobName.take( 2 ) == "vm" ){
-    parallel finalList[ "VM" ]
-}
-else {
-    parallel finalList[ "BM" ]
-}
-
-
-// If it is automated running, it will generate the stats graph on VM.
-if ( !manually_run ){
-    for ( String b in onos_branches ){
-        funcs.generateStatGraph( "TestStation-VMs",
-                                 funcs.branchWithPrefix( b ),
-                                 stat_graph_generator_file,
-                                 pie_graph_generator_file,
-                                 graph_saved_directory )
-    }
-}
-
-// function that will divide tests depends on which day it is.
-def testDivider( today ){
-    todayStr = today.toString()
-
-    if ( today == Calendar.MONDAY ){
-        initHtmlForWiki()
-        day = fullDayMap[ today ]
-        for ( key in dayMap.keySet() ){
-            buildDay( dayMap[ key ], false )
-        }
-        closeHtmlForWiki()
-        postToWiki( wikiContents )
-        slackSend( color: '#FFD988',
-                   message: "Tests to be run this weekdays : \n" +
-                            triggerFuncs.printDaysForTest() )
+// gets ONOS branches from params or string parameter
+def getONOSBranches(){
+    echo "-> getONOSBranches()"
+    if ( manually_run ){
+        return branchesParam.tokenize( "\n;, " )
     } else {
-        day = fullDayMap[ today ]
-        buildDay( dayMap[ today ], true )
+        return test_list.getBranchesFromDay( dayMap[ today ] )
     }
 }
 
-def buildDay( dayStr, getResult ){
-    for ( String b in onos_branches ){
-        addingHeader( "FUNC", b )
-        all_testcases[ b ][ "FUNC" ][ "tests" ] += adder( "FUNC", dayStr, getResult, b )
-        closingHeader( "FUNC", b )
-        addingHeader( "HA", b )
-        all_testcases[ b ][ "HA" ][ "tests" ] += adder( "HA", dayStr, getResult, b )
-        closingHeader( "HA", b )
-        addingHeader( "SCPF", b )
-        all_testcases[ b ][ "SCPF" ][ "tests" ] += adder( "SCPF", dayStr, getResult, b )
-        closingHeader( "SCPF", b )
-        addingHeader( "SR", b )
-        all_testcases[ b ][ "SR" ][ "tests" ] += adder( "SR", dayStr, false, b )
-        closingHeader( "SR", b )
-        addingHeader( "SRHA", b )
-        all_testcases[ b ][ "SRHA" ][ "tests" ] += adder( "SRHA", dayStr, false, b )
-        closingHeader( "SRHA", b )
-        addingHeader( "USECASE", b )
-        all_testcases[ b ][ "USECASE" ][ "tests" ] += adder( "USECASE", dayStr, getResult, b )
-        closingHeader( "USECASE", b )
+def getONOSTests(){
+    echo "-> getONOSTests()"
+    if ( manually_run ){
+        return test_list.getTestsFromStringList( testsParam.tokenize( "\n;, " ) )
+    } else {
+        day = dayMap[ today ]
+        return test_list.getTestsFromDay( day )
     }
 }
 
-// adder that will return the list of the tests.
-def adder( category, day, getResult, branch ){
-    // category : the category of the test which will be either FUNC,HA,SR...
-    // day : the day you are trying to add (m,t,w,th... )
-    // getResult : if want to get the list of the test to be run. False will return empty list.
-    //             And once the list is empty, it will not be run.
-    def result = ""
-    selectedTests = test_list.getTestsFromCategory( category, test_list.getTestsFromDay( day, branch ) )
+// init paths for the files and directories.
+def initGraphPaths(){
+    graphPaths[ "histogramMultiple" ] = fileRelated.histogramMultiple
+    graphPaths[ "pieMultiple" ] = fileRelated.pieMultiple
+    graphPaths[ "saveDirectory" ] = fileRelated.jenkinsWorkspace + "postjob-VM/"
+}
 
-    for ( String test in selectedTests.keySet() ){
-        if ( getResult ){
-            result += test + ","
+// **********************
+// Determine Tests to Run
+// **********************
+
+def printTestsToRun( runList ){
+    if ( manually_run ){
+        println "Tests to be run manually:"
+    } else {
+        if ( isFabric ){
+            postToSlackSR()
         }
-        // make HTML columns for wiki page on schedule.
-        makeHtmlColList( category, test, branch )
+        if ( today == Calendar.MONDAY ){
+            postToSlackTestsToRun()
+        }
+        println "Defaulting to " + day + " tests:"
     }
-    return result
+    for ( list in runList ){
+    //     triggerFuncs.print_tests( all_testcases[ b ] )
+        echo "" + list
+    }
 }
 
-// Initial part of the wiki page.
-def initHtmlForWiki(){
-    wikiContents = '''
-    <table class="wrapped confluenceTable">
-        <colgroup>
-              <col />
-              <col />
-              <col />
-              <col />
-              <col />
-              <col />
-        </colgroup>
-        <tbody>
-            <tr>
-                <th colspan="1" class="confluenceTh">
-                    <br />
-                </th>
-                <th class="confluenceTh"><p>Monday</p></th>
-                <th class="confluenceTh"><p>Tuesday</p></th>
-                <th class="confluenceTh"><p>Wednesday</p></th>
-                <th class="confluenceTh"><p>Thursday</p></th>
-                <th class="confluenceTh"><p>Friday</p></th>
-                <th class="confluenceTh"><p>Saturday</p></th>
-                <th class="confluenceTh"><p>Sunday</p></th>
-            </tr>'''
-    for ( String b in onos_branches ){
-        for ( String test in all_testcases[ b ].keySet() ){
-            all_testcases[ b ][ test ][ 'wikiContent' ] = '''
-                <tr>
-                    <th colspan="1" class="confluenceTh">''' + test + '''</th>'''
+def postToSlackSR(){
+    // If it is automated running, it will post the beginning message to the channel.
+    slackSend( channel: 'sr-failures', color: '#03CD9F',
+               message: ":sparkles:" * 16 + "\n" +
+                        "Starting tests on : " + now.toString() +
+                        "\n" + ":sparkles:" * 16 )
+}
+
+def postToSlackTestsToRun(){
+    slackSend( color: '#FFD988',
+               message: "Tests to be run this weekdays : \n" +
+                        triggerFuncs.printDaysForTest() )
+}
+
+// *********
+// Run Tests
+// *********
+
+def generateRunList(){
+    runList = [:]
+    for ( branch in onos_branches ){
+        nodeLabels = test_list.getAllNodeLabels( branch, selectedTests )
+        for ( nodeLabel in nodeLabels ){
+            selectedNodeLabelTests = test_list.getTestsFromNodeLabel( nodeLabel, branch, selectedTests )
+            selectedNodeLabelCategories = test_list.getAllTestCategories( selectedNodeLabelTests )
+            for ( category in selectedNodeLabelCategories ){
+                selectedNodeLabelCategoryTests = getTestsFromCategory( category, selectedNodeLabelTests )
+                exeTestList = test_list.getTestListAsString( selectedNodeLabelCategoryTests )
+                runList.put( nodeLabel, triggerFuncs.trigger_pipeline( branch, exeTestList, nodeLabel, category, manually_run, onos_tag ) )
+            }
         }
     }
+    return runList
 }
 
-// adding header functionality.
-def addingHeader( testCategory, branch ){
-    all_testcases[ branch ][ testCategory ][ 'wikiContent' ] += '''
-                <td class="confluenceTd">
-                    <ul>'''
+def runTests(){
+    runList = generateRunList()
+    printTestsToRun( runList )
+    parallel runList
 }
 
-// making column list for html
-def makeHtmlColList( testCategory, testName, branch ){
-    all_testcases[ branch ][ testCategory ][ 'wikiContent' ] += '''
-                        <li>''' + testName + '''</li>'''
+// ***************
+// Generate Graphs
+// ***************
 
-}
-
-// closing the header for html
-def closingHeader( testCategory, branch ){
-    all_testcases[ branch ][ testCategory ][ 'wikiContent' ] += '''
-                    </ul>
-                </td>'''
-}
-
-// close the html for the wiki page.
-def closeHtmlForWiki(){
-    for ( String b in onos_branches ){
-        for ( String test in all_testcases[ b ].keySet() ){
-            wikiContents += all_testcases[ b ][ test ][ 'wikiContent' ]
-            wikiContents += '''
-                </tr>'''
+def generateGraphs(){
+    // If it is automated running, it will generate the stats graph on VM.
+    if ( !manually_run ){
+        for ( String b in onos_branches ){
+            funcs.generateStatGraph( "TestStation-VMs",
+                                     funcs.branchWithPrefix( b ),
+                                     graphPaths[ "histogramMultiple" ],
+                                     graphPaths[ "pieMultiple" ],
+                                     graphPaths[ "saveDirectory" ] )
         }
     }
-    wikiContents += '''
-        </tbody>
-    </table>
-    <p><strong>Everyday</strong>, all SegmentRouting tests are built and run on every supported branch.</p>
-    <p>On <strong>Weekdays</strong>, all the other tests are built and run on the master branch.</p>
-    <p>On <strong>Saturdays</strong>, all the other tests are built and run on the ''' +
-                    test_list.convertBranchCodeToBranch( "onos-2.x" ) + ''' branch.</p>
-    <p>On <strong>Sundays</strong>, all the other tests are built and run on the ''' +
-                    test_list.convertBranchCodeToBranch( "onos-1.x" ) + ''' branch.</p>'''
-}
-
-// post the result to wiki page using publish to confluence.
-def postToWiki( contents ){
-    node( testMachine ) {
-        workspace = fileRelated.jenkinsWorkspace + "all-pipeline-trigger/"
-        filename = "jenkinsSchedule.txt"
-        writeFile file: workspace + filename, text: contents
-        funcs.publishToConfluence( "false", "true",
-                                   "Automated Test Schedule",
-                                   workspace + filename )
-    }
 }
diff --git a/TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy b/TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy
index 6ee0485..109b79b 100644
--- a/TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy
+++ b/TestON/JenkinsFile/dependencies/JenkinsTestONTests.groovy
@@ -32,6 +32,10 @@
     branches = readJSON text: branches_buffer
 }
 
+// ***************
+// General Methods
+// ***************
+
 // returns the entire set of TestON tests from the json file
 def getAllTests(){
     return allTests
@@ -42,24 +46,128 @@
     return schedules
 }
 
+// returns a list of days corresponding to the given schedule code
+def convertScheduleKeyToDays( sch ){
+    return schedules[ sch ]
+}
+
+// given a test dictionary, returns a list of tests as a string
+def getTestListAsString( tests ){
+    str_result = ""
+    for ( String test in tests.keySet() ){
+        str_result += test + ","
+    }
+    return str_result[ 0..-2 ]
+}
+
+def getTestsFromStringList( list ){
+    testsResult = [:]
+    for ( item in list ){
+        if ( allTests.contains( item ) ){
+            testsResult.put( item, allTests[ item ] )
+        }
+    }
+    return testsResult
+}
+
+// Get a given test property from the schedules list for a given test
+// Example: getTestScheduleProperty( "FUNCflow", "nodeLabel" ) gets all node labels for each branch
+def getTestScheduleProperty( test_name, property, tests=[:] ){
+    schedulePropertyResult = [:]
+
+    if ( tests == [:] ){
+        tests = allTests
+    }
+    for ( subDict in tests[ test_name ][ "schedules" ] ){
+        schedulePropertyResult.put( subDict[ "branch" ], subDict[ property ] )
+    }
+
+    return schedulePropertyResult
+}
+
 def getAllBranches(){
     return branches
 }
 
-// given a test category ("FUNC", "HA", etc.), returns all tests associated with that category
-def getTestsFromCategory( category, tests=[:] ){
-    result = [:]
+// ********
+// Branches
+// ********
+
+// given a day, returns all branches that are run on that day
+def getBranchesFromDay( day, tests=[:] ){
+    branchesFromDayResult = []
     if ( tests == [:] ){
         tests = allTests
     }
+    validSchedules = getValidSchedules( day )
+
     for ( String key in tests.keySet() ){
-        if ( tests[ key ][ "category" ] == category ){
-            result.put( key, tests[ key ] )
+        for ( subDict in tests[ key ][ "schedules" ] ){
+            sch = subDict[ "day" ]
+            if ( validSchedules.contains( sch ) && !branchesFromDayResult.contains( sch ) ){
+                branchesFromDayResult += convertBranchCodeToBranch( subDict[ "branch" ] )
+            }
         }
     }
-    return result
+    return branchesFromDayResult
 }
 
+// Converts a branch code to an actual ONOS branch.
+// Example: converts onos-1.x to onos-1.15
+def convertBranchCodeToBranch( branch_code, withPrefix=true ){
+    for ( String branch_type in branches.keySet() ){
+        for ( String b in branches[ branch_type ].keySet() ){
+            if ( branch_code == b ){
+                return withPrefix ? ( "onos-" + branches[ branch_type ][ b ] ) : branches[ branch_type ][ b ]
+            }
+        }
+    }
+    return branch_code
+}
+
+// *************
+// Test Category
+// *************
+
+// given a test category ("FUNC", "HA", etc.), returns all tests associated with that category
+def getTestsFromCategory( category, tests=[:] ){
+    testsFromCategoryResult = [:]
+    if ( tests == [:] ){
+        tests = allTests
+    }
+    for ( String test_name in tests.keySet() ){
+        if ( getCategoryOfTest( test_name ) == category ){
+            testsFromCategoryResult.put( test_name, tests[ test_name ] )
+        }
+    }
+    return testsFromCategoryResult
+}
+
+def getCategoryOfTest( test_name, tests=[:] ){
+    if ( tests == [:] ){
+        tests = allTests
+    }
+    return tests[ test_name ][ "category" ]
+}
+
+def getAllTestCategories( tests=[:] ){
+    testCategoriesResult = []
+    if ( tests == [:] ){
+        tests = allTests
+    }
+    for ( String test_name in tests.keySet() ){
+        category = getCategoryOfTest( test_name, tests )
+        if ( !testCategoriesResult.contains( category ) ){
+            testCategoriesResult += category
+        }
+    }
+    return testCategoriesResult
+}
+
+// ********************
+// Test Schedule / Days
+// ********************
+
 // given a day, returns schedules that contain that day
 def getValidSchedules( day ){
     validSchedules = []
@@ -72,80 +180,68 @@
 }
 
 // given a day and branch, returns all tests that run on the given day on the given branch
-def getTestsFromDay( day, branch, tests=[:] ){
-    result = [:]
+def getTestsFromDay( day, tests=[:] ){
+    resultDict = [:]
     if ( tests == [:] ){
         tests = allTests
     }
     validSchedules = getValidSchedules( day )
     for ( String key in tests.keySet() ){
-        schedule = tests[ key ][ "schedule" ][ branch ]
-        if ( validSchedules.contains( schedule ) ){
-            result.put( key, tests[ key ] )
-        }
-    }
-    return result
-}
-
-// given a day, returns all branches that are run on that day
-def getBranchesFromDay( day, tests=[:] ){
-    result = []
-    if ( tests == [:] ){
-        tests = allTests
-    }
-    validSchedules = getValidSchedules( day )
-
-    for ( String key in tests.keySet() ){
-        for ( String branch in tests[ key ][ "schedule" ].keySet() ){
-            sch = tests[ key ][ "schedule" ][ branch ]
-            if ( validSchedules.contains( sch ) && !result.contains( sch ) ){
-                result += convertBranchCodeToBranch( branch )
+        scheduleProperty = getTestScheduleProperty( key, "day", tests )
+        for ( b in scheduleProperty.keySet() ){
+            if ( validSchedules.contains( scheduleProperty[ b ] ) ){
+                resultDict.put( key, tests[ key ] )
+                break
             }
         }
     }
-    return result
+    return resultDict
 }
 
-// given a nodeLabel ("vm", "bm", etc.), returns all tests that run on that node.
-def getTestsFromNodeLabel( nodeLabel, tests=[:] ){
+// **********
+// Node Label
+// **********
+
+// Given a node label and branch, return all tests that run on that node.
+def getTestsFromNodeLabel( nodeLabel, branch, tests=[:] ){
+    nodeLabelTestsResult = [:]
     if ( tests == [:] ){
         tests = allTests
     }
     for ( String key in tests.keySet() ){
-        if ( tests[ key ][ "nodeLabel" ] == nodeLabel ){
-            result.put( key, tests[ key ] )
+        branchNodeLabelMap = getTestScheduleProperty( key, "nodeLabel", tests )
+        if ( branchNodeLabelMap[ branch ] == nodeLabel ){
+            nodeLabelTestsResult.put( key, tests[ key ] )
         }
     }
+    return nodeLabelTestsResult
 }
 
-// returns the test list as a string
-def getTestListAsString( tests ){
-    result = ""
-    for ( String test in tests.keySet() ){
-        result += test + ","
+// Given a test name and branch, return the node label associated.
+def getNodeLabel( test_name, branch, tests ){
+    if ( tests == [:] ){
+        tests = allTests
     }
-    return result[ 0..-2 ]
+    result = getTestScheduleProperty( test_name, "nodeLabel", tests )
+    if ( result == [:] ){
+        return "UNKNOWN"
+    } else {
+        return result[ branch ]
+    }
 }
 
-// returns the schedule for a given test
-def getTestSchedule( test ){
-    return allTests[ test ][ "schedule" ]
-}
-
-// returns a list of days from the given schedule
-def convertScheduleKeyToDays( sch ){
-    return schedules[ sch ]
-}
-
-def convertBranchCodeToBranch( branch_code, withPrefix=true ){
-    for ( String branch_type in branches.keySet() ){
-        for ( String b in branches[ branch_type ].keySet() ){
-            if ( branch_code == b ){
-                return withPrefix ? ( "onos-" + branches[ branch_type ][ b ] ) : branches[ branch_type ][ b ]
-            }
+def getAllNodeLabels( branch, tests ){
+    nodeLabelResult = []
+    if ( tests == [:] ){
+        tests = allTests
+    }
+    for ( test_name in tests.keySet() ){
+        nodeLabel = getNodeLabel( test_name, branch, tests )
+        if ( !nodeLabelResult.contains( nodeLabel ) ){
+            nodeLabelResult += nodeLabel
         }
     }
-    return branch_code
+    return nodeLabelResult
 }
 
 return this
diff --git a/TestON/JenkinsFile/dependencies/TriggerFuncs.groovy b/TestON/JenkinsFile/dependencies/TriggerFuncs.groovy
index c35a94e..4eb22ab 100644
--- a/TestON/JenkinsFile/dependencies/TriggerFuncs.groovy
+++ b/TestON/JenkinsFile/dependencies/TriggerFuncs.groovy
@@ -48,7 +48,7 @@
         result += test + ": ["
         test_schedule = test_list.getTestSchedule( test )
         for ( String sch in test_schedule.keySet() ){
-            for ( String day in convertScheduleKeyToDays( sch ) ){
+            for ( String day in test_list.convertScheduleKeyToDays( sch ) ){
                 result += day + " "
             }
         }
diff --git a/TestON/JenkinsFile/dependencies/tests.json b/TestON/JenkinsFile/dependencies/tests.json
index 89927de..ed48bcd 100644
--- a/TestON/JenkinsFile/dependencies/tests.json
+++ b/TestON/JenkinsFile/dependencies/tests.json
@@ -2,789 +2,1420 @@
     "FUNCflow": {
         "wikiName": "FUNCflow",
         "wikiFile": "FUNCflowWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCintent": {
         "wikiName": "FUNCintent",
         "wikiFile": "FUNCintentWiki.txt",
-        "schedule": {
-            "master": "mon_wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_wed_fri",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCintentRest": {
         "wikiName": "FUNCintentRest",
         "wikiFile": "FUNCintentRestWiki.txt",
-        "schedule": {
-            "master": "tue_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue_thu",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCipv6Intent": {
         "wikiName": "FUNCipv6Intent",
         "wikiFile": "FUNCipv6IntentWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCnetCfg": {
         "wikiName": "FUNCnetCfg",
         "wikiFile": "FUNCnetCfgWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCnetconf": {
         "wikiName": "FUNCnetconf",
         "wikiFile": "FUNCnetconfWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCoptical": {
         "wikiName": "FUNCoptical",
         "wikiFile": "FUNCopticalWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCovsdbtest": {
         "wikiName": "FUNCovsdbtest",
         "wikiFile": "FUNCovsdbtestWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCgroup": {
         "wikiName": "FUNCgroup",
         "wikiFile": "FUNCgroupWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "FUNCformCluster": {
         "wikiName": "FUNCformCluster",
         "wikiFile": "FUNCformClusterWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "FUNC",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAsanity": {
         "wikiName": "HA Sanity",
         "wikiFile": "HAsanityWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAsingleInstanceRestart": {
         "wikiName": "HA Single Instance Restart",
         "wikiFile": "HAsingleInstanceRestartWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAclusterRestart": {
         "wikiName": "HA Cluster Restart",
         "wikiFile": "HAclusterRestart.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAkillNodes": {
         "wikiName": "HA Kill Nodes",
         "wikiFile": "HAkillNodes.txt",
-        "schedule": {
-            "master": "tue_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue_thu",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAstopNodes": {
         "wikiName": "HA Stop Nodes",
         "wikiFile": "HAstopNodes.txt",
-        "schedule": {
-            "master": "mon_wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_wed_fri",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAfullNetPartition": {
         "wikiName": "HA Full Network Partition",
         "wikiFile": "HAfullNetPartitionWiki.txt",
-        "schedule": {
-            "master": "mon_wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_wed_fri",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAscaling": {
         "wikiName": "HA Scaling",
         "wikiFile": "HAscalingWiki.txt",
-        "schedule": {
-            "master": "tue_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue_thu",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAswapNodes": {
         "wikiName": "HA Swap Nodes",
         "wikiFile": "HAswapNodesWiki.txt",
-        "schedule": {
-            "master": "tue_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue_thu",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAupgrade": {
         "wikiName": "HA Upgrade",
         "wikiFile": "HAupgradeWiki.txt",
-        "schedule": {
-
-        },
+        "schedules": [
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAupgradeRollback": {
         "wikiName": "HA Upgrade Rollback",
         "wikiFile": "HAupgradeRollbackWiki.txt",
-        "schedule": {
-
-        },
+        "schedules": [
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "HAbackupRecover": {
         "wikiName": "HA Backup Recover",
         "wikiFile": "HAbackupRecoverWiki.txt",
-        "schedule": {
-            "master": "tue_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue_thu",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "VM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "VM"
+            }
+        ],
         "category": "HA",
-        "nodeLabel": "VM",
         "supportedBranches": [ "all" ]
     },
     "SCPFswitchLat": {
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFportLat": {
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentInstallWithdrawLat": {
-        "schedule": {
-            "master": "wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "wed_fri",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentInstallWithdrawLatWithFlowObj": {
-        "schedule": {
-            "master": "mon_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_thu",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentRerouteLat": {
-        "schedule": {
-            "master": "wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "wed_fri",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentRerouteLatWithFlowObj": {
-        "schedule": {
-            "master": "mon_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_thu",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentEventTp": {
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFintentEventTpWithFlowObj": {
-        "schedule": {
-            "master": "mon_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_thu",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFscaleTopo": {
-        "schedule": {
-            "master": "tue",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "tue",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFflowTp1g": {
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFflowTp1gWithFlowObj": {
-        "schedule": {
-            "master": "mon_thu",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "mon_thu",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFcbench": {
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFscalingMaxIntents": {
-        "schedule": {
-
-        },
+        "schedules": [
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFscalingMaxIntentsWithFlowObj": {
-        "schedule": {
-
-        },
+        "schedules": [
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFbatchFlowResp": {
-        "schedule": {
-            "master": "wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "wed_fri",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFhostLat": {
-        "schedule": {
-            "master": "wed_fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "wed_fri",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SCPFmastershipFailoverLat": {
-        "schedule": {
-            "master": "fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "SCPF",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "SRBridging": {
         "wikiName": "SR Bridging",
         "wikiFile": "SRBridgingWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRRouting": {
         "wikiName": "SR Routing",
         "wikiFile": "SRRoutingWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRDhcprelay": {
         "wikiName": "SR Dhcp Relay",
         "wikiFile": "SRDhcprelayWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRDynamicConf": {
         "wikiName": "SR Dynamic Config",
         "wikiFile": "SRDynamicConfWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRMulticast": {
         "wikiName": "SR Multi Cast",
         "wikiFile": "SRMulticastWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRSanity": {
         "wikiName": "SR Sanity",
         "wikiFile": "SRSanityWiki.txt",
-        "schedule": {
-            "master": "fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRSwitchFailure": {
         "wikiName": "SR Switch Failure",
         "wikiFile": "SRSwitchFailureWiki.txt",
-        "schedule": {
-            "master": "fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRLinkFailure": {
         "wikiName": "SR Link Failure",
         "wikiFile": "SRLinkFailureWiki.txt",
-        "schedule": {
-            "master": "fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SROnosFailure": {
         "wikiName": "SR Onos node Failure",
         "wikiFile": "SROnosFailureWiki.txt",
-        "schedule": {
-            "master": "fri",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRClusterRestart": {
         "wikiName": "SR Cluster Restart",
         "wikiFile": "SRClusterRestartWiki.txt",
-        "schedule": {
-            "master": "sat",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "sat",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRDynamic": {
         "wikiName": "SR Dynamic",
         "wikiFile": "SRDynamicWiki.txt",
-        "schedule": {
-            "master": "sat",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "sat",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHighAvailability": {
         "wikiName": "SR High Availability",
         "wikiFile": "SRHighAvailabilityWiki.txt",
-        "schedule": {
-            "master": "sat",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "sat",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAsanity": {
         "test": "HAsanity --params-file HAsanity.params.fabric",
         "wikiName": "SR HA Sanity",
         "wikiFile": "HAsanityWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAclusterRestart": {
         "test": "HAclusterRestart --params-file HAclusterRestart.params.fabric",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAsingleInstanceRestart": {
         "test": "HAsingleInstanceRestart --params-file HAsingleInstanceRestart.params.fabric",
         "wikiName": "SR HA Single Instance Restart",
         "wikiFile": "HAsingleInstanceRestartWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAstopNodes": {
         "test": "HAstopNodes --params-file HAstopNodes.params.fabric",
         "wikiName": "SR HA Stop Nodes",
         "wikiFile": "HAstopNodes.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAfullNetPartition": {
         "test": "HAfullNetPartition --params-file HAfullNetPartition.params.fabric",
         "wikiName": "SR HA Full Network Partition",
         "wikiFile": "HAfullNetPartitionWiki.txt",
-        "schedule": {
-            "master": "fri"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "fri",
+                "nodeLabel": "Fabric4"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAswapNodes": {
         "test": "HAswapNodes --params-file HAswapNodes.params.fabric",
         "wikiName": "SR HA Swap Nodes",
         "wikiFile": "HAswapNodesWiki.txt",
-        "schedule": {
-            "master": "sat"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "sat",
+                "nodeLabel": "Fabric4"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAscaling": {
         "test": "HAscaling --params-file HAscaling.params.fabric",
         "wikiName": "SR HA Scaling",
         "wikiFile": "HAscalingWiki.txt",
-        "schedule": {
-            "master": "sat"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "sat",
+                "nodeLabel": "Fabric4"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAkillNodes": {
         "test": "HAkillNodes --params-file HAkillNodes.params.fabric",
         "wikiName": "SR HA Kill Nodes",
         "wikiFile": "HAkillNodes.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAbackupRecover": {
         "test": "HAbackupRecover --params-file HAbackupRecover.params.fabric",
         "wikiName": "SR HA Backup Recover",
         "wikiFile": "HAbackupRecoverWiki.txt",
-        "schedule": {
-            "master": "weekdays",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "weekdays",
+                "nodeLabel": "Fabric4"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "Fabric2"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "Fabric3"
+            }
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAupgrade": {
         "test": "HAupgrade --params-file HAupgrade.params.fabric",
         "wikiName": "SR HA Upgrade",
         "wikiFile": "HAupgradeWiki.txt",
-        "schedule": {
-        },
+        "schedules": [
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "SRHAupgradeRollback": {
         "test": "HAupgradeRollback --params-file HAupgradeRollback.params.fabric",
         "wikiName": "SR HA Upgrade Rollback",
         "wikiFile": "HAupgradeRollbackWiki.txt",
-        "schedule": {
-        },
+        "schedule": [
+        ],
         "category": "SR",
-        "nodeLabel": "Fabric",
         "supportedBranches": [ "all" ]
     },
     "FUNCvirNetNB": {
         "wikiName": "FUNCvirNetNB",
         "wikiFile": "FUNCvirNetNBWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "FUNCbgpls": {
         "wikiName": "FUNCbgpls",
         "wikiFile": "FUNCbgplsWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "VPLSBasic": {
         "wikiName": "VPLSBasic",
         "wikiFile": "VPLSBasicWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "VPLSfailsafe": {
         "wikiName": "VPLSfailsafe",
         "wikiFile": "VPLSfailsafeWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "USECASE_SdnipFunction": {
         "wikiName": "SDNIP Function",
         "wikiFile": "USECASE_SdnipFunctionWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "USECASE_SdnipFunctionCluster": {
         "wikiName": "SDNIP Function Cluster",
         "wikiFile": "USECASE_SdnipFunctionClusterWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     },
     "PLATdockertest": {
         "wikiName": "Docker Images sanity test",
         "wikiFile": "PLATdockertestTableWiki.txt",
-        "schedule": {
-            "master": "USECASE_master",
-            "onos-1.x": "onos-1.x_schedule",
-            "onos-2.x": "onos-2.x_schedule"
-        },
+        "schedules": [
+            {
+                "branch": "master",
+                "day": "USECASE_master",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-1.x",
+                "day": "onos-1.x_schedule",
+                "nodeLabel": "BM"
+            },
+            {
+                "branch": "onos-2.x",
+                "day": "onos-2.x_schedule",
+                "nodeLabel": "BM"
+            }
+        ],
         "category": "USECASE",
-        "nodeLabel": "BM",
         "supportedBranches": [ "all" ]
     }
 }
