datahub/datahub-web/build.gradle
2019-08-31 20:51:14 -07:00

91 lines
2.1 KiB
Groovy

apply plugin: 'distribution'
apply plugin: 'com.moowork.node'
node {
// Version of node to use.
version = '10.6.0'
// Version of Yarn to use.
yarnVersion = '1.13.0'
// Base URL for fetching node distributions (change if you have a mirror).
distBaseUrl = 'https://nodejs.org/dist'
// If true, it will download node using above parameters.
// If false, it will try to use globally installed node.
download = true
// Set the work directory for unpacking node
workDir = file("${project.buildDir}/nodejs")
// Set the work directory for NPM
yarnWorkDir = file("${project.buildDir}/yarn")
// Set the work directory where node_modules should be located
nodeModulesDir = file("${project.projectDir}")
}
def yarnMainProject = 'wherehows-web'
task execYarn(type: YarnTask) {
if (project.hasProperty('yarnArgs')) {
args = yarnArgs.tokenize()
}
}
task execEmber(type: NodeTask, dependsOn: execYarn) {
script = file('node_modules/.bin/ember')
if (project.hasProperty('emberArgs')) {
args = emberArgs.tokenize()
}
}
task emberLintJs(type: YarnTask, dependsOn: execYarn) {
args = ['run', 'lint:js']
}
task emberLintHbs(type: YarnTask, dependsOn: emberLintJs) {
args = ['run', 'lint:hbs']
}
task emberServe(type: YarnTask, dependsOn: emberLintHbs) {
args = ['workspace', yarnMainProject, 'run', 'start', '--proxy', 'localhost:9001', '--secure-proxy=false']
}
task emberWorkspaceTest(type: YarnTask, dependsOn: emberLintHbs) {
args = ['run', 'test']
}
task emberBuild(type: YarnTask, dependsOn: emberWorkspaceTest) {
args = ['workspace', yarnMainProject, 'run', 'build', '--environment', 'production']
}
task emberTest(type: YarnTask, dependsOn: emberLintHbs) {
args = ['workspace', yarnMainProject, 'run', 'test']
}
task emberCoverage(type: YarnTask, dependsOn: emberLintHbs) {
args = ['workspace', yarnMainProject, 'run', 'coverage']
}
clean {
delete 'node_modules'
delete 'dist'
delete 'tmp'
delete 'just'
}
configurations {
assets
}
distZip {
dependsOn emberBuild
baseName 'datahub-web'
from 'packages/data-portal/dist'
}
artifacts {
assets distZip
}