aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2019-07-02 23:43:05 -0700
committerAllan Wang <me@allanwang.ca>2019-07-02 23:43:05 -0700
commit93d2d28af68c932e1bdd931fcb4a62943c45e14d (patch)
treecf73ab15a0a707574638643c12075f509cb6f3b3
parent16e575ee54575b8c3e89465609221b62ab5f0eca (diff)
downloadfrost-93d2d28af68c932e1bdd931fcb4a62943c45e14d.tar.gz
frost-93d2d28af68c932e1bdd931fcb4a62943c45e14d.tar.bz2
frost-93d2d28af68c932e1bdd931fcb4a62943c45e14d.zip
Test install task
-rw-r--r--app/build.gradle1
-rw-r--r--buildSrc/build.gradle.kts9
-rw-r--r--buildSrc/src/main/kotlin/FrostPlugin.kt1
-rw-r--r--buildSrc/src/main/kotlin/WebGenInstallTask.kt5
4 files changed, 14 insertions, 2 deletions
diff --git a/app/build.gradle b/app/build.gradle
index 4efd7930..0f5188b7 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -5,6 +5,7 @@ apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: 'com.getkeepsafe.dexcount'
apply plugin: 'com.gladed.androidgitversion'
+apply plugin: FrostPlugin
apply from: '../spotless.gradle'
group = APP_GROUP
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index 4397bae9..d9ff7951 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -22,6 +22,15 @@ val kau = rootProps.useLines {
println("Using kau $kau")
+gradlePlugin {
+ plugins {
+ register("frost-web-gen") {
+ id = "frost"
+ implementationClass = "FrostPlugin"
+ }
+ }
+}
+
dependencies {
implementation("ca.allanwang.kau:gradle-plugin:$kau")
implementation("com.moowork.gradle:gradle-node-plugin:1.3.1")
diff --git a/buildSrc/src/main/kotlin/FrostPlugin.kt b/buildSrc/src/main/kotlin/FrostPlugin.kt
index 0fd4ea9d..7b5075f8 100644
--- a/buildSrc/src/main/kotlin/FrostPlugin.kt
+++ b/buildSrc/src/main/kotlin/FrostPlugin.kt
@@ -12,6 +12,7 @@ class FrostPlugin : Plugin<Project> {
}
override fun apply(project: Project) {
+ println("Applying Frost Plugin")
project.plugins.withId("java-base") {
project.applyWebGenPlugin()
}
diff --git a/buildSrc/src/main/kotlin/WebGenInstallTask.kt b/buildSrc/src/main/kotlin/WebGenInstallTask.kt
index 2076ee84..a185a7f0 100644
--- a/buildSrc/src/main/kotlin/WebGenInstallTask.kt
+++ b/buildSrc/src/main/kotlin/WebGenInstallTask.kt
@@ -1,6 +1,7 @@
import com.moowork.gradle.node.npm.NpmTask
import org.gradle.api.DefaultTask
import org.gradle.api.logging.LogLevel
+import org.gradle.api.tasks.CacheableTask
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.OutputFile
import org.gradle.api.tasks.TaskAction
@@ -9,7 +10,8 @@ import java.io.File
/**
* Based on https://github.com/apollographql/apollo-android/blob/master/apollo-gradle-plugin/src/main/groovy/com/apollographql/apollo/gradle/ApolloCodegenInstallTask.groovy
*/
-class WebGenInstallTask : DefaultTask() {
+@CacheableTask
+open class WebGenInstallTask : DefaultTask() {
companion object {
const val TAG = "frost-web-gen"
@@ -34,7 +36,6 @@ class WebGenInstallTask : DefaultTask() {
installDir.set(project.file(File(project.buildDir, INSTALLATION_PATH)))
packageFile.set(project.file(File(project.buildDir, PACKAGE_FILE_PATH)))
-
npmTask.setWorkingDir(File(project.buildDir, TAG))
}