blob: 5758ca8cd36356db74a4cea89d591eaebdc41eb3 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
task aggregateJavadoc(type: Javadoc) {
project.rootProject.version = getJavadocVersion()
dependsOn subprojects.javadoc
source subprojects.javadoc.source
destinationDir project.rootProject.file("site/docs/javadoc/${getJavadocVersion()}")
classpath = project.rootProject.files(subprojects.javadoc.classpath)
final JAVADOC_FIX_SEARCH_STR = '\n\n' +
'getURLPrefix = function(ui) {\n' +
' return \'\';\n' +
'};\n'
doLast {
// Fix bug with search
if (JavaVersion.current() >= JavaVersion.VERSION_11) {
// Append the fix to the file
def searchScript = new File("site/docs/javadoc/${getJavadocVersion()}" + '/search.js')
searchScript.append JAVADOC_FIX_SEARCH_STR
}
}
}
task removeJavadoc(type: Exec) {
commandLine 'rm', '-rf', "site/docs/javadoc/${getJavadocVersion()}"
}
task refreshJavadoc(type: Exec) {
dependsOn aggregateJavadoc
dependsOn removeJavadoc
aggregateJavadoc.mustRunAfter removeJavadoc
commandLine 'git', 'add', "site/docs/javadoc/${getJavadocVersion()}"
}
task deploySite(type: Exec) {
workingDir 'site'
commandLine 'mkdocs', 'gh-deploy'
}