----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/61864/ -----------------------------------------------------------
(Updated Aug. 24, 2017, 9:04 p.m.) Review request for Aurora, Joshua Cohen, Kai Huang, Santhosh Kumar Shanmugham, and Stephan Erb. Changes ------- * Remove unused Google Font. * Remove reference to jest. Repository: aurora Description ------- Bootstrap the build pipeline for new Preact UI. Obviously due to the disappointing decision by Facebook to keep their PATENTS clause, we can no longer use React or jest or any of the other Facebook OSS projects. Thankfully Preact has a compatibility layer that mostly hides this (see code), so it's really only jest (which is so much simpler than Karma) that is missed here. Right now we only insert a "Hello, World" message under a new path in the Scheduler. The goal here is to verify that this works in the Apache infrastructure, and that people can download the patch and confirm their local development environment is built correctly by gradle. Will be particularly useful if you don't have any of the modern Node/UI stack installed, because the idea is that Gradle will do it all for you. Note: this will add time, perhaps significant time, to the Scheduler build process the first time it sets up the environment. I've made sure to set up input/output directories in Gradle to make sure the UP-TO-DATE mechanism is respected and the work isn't repeated. The following tasks become available: ./gradlew ui:install (runs npm install and fetches 3rd party JS dependencies) ./gradlew ui:webpack (the main build step - performed by webpack) ./gradlew ui:test (runs Karma-Jasmine-Webpack-Chai powered test suite) ./gradlew ui:lint (runs eslint on the source code) And all of these are now performed as part of the root ./gradlew build step. This also maintains feature parity with ./gradlew processResources --continuous. This is the first time I've ever really had to do significant changes to our Gradle build, so any feedback on my changes there are particularly appreciated. Diffs (updated) ----- .gitignore b4e2bcbef6fdb1c049acda7c4fda4bd47988bea2 build.gradle c2c402f3ed0043b1e9befb6f9c4423649ee5c105 settings.gradle b097e2fd958fa0ce6076fc104eb3890c4029295d src/main/java/org/apache/aurora/scheduler/http/JettyServerModule.java f7e72e77e50680d937d727cb4c0eb8940aabf03b src/main/resources/scheduler/assets/scheduler/new-index.html PRE-CREATION ui/.babelrc PRE-CREATION ui/.eslintrc PRE-CREATION ui/karma.conf.js PRE-CREATION ui/package.json PRE-CREATION ui/src/main/js/components/Home.js PRE-CREATION ui/src/main/js/components/__tests__/Home-test.js PRE-CREATION ui/src/main/js/index.js PRE-CREATION ui/webpack.config.js PRE-CREATION Diff: https://reviews.apache.org/r/61864/diff/4/ Changes: https://reviews.apache.org/r/61864/diff/3-4/ Testing ------- The Scheduler is running in my Vagrant image with the Hello World message served under /beta. Thanks, David McLaughlin
