gradle-build-action/src/gradlew.ts

30 lines
969 B
TypeScript
Raw Normal View History

import * as path from 'path'
import fs from 'fs'
2020-06-13 07:44:30 -04:00
const IS_WINDOWS = process.platform === 'win32'
2019-09-23 06:10:49 -04:00
export function wrapperScriptFilename(): string {
2020-06-13 07:44:30 -04:00
return IS_WINDOWS ? 'gradlew.bat' : 'gradlew'
2019-09-21 10:01:53 -04:00
}
2019-09-23 06:10:49 -04:00
export function installScriptFilename(): string {
2020-06-13 07:44:30 -04:00
return IS_WINDOWS ? 'gradle.bat' : 'gradle'
2019-09-21 10:01:53 -04:00
}
export function locateGradleWrapperScript(buildRootDirectory: string): string {
validateGradleWrapper(buildRootDirectory)
return path.resolve(buildRootDirectory, wrapperScriptFilename())
}
function validateGradleWrapper(buildRootDirectory: string): void {
const wrapperProperties = path.resolve(
buildRootDirectory,
'gradle/wrapper/gradle-wrapper.properties'
)
if (!fs.existsSync(wrapperProperties)) {
throw new Error(
`Cannot locate a Gradle wrapper properties file at '${wrapperProperties}'. Specify 'gradle-version' or 'gradle-executable' for projects without Gradle wrapper configured.`
)
}
}