Skip to content

Commit

Permalink
Added New Tasks and reactor support
Browse files Browse the repository at this point in the history
  • Loading branch information
Kumar-Kiran committed Sep 26, 2016
1 parent 429d632 commit bc8c7ed
Show file tree
Hide file tree
Showing 8 changed files with 64 additions and 28 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@
*.iws
build
.gradle
gradle
13 changes: 13 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,19 @@ archivesBaseName = 'elm-e2e-plugin'

sourceCompatibility = 1.8


buildscript {
repositories {
jcenter()
}

dependencies {
classpath 'com.bmuschko:gradle-docker-plugin:3.0.3'
}
}

apply plugin: 'com.bmuschko.docker-remote-api'

repositories {
mavenCentral()
mavenLocal()
Expand Down
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Mon Sep 19 12:25:31 IST 2016
#Mon Sep 26 13:02:16 IST 2016
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-bin.zip
4 changes: 2 additions & 2 deletions src/main/groovy/com/zeroplay/elm/ElmPlugin.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ class ElmPlugin implements Plugin<Project>{
}

project.task('buildElm', type: ElmProjectBuildTask );
project.task('installElmPackages', type: ElmInstallPackages)
project.task('installElmPackages', type: ElmInstallPackages);
project.task('setupElm', type: ElmProjectSetup, dependsOn: 'installElmPackages');
//project.task('elmReactor')
project.task('elmReactor',type: ElmReactorTask)
}
}
2 changes: 1 addition & 1 deletion src/main/groovy/com/zeroplay/elm/repository/Main.elm
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ type Msg =
--INIT
initialModel : (Model, Cmd Msg)
initialModel =
{message = "Welcom To ELM Basic Application"} ! []
{message = "Welcome To ELM Basic Application"} ! []

--UPDATE
update : Msg -> Model -> (Model, Cmd Msg)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ class ElmInstallPackages extends BaseTask{


@TaskAction
def installPackages(){
def setUp(){
installPackage("");
project.configurations.elm.dependencies.collect().each {
installPackage(it.group+"/"+it.name);
}
}

private def installPackage(String elmPackage){
def installPackage(String elmPackage){
ProcessBuilder pBuilder = new ProcessBuilder(Arrays.asList("elm","package","install",elmPackage,"--yes"));
pBuilder.redirectErrorStream(true);

Expand Down
37 changes: 16 additions & 21 deletions src/main/groovy/com/zeroplay/elm/tasks/ElmProjectSetup.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ import org.gradle.api.DefaultTask
import org.gradle.api.artifacts.Dependency
import org.gradle.api.tasks.TaskAction

import java.nio.file.Path

/**
* Created by kirankumarbs on 9/15/2016.
*/
Expand All @@ -15,7 +17,6 @@ class ElmProjectSetup extends BaseTask{
createSourceDirectory(project.extensions.elm.source_directory);
createMainSourceModule(project.extensions.elm.source_directory+"/"+project.extensions.elm.mainModule);
createTestDirectory(project.extensions.elm.test_directory);
installAllPackages(project.configurations.elm.dependencies.collect());
}

def createSourceDirectory(String src_dir){
Expand All @@ -24,8 +25,22 @@ class ElmProjectSetup extends BaseTask{
}

def createMainSourceModule(String mainModule){
/* File file = new File("src/main/repository/Main.elm")
println("************"+file.getPath());
println("************"+file.getAbsolutePath());
println("************"+file.getCanonicalPath());
def reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));*/
if(! new File(mainModule) != null )
{
new File(mainModule).createNewFile();
/* File mainM = new File(mainModule);
def writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(mainM)));
def line;
while((line = reader.readLine()) != null ){
writer.writeLine(line);
}*/
}
}

def createTestDirectory(String test_dir){
Expand All @@ -34,25 +49,5 @@ class ElmProjectSetup extends BaseTask{
new File(test_dir).mkdirs()
}

def installAllPackages(List<Dependency> elmPackages){
installPackage("");
elmPackages.each {
installPackage(it.group+"/"+it.name);
}
}

def installPackage(String elmPackage){
final List<String> pkg_install_cmd = Arrays.asList("elm","package","install",elmPackage,"--yes");
ProcessBuilder pBuilder = new ProcessBuilder(pkg_install_cmd);
pBuilder.redirectErrorStream(true);
Process process = pBuilder.start();

def line
def reader = new BufferedReader(new InputStreamReader(process.getInputStream()))

while((line = reader.readLine()) != null ){
println(line);
}
}

}
27 changes: 27 additions & 0 deletions src/main/groovy/com/zeroplay/elm/tasks/ElmReactorTask.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.zeroplay.elm.tasks

import org.gradle.api.tasks.TaskAction

/**
* Created by kirankumarbs on 9/26/2016.
*/
class ElmReactorTask {

@TaskAction
def setUp(){
startElmReactor();
}

def startElmReactor(){
ProcessBuilder pBuilder = new ProcessBuilder(Arrays.asList("elm","reactor","install",elmPackage,"--yes"));
pBuilder.redirectErrorStream(true);

//remove this line also
def line
def reader = new BufferedReader(new InputStreamReader(pBuilder.start().getInputStream()))

while((line = reader.readLine()) != null ){
println(line);
}
}
}

0 comments on commit bc8c7ed

Please sign in to comment.