ssg/sketchingBaseBuild.groovy
2023-05-05 11:31:29 +02:00

37 lines
943 B
Groovy

abstractBuild(name: 'redDogAll', extends: 'default') {
// siteSpec(Closure) is short for siteSpec.merge(Closure)
siteSpec {
name = 'Red Dog Ensemble'
baseUrl = 'https://reddogensemble.com'
}
globals {
greeting = 'Say hello to good music!'
}
sources { types ->
models.map { acc ->
acc + someMethodThatGetsEventModels()
}
}
taskFactories { sources ->
register(name: 'eventToHtml', supplier: ModelToHtmlFactory::new) {
modelsProvider.map { acc ->
acc + CollectionProviders.fromSupplier {
sources.models.provide().findAll { it.name.startsWith('event/') }
}
}
}
}
}
build(name: 'preview', extends: 'redDogAll') {
siteSpec { base ->
baseUrl = base.baseUrl + '/preview' // if possible
}
globals {
greeting = 'Hello from preview!'
}
}