#!/usr/bin/env groovy

def boards = [
    "enterprise",
    "excelsior"
]

boards.each {
    def boardName = it

    pipelineJob("image.unstable.${boardName}") {
        parameters {
            stringParam('boardName', boardName, 'Board to build an image for')
        }
        definition {
            cpsScm {
                scm {
                    git {
                        remote {
                            url('https://coral.googlesource.com/gke-jenkins')
                        }

                        branches('*/master')
                    }
                }

                scriptPath("cicd/pipelines/core/image_unstable.jenkins")
            }
        }
    }
}
