diff --git a/test/ci_workflow_gen.go b/test/ci_workflow_gen.go index 1407d0a0808..1e7696a6f4a 100644 --- a/test/ci_workflow_gen.go +++ b/test/ci_workflow_gen.go @@ -32,11 +32,43 @@ const ( unitTestDatabases = "percona56, mysql57, mysql80, mariadb101, mariadb102, mariadb103" clusterTestTemplate = "templates/cluster_endtoend_test.tpl" - clusterList = "11,12,13,14,15,16,17,18,19,20,21,22,23,24,26,27,vreplication_basic,vreplication_multicell,vreplication_cellalias,vreplication_v2,onlineddl_ghost,onlineddl_vrepl,onlineddl_vrepl_stress,vreplication_migrate,onlineddl_revert" +) + +var ( + clusterList = []string{ + "11", + "12", + "13", + "14", + "15", + "16", + "17", + "18", + "19", + "20", + "21", + "22", + "23", + "24", + "26", + "27", + "vreplication_basic", + "vreplication_multicell", + "vreplication_cellalias", + "vreplication_v2", + "onlineddl_ghost", + "onlineddl_vrepl", + "onlineddl_vrepl_stress", + "vreplication_migrate", + "onlineddl_revert", + } // TODO: currently some percona tools including xtrabackup are installed on all clusters, we can possibly optimize // this by only installing them in the required clusters clustersRequiringXtraBackup = clusterList - clustersRequiringMakeTools = "18,24" + clustersRequiringMakeTools = []string{ + "18", + "24", + } ) type unitTest struct { @@ -72,6 +104,16 @@ func main() { generateClusterWorkflows() } +func canonnizeList(list []string) []string { + var output []string + for _, item := range list { + item = strings.TrimSpace(item) + if item != "" { + output = append(output, item) + } + } + return output +} func parseList(csvList string) []string { var list []string for _, item := range strings.Split(csvList, ",") { @@ -81,20 +123,20 @@ func parseList(csvList string) []string { } func generateClusterWorkflows() { - clusters := parseList(clusterList) + clusters := canonnizeList(clusterList) for _, cluster := range clusters { test := &clusterTest{ Name: fmt.Sprintf("Cluster (%s)", cluster), Shard: cluster, } - makeToolClusters := parseList(clustersRequiringMakeTools) + makeToolClusters := canonnizeList(clustersRequiringMakeTools) for _, makeToolCluster := range makeToolClusters { if makeToolCluster == cluster { test.MakeTools = true break } } - xtraBackupClusters := parseList(clustersRequiringXtraBackup) + xtraBackupClusters := canonnizeList(clustersRequiringXtraBackup) for _, xtraBackupCluster := range xtraBackupClusters { if xtraBackupCluster == cluster { test.InstallXtraBackup = true