csantanapr closed pull request #11: Switch to Maven based dependency URL: https://github.com/apache/incubator-openwhisk-runtime-java/pull/11
This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): diff --git a/README.md b/README.md index acd4175..81c151e 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -#Apache OpenWhisk runtimes for java +# Apache OpenWhisk runtimes for java + [](https://travis-ci.org/apache/incubator-openwhisk-runtime-java) @@ -49,6 +50,37 @@ ln -s ${ROOTDIR}/ansible/environments/local ${OPENWHISK_HOME}/ansible/environmen wskdev fresh -t local-java ``` +### Testing +Install dependencies from the root directory on $OPENWHISK_HOME repository +``` +./gradlew :common:scala:install :core:controller:install :core:invoker:install :tests:install +``` + +Using gradle for the ActionContainer tests you need to use a proxy if running on Mac, if Linux then don't use proxy options +You can pass the flags `-Dhttp.proxyHost=localhost -Dhttp.proxyPort=3128` directly in gradle command. +Or save in your `$HOME/.gradle/gradle.properties` +``` +systemProp.http.proxyHost=localhost +systemProp.http.proxyPort=3128 +``` +Using gradle to run all tests +``` +./gradlew :tests:test +``` +Using gradle to run some tests +``` +./gradlew :tests:test --tests *ActionContainerTests* +``` +Using IntelliJ: +- Import project as gradle project. +- Make sure working directory is root of the project/repo +- Add the following Java VM properties in ScalaTests Run Configuration, easiest is to change the Defaults for all ScalaTests to use this VM properties +``` +-Dhttp.proxyHost=localhost +-Dhttp.proxyPort=3128 +``` + +#### Using container image to test To use as docker action push to your own dockerhub account ``` docker tag whisk/java8action $user_prefix/java8action diff --git a/ansible/environments/local/group_vars/all b/ansible/environments/local/group_vars/all index 79d0580..ce84e87 100755 --- a/ansible/environments/local/group_vars/all +++ b/ansible/environments/local/group_vars/all @@ -1,9 +1,11 @@ whisk_version_name: local -config_root_dir: /tmp/wskconf -whisk_logs_dir: /tmp/wsklogs +openwhisk_tmp_dir: "{{ lookup('env', 'OPENWHISK_TMP_DIR')|default('/tmp', true) }}" +config_root_dir: "{{ openwhisk_tmp_dir }}/wskconf" +whisk_logs_dir: "{{ openwhisk_tmp_dir }}/wsklogs" docker_registry: "" docker_dns: "" -bypass_pull_for_local_images: true +runtimes_bypass_pull_for_local_images: true +invoker_use_runc: "{{ ansible_distribution != 'MacOSX' }}" db_prefix: whisk_local_ @@ -22,14 +24,6 @@ apigw_host_v2: "http://{{ groups['apigateway']|first }}:{{apigateway.port.api}}/ invoker_allow_multiple_instances: true -# Set kafka configuration -kafka_heap: '512m' -kafka_topics_completed_retentionBytes: 104857600 -kafka_topics_completed_retentionMS: 300000 -kafka_topics_health_retentionBytes: 104857600 -kafka_topics_health_retentionMS: 300000 -kafka_topics_invoker_retentionBytes: 104857600 -kafka_topics_invoker_retentionMS: 300000 env_hosts_dir: "{{ playbook_dir }}/environments/local" diff --git a/settings.gradle b/settings.gradle index 47819fb..c8ed5a3 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,22 +1,13 @@ -def owPath = System.getenv("OPENWHISK_HOME") ?: '../open' -def owDirectory = new File(owPath) - -if (!owDirectory.exists()) { - throw new GradleScriptException("Environment variable OPENWHISK_HOME must point to a valid OpenWhisk build", null) -} - - -include 'common:scala'; project(':common:scala').projectDir = new File(owDirectory, 'common/scala') -include 'core:controller'; project(':core:controller').projectDir = new File(owDirectory, 'core/controller') -include 'core:invoker'; project(':core:invoker').projectDir = new File(owDirectory, 'core/invoker') -include 'whisktests'; project(':whisktests').projectDir = new File(owDirectory, 'tests') - include 'tests' include 'core:javaAction' rootProject.name = 'runtime-java' +gradle.ext.openwhisk = [ + version: '1.0.0-SNAPSHOT' +] + gradle.ext.scala = [ version: '2.11.8', compileFlags: ['-feature', '-unchecked', '-deprecation', '-Xfatal-warnings', '-Ywarn-unused-import'] diff --git a/tests/build.gradle b/tests/build.gradle index 124229c..3b60d6c 100644 --- a/tests/build.gradle +++ b/tests/build.gradle @@ -2,10 +2,9 @@ apply plugin: 'scala' apply plugin: 'eclipse' compileTestScala.options.encoding = 'UTF-8' -evaluationDependsOn(':whisktests') - repositories { mavenCentral() + mavenLocal() } tasks.withType(Test) { @@ -19,8 +18,8 @@ tasks.withType(Test) { dependencies { compile "org.scala-lang:scala-library:${gradle.scala.version}" - compile project(':whisktests') - compile project(':whisktests').sourceSets.test.output + compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:tests" + compile "org.apache.openwhisk:openwhisk-tests:${gradle.openwhisk.version}:test-sources" } tasks.withType(ScalaCompile) { diff --git a/tools/travis/build.sh b/tools/travis/build.sh index 24ec430..4852bdd 100755 --- a/tools/travis/build.sh +++ b/tools/travis/build.sh @@ -11,13 +11,6 @@ export OPENWHISK_HOME=$WHISKDIR IMAGE_PREFIX="testing" -# Build runtime -cd $ROOTDIR -TERM=dumb ./gradlew \ -distDocker \ --PdockerImagePrefix=${IMAGE_PREFIX} - - # Build OpenWhisk cd $WHISKDIR @@ -28,3 +21,15 @@ docker pull openwhisk/invoker docker tag openwhisk/invoker ${IMAGE_PREFIX}/invoker docker pull openwhisk/nodejs6action docker tag openwhisk/nodejs6action ${IMAGE_PREFIX}/nodejs6action + +TERM=dumb ./gradlew \ +:common:scala:install \ +:core:controller:install \ +:core:invoker:install \ +:tests:install + +# Build runtime +cd $ROOTDIR +TERM=dumb ./gradlew \ +distDocker \ +-PdockerImagePrefix=${IMAGE_PREFIX} ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
