* Since we going to move from Travis to CircleCI we don't want to use the dashboard anymore. Since nobody has been
looking at the dashboard frequently, it just makes things more complicated and additionally we will be using
the Github robot in order to keep track of size changes.
Currently the docs-content output will be overwritten each time a Travis job runs in another branch (e.g. `master`, `6.4.x`, `6.x`). This is because the given branches cannot be created in the `material2-docs-content´ repository.
This is not good because if we want to release a new patch version, we have no way to properly pull the docs-content data that matches the given new version. Meaning that the docs-content and the `@angular/material-examples` package might be already updated for the next `major` version and we run into runtime exceptions due to the breaking changes.
Build artifacts will be published differently for different branches. For example, commits in `master` will be published on the `master` branch on the `*-builds` repository. `5.2.x` commits will be published on the `5.2.x` branch on the `*-builds` repository.
Tags on the build repositories will be explicit to indicate from what branch they come. The version placeholders (in the build output) will be similar as before, and won't contain any information about the branch. e.g. `5.2.x-5.2.1-43s435s` will look bad.
* Adds more logging messages to the publish artifacts script (better debugging)
* Updates the `find` command for the version `sed` call to no longer match files inside of the `.git/` directory (might lead to a broken .git/ setup)
Currently the publish-artifacts script checks for the tag in the local repository copy. Since the builds repository will be cloned with a depth of `1`, the tags aren't being checked properly.
To be more sure about the tag existence, the `git ls-remote` command can be used.
* Currently the screenshot tool application is not built in the deploy script. This causes Firebase to throw an error because the target directory does not exist.
* Currently only the screenshot functions are deployed, but not he screenshot application. With this change the application will be also deployed on Travis Push builds.
The deploy script for the screenshot-test tool right now references a incorrect directory. This means that the screenshot-test tool can't be uploaded for push builds right now.
Recently the version placeholders had been replaced with hardcoded versions because it was necessary to be able to release the CDK.
But now the version placeholders are replaced in every file and therefore they can be used instead of the hardcoded values.
* 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)
* 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
* 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: 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