//this is run first; always
buildscript {
    apply from: file("../gradle/deps.gradle")
    initScript(buildscript)
}

repositories sharedRepositories

apply plugin: "groovy"

//groovy added some things to the compile configuration; remove them
//as we add our own versions for this
configurations.compile.dependencies.clear()

dependencies {
    compile "org.yaml:snakeyaml:${libs.snakeYaml}"
    compile "org.codehaus.groovy:groovy-all:${libs.groovy}"
    compile "org.gradle:gradle-core:${libs.gradle}"
    compile "org.gradle:gradle-model-core:${libs.gradle}"
    compile "org.gradle:gradle-base-services-groovy:${libs.gradle}"
    compile "org.gradle:gradle-base-services:${libs.gradle}"
    compile "org.gradle:gradle-logging:${libs.gradle}"
    compile "org.slf4j:slf4j-api:1.7.25"
    //we will do this this way as extendsFrom does not work across containers or something...
    compile buildscript.configurations.tomcat.allDependencies
    testCompile 'junit:junit:4.12'
}