buildscript {
	repositories {
		mavenCentral()
		maven { url "https://repo.grails.org/grails/core" }
	}
	dependencies {
		classpath "org.grails:grails-gradle-plugin:$grailsVersion"
		classpath "org.grails.plugins:hibernate5:6.0.7"
	}
}

plugins {
	id 'org.asciidoctor.convert' version '1.5.3'
}

version "0.1"
group "com.example"

apply plugin: "war"
apply plugin: "eclipse"
apply plugin: "idea"
apply plugin: "org.grails.grails-web"

ext {
	restDocsVersion = "2.0.3.BUILD-SNAPSHOT"
	snippetsDir = file('src/docs/generated-snippets')
}

repositories {
	mavenLocal()
	maven { url 'https://repo.spring.io/libs-snapshot' }
	maven { url "https://repo.grails.org/grails/core" }
}

dependencyManagement {
	dependencies {
		dependency "org.springframework.restdocs:spring-restdocs-core:$restDocsVersion"
		dependency "org.springframework.restdocs:spring-restdocs-restassured:$restDocsVersion"
		dependency "org.springframework.restdocs:spring-restdocs-asciidoctor:$restDocsVersion"
	}
	imports {
		mavenBom "org.grails:grails-bom:$grailsVersion"
	}
	applyMavenExclusions false
}

dependencies {
	asciidoctor "org.springframework.restdocs:spring-restdocs-asciidoctor"

	compile "org.springframework.boot:spring-boot-starter-logging"
	compile "org.springframework.boot:spring-boot-autoconfigure"
	compile "org.springframework.boot:spring-boot-starter-actuator"
	compile "org.springframework.boot:spring-boot-starter-tomcat"
	compile "org.grails:grails-core"
	compile "org.grails:grails-plugin-url-mappings"
	compile "org.grails:grails-plugin-rest"
	compile "org.grails:grails-plugin-codecs"
	compile "org.grails:grails-plugin-interceptors"
	compile "org.grails:grails-plugin-services"
	compile "org.grails:grails-plugin-datasource"
	compile "org.grails:grails-plugin-databinding"
	compile "org.grails.plugins:async"
	compile "org.grails:grails-web-boot"
	compile "org.grails:grails-logging"
	compile "org.grails.plugins:cache"
	compile "org.grails.plugins:hibernate5"
	compile "org.hibernate:hibernate-core:5.1.2.Final"
	compile "org.hibernate:hibernate-ehcache:5.1.2.Final"
	compile "org.grails.plugins:views-json"
	compile "org.grails.plugins:views-json-templates"
	console "org.grails:grails-console"

	profile "org.grails.profiles:rest-api"

	runtime "com.h2database:h2"
	runtime 'org.apache.tomcat:tomcat-jdbc'

	testCompile "io.rest-assured:rest-assured:3.0.2"
	testCompile "org.grails:grails-test-mixins:3.3.0"
	testCompile "org.grails.plugins:geb"
	testCompile "org.grails:grails-datastore-rest-client"
	testCompile "org.springframework.restdocs:spring-restdocs-restassured"

	testRuntime "org.seleniumhq.selenium:selenium-htmlunit-driver:2.47.1"
	testRuntime "net.sourceforge.htmlunit:htmlunit:2.18"
}

ext {
	snippetsDir = file('build/generated-snippets')
}

test {
	outputs.dir snippetsDir
}

asciidoctor {
	dependsOn integrationTest
	inputs.dir snippetsDir
}

build.dependsOn asciidoctor
