* Fixes the screenshot functions deploying by properly resolving the path to the Firebase CLI binary.
* Also cleans up the script to be aligned with the dashboard deployment script.
* Removes firebase-tools as dependency from the dashboard since it's not used there anymore
* Updates the dashboard and screenshot deploy script to exit the process immediately if the Firebase token is not set.
* Fixes that the error message of the dashboard still shows the old name of the token variable
* Renames the screenshot variables to follow the dashboard environment variables
* Explicitly specifies the project that will be uploaded in the screenshot deploy script (same as for dashboard)
Currently every deployment runs in a single Travis job concurrently. This messes up the logs and it's also hard to see what actually runs at all.
The different deployment jobs should run concurrently in the deploy build stage.
* instead of using a complex RegExp that will likely break at some point in the future, we are switching to a single-line NodeJS script to resolve the version.
Currently whenever something fails in the deploy script it will likely not cause the CI to show the failure. This is because Bash by default doesn't exit the process with the proper error code.
* Currently the `0.0.0-PLACEHOLDER` is still inside of the `package.json` of the material2-builds. Similar as for every other Angular package the version placeholder should be replaced with the version of the current "build commit".
Closes#5320
* The logfile output should be printed if the tunnel connection can't be established. The logging is also useful to see the update message from Saucelabs for example.
* Updates the version of Sauce Connect to avoid potential flakes within the Saucelabs tunnels
* Fixes the invalid path for the `deploy-dashboard` script that runs in the deploy build stage
* build: move inline resources script to tools
* Moves the inline resources script to the `tools/gulp/packaging` folder. This is necessary when exposing the build tools (e.g for flex-layout)
* This also makes the packaging more clean because no external script is referenced (also switched to TypeScript and improved code)
* Address comments
* Update comment
* build: add dashboard firebase functions
* Adds a new folder for the dashboard project that for now only contains firebase functions.
* The firebase functions will be used to securely make API calls to the Github API (e.g payload status)
* Functions will be automatically deployed as same as screenshot functions.
* Address feedback
* Suppresses normal log messages from Saucelabs Conect. Error messages will still show up (In a follow-up PR the normal stdout will be printed together with the stdout on CI failures)
* No longer suppresses the whole Browserstack Tunnel execution. Stderr output will be printed if present. (In a follow-up stdout will be printed as well on CI failures)
* Switches to best-practice variable referencing in Bash
* build: move server rendering to dist
* Verifying that Material works with `platform-server` now happens in the `dist/` folder (instead of the src/ folder)
* Adds a gulp task to build the universal application. In the future serving the app will be also part of this
* Address comments
* build: move release packages to constants
* Moves the list of packages that should be released to the constants file.
* Sets the executable bit flag on the `deploy-screenshot-functions.sh` script
* Rename constants to build config
For the publish artifacts script the CDK release output didn't build. The CDK release output is necessary since it will be also published to cdk-builds.
This adds a new task for Travis CI to prerender an app using
@angular/material. This change starts off by only adding buttons to the
application; more components will be added in a subsequent PR so that
this one stays focused on the set-up.
Currently the CI traces everything that runs inside of the bash script.
This might have been useful when creating the script but now it really pollutes the CI output which should be clean and structured.
Disabling tracing for the build and test script because the errors will still show up and the CI will look more clean.
When testing against closure, RxJS will be re-compiled to target ES2015 modules.
The RxJS tsconfig file takes all `@types` that are installed and due to a recent update of the gulp types, building RxJS fails now.
* build: use shared logic to build packages
* No longer creates the whole set of gulp tasks just to build a single package.
* Makes the package building & releasing more consistent. No extra `build:release` just for the `lib` package.
References #4108
* Address feedback
* Removes two unused bash scripts (`copy-docs.sh`, `enact-release.sh`).
* `enact-release.sh` is now part of the release gulp task.
* `copy-docs.sh` is now part of the `docs` gulp task.
* Due to the TSConfig file renaming in #3791 and the fact that they were merged at the same time, the path in the closure-compiler script is now invalid.
* build: run closure-compiler
* Adds a script that runs the closure-compiler against the devapp / demo-app.
* The script will run on the CI as a new mode. Ensuring that all our components are closure-compatible.
Fixes#1206.
* Address feedback
Set up firebase functions to copy valid data to firebase storage/database
Use JasonWebToken to validate data written to firebase
Github Status change will be done in another PR
Result at: https://material2-screenshots.firebaseapp.com/3628
* Saucelabs seems to have issues with Edge and the `karma-coverage` plugin.
* Running on Browserstack seems to be work without any flakiness and also makes the build faster (runs less browsers than on saucelabs)