Commit Graph

176 Commits

Author SHA1 Message Date
Paul Gschwendtner 62f35dd67c build: move snapshot publish job to circleci (#13882)
Also switch to a single GitHub deploy token
2018-11-01 16:53:28 -07:00
Paul Gschwendtner 91d4c0f649 build: share release output between circle jobs (#13838)
Also support parallel Karma instances on CircleCI
2018-10-29 08:11:35 -07:00
Paul Gschwendtner b30ec56364 build: run browserstack on circleci (#13749) 2018-10-24 15:35:06 -07:00
Paul Gschwendtner 3ca3e39d59 build: update dgeni-packages version (#13772)
* Updates to the latest `dgeni-packages` version that includes: https://github.com/angular/dgeni-packages/commit/5d90fd9f31541f380a62a52fd31493b232b9585c. This allows us to remove a workaround.
* Removes the closure testing stuff that hasn't been used for months. In case we want to reintroduce testing w/ Google Closure, we should consider using Bazel or something (AFAIK there are Bazel rules for closure)
2018-10-23 12:00:11 -07:00
Paul Gschwendtner e4bf74a527 build: update saucelabs connect version (#13656) 2018-10-18 10:08:41 -07:00
Paul Gschwendtner 1ccd1eed92 build: fix cronjob snapshot jobs failing (#13595)
* Due to the fact that we modify the `package.json` in cronjobs without updating the actual lock-file, the `--frozen-lockfile` installation fails. In order to fix this, we should just re-install the dependencies after the general `yarn` installation.
2018-10-15 09:33:27 -07:00
Paul Gschwendtner b06a897b5b build: ensure dependencies are properly locked (#13482)
* Since we lock our dependencies in the `yarn.lock` file, we need to enforce that the lock file is in sync with the `package.json` file (similar as in angular/angular)
* Since we cache the dependenices & the yarn cache within Travis, it can happen that the node modules are stale (there is no checksum mechanism in Travis). In that case we need to purge the node modules and re-install.
2018-10-10 11:26:05 -07:00
Paul Gschwendtner da63c6f850 build: switch to yarn (#13362)
* build: switch to yarn

* Use more recent version of Yarn
2018-10-05 14:37:41 -07:00
vivian-hu a620fca9d8 Fix(script): schedule presubmit at same time and fix a typo in file name (#13418)
* fix(script): make the presubmit run at same time

* fix(script): fix typo in file name
2018-10-03 16:28:06 -07:00
Paul Gschwendtner 9d882a0119 build: do not e2e tests on saucelabs (#12700)
* No longer runs e2e tests inside of Saucelabs because Chrome is also installed on Travis CI and we should keep Saucelabs available for other browsers that don't run inside of Dockers or Travis.
2018-08-16 13:54:59 -07:00
Paul Gschwendtner 009f211e47 build: fix docs-content branch publish (#12690)
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.
2018-08-15 14:43:20 -07:00
Paul Gschwendtner 13c141ea3a build: update saucelabs tunnel (#12689)
* Updates the Saucelabs Connect Tunnel to the most recent version that seems to include a major bug fix that should improve tunnel stability
* Changes the CircleCI resource class to the `xlarge` (similar as in angular/angular). This should speed up the Bazel builds due to more CPU threads and more RAM.
2018-08-15 14:42:11 -07:00
Paul Gschwendtner 1f9df4c907 build: test against angular snapshots (#12600) 2018-08-13 06:53:03 -07:00
Paul Gschwendtner e09ec343ef build: fix branch checkout for publish script (#12585) 2018-08-08 11:00:02 -07:00
Paul Gschwendtner 73f3f940b0 build: remove deprecated node-github api (#12420)
Switches to the newer version of `node-github` that has been renamed to `@octokit/rest`.
2018-07-31 11:13:34 -07:00
Paul Gschwendtner f9b9e25d61 build: fix dashboard deployment (#12293) 2018-07-20 08:26:39 -07:00
Paul Gschwendtner afb0ee37eb chore: remove screenshot testing (#12155)
Removes the screenshot test tool since Angular Material is visually being tested inside of Google.
2018-07-11 08:24:21 -07:00
Paul Gschwendtner fdd70823cf build: fix small browser test coverage (#11970)
* No longer just runs the tests against the first browser of a test platform (travis, saucelabs, browserstack)
* Stability is more valuable than speed (runs sequentially on CI now)
* Update Saucelabs Connect
* Remove unused spec reporter
* Update from Edge 14 to Edge 17
* Fix pixel deviations in Edge 17
2018-07-11 08:18:32 -07:00
Jeremy Elbourn 8acd5a156e build(bazel): add flatModuleIndexRedirect to material package (#10788) 2018-04-11 10:35:06 -07:00
Jeremy Elbourn 4211b39669 build(bazel): create script to run on top of ng_package output (#10776)
* build(bazel): create script to run on top of ng_package output

* Use bazel query to get targets and use ng_package replacements attr
2018-04-09 17:19:28 -07:00
Paul Gschwendtner 514fa91418 build: publish docs-content based on branch (#10020) 2018-02-21 09:48:53 -08:00
Paul Gschwendtner d84612eac7 build: conditional travis build stages (#9949)
No longer runs the build artifacts, docs-content, dashboard, screenshot deployment tasks on Pull Requests. This means that there aren't any noop jobs running anymore
2018-02-14 10:01:35 -08:00
Paul Gschwendtner ab930cf87b build: publish artifacts based on branch (#9919)
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.
2018-02-13 10:35:40 -08:00
Kristiyan Kostadinov 708b91a7c4 build: don't skip master build when only md files have changed (#9879)
Scopes the logic, that skips the build if only Markdown files, only to PR builds. This avoids issues where we merge in a lot of PRs to master, followed by a docs PR which ends up silencing potential build errors.
2018-02-13 07:52:19 -08:00
Paul Gschwendtner c3d7cd96de build: missing overview files in docs-content (#9100) 2017-12-22 12:04:56 -08:00
Jeremy Elbourn 5f5ff03806 chore: add script to generate presubmit scheduler script (#8581) 2017-12-20 10:33:49 -08:00
Paul Gschwendtner 898cded17a build(artifacts): sed should not update .git/ files (#8938)
* 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)
2017-12-14 15:31:38 -08:00
Paul Gschwendtner 426f11fb13 chore: better tag check in publish-artifacts script (#8852)
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.
2017-12-06 15:40:56 -08:00
Paul Gschwendtner 826394bba9 build: skip artifact publish if tag already exists (#8720)
* No longer errors the deployment if the artifacts have been published already. (e.g. Job restart)
2017-12-06 12:57:32 -08:00
Austin e055b9f13c docs: convert demos to stackblitz (#8546) 2017-11-21 09:01:05 -08:00
Paul Gschwendtner 86b375d0a8 build: update sauce connect (#8438)
Manually updates SauceConnect to v4.4.10
2017-11-14 11:22:41 -08:00
Kristiyan Kostadinov dfe8091d95 feat: angular 5 support (#6018) 2017-11-01 11:03:57 -07:00
Paul Gschwendtner 34306ad0f9 ci: skip more tasks if only markdown files changed (#8096)
* No longer just skips the unit test and e2e tasks if only markdown files changed. Now everything will be skipped, since there is nothing that tests against the `.md` files.
* Prints messages for the deploy tasks that run inside of Pull Requests but end up in a NOOP.
2017-10-30 14:33:13 -07:00
Kristiyan Kostadinov 0ea43700ef refactor: switch to HttpClient (#6702)
Refactors all of the usages of the deprecated `Http` by replacing them with the `HttpClient`.

BREAKING CHANGE: Material now requires `@angular/common` instead of `@angular/http` and uses `HttpClient` instead of `Http`.
2017-10-24 10:42:35 -07:00
Paul Gschwendtner 94584dbc56 build: deploy dashboard, screenshot-tool in cronjob (#7618)
* No longer deploy the dashboard and screenshot-tool per commit.
2017-10-10 16:38:53 -07:00
Paul Gschwendtner 606178be0a build(): retries for travis deploying (#7146)
* Now re-runs the given deploy mode a second time if failed the first time. This ensure that deployment works fine most of the time and should also avoid conflicts between different Travis CI jobs that are deplyoing at the same time.
2017-09-29 13:23:52 -07:00
Jeremy Elbourn 1cb8907a66 build: create JS bundles for each component (#6998)
Before this change, all of `@angular/material` was bundled into a
single, flat JS file.

After this change, each top-level component (i.e., each directory under
`src/lib`) will be have its own JS file (and d.ts and metadata.json).

The benefit of this change is that current versions of webpack will be
able to do a much better job of only including the code an app is using.

It also allows (but does not require) people to explicitly import from specific components,
e.g.
```
import {MdButtonModule} from '@angular/material/button';
``

For development _within Angular Material itself_ we have to use these
deeper imports because the root `@angular/material` doesn't exist until
we build the relase package.

Additionally, this PR adds a `tsconfig.json` for each dir under `src/`
with the correct path mappings for that directory, so that IDEs will
correctly generate imports.

Closure Compiler CI check is also disabled by this PR; it cannot work
with the new package structure until a release with
https://github.com/google/closure-compiler/pull/2600 is made available.
2017-09-14 15:15:17 -07:00
mmalerba 9545427c73 feat(datepicker): Add Moment.js adapter (#6860)
* create moment adapter

* add Moment to karma.conf.js

* use MAT_DATE_LOCALE

* tests are now running

* add in tests

* WIP: demo

* add synthetic default imports for moment

* add locale switching to demo

* fix moment import issues with tests

* fix aot

* address comments

* fix closure issue

* add additional explanation of rollup issue

* remove moment adapter demo since it is preventing sync into g3 (will add
back as a docs example in future PR).

* fix bad rebase
2017-09-12 13:24:23 -07:00
Paul Gschwendtner a727f970cd build: snapshot builds for moment-adapter (#6823)
* Publishes the artifacts of the material-moment-adapter on a per-commit basis.
2017-09-11 16:27:46 -07:00
Paul Gschwendtner 2ef6382bae build: stop building rxjs for closure compiler test (#6635)
For every Pull Request, a job that runs the Google Closure Compiler against the demo-app will be started. In the past Closure Compiler wasn't able to properly handle CommonJS packages from the node modules.

Now the Google Closure Compiler will be reconfigured to properly handle CommonJS packages (meaning that RxJS no longer needs to be built manually)
2017-08-28 16:28:50 -07:00
Paul Gschwendtner 844a81c248 build: shorter wait delay for tunnels (#6607) 2017-08-23 11:30:49 -07:00
Paul Gschwendtner 4cff5ce892 build: update saucelabs connector (#6609) 2017-08-23 11:08:07 -07:00
Jeremy Elbourn 4d82f833c7 feat(cdk): move overlay into cdk (#6100) 2017-08-11 15:42:36 -07:00
Paul Gschwendtner fc98a1d0cf build: move changelog script to gulp task (#5472)
* Moves the changelog script to a gulp task that includes better instructions and error reporting.
2017-08-08 23:18:38 -07:00
Paul Gschwendtner 333ec80750 build: fix screenshot tool deployment (#6337)
* 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.
2017-08-08 13:26:33 -07:00
Paul Gschwendtner 0680774fcd ci: shorter wait timeout for saucelabs and browserstack (#6317)
* Changes the wait timeout for Saucelabs and Browserstack from 2 minutes to 1 minute. This is possible now because if the timeout fails we still re-try to create a connection a second time.
2017-08-07 10:24:09 -07:00
Paul Gschwendtner 3944d70435 build: deploy screenshot app for push builds (#6299)
* 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.
2017-08-07 10:20:30 -07:00
Paul Gschwendtner 298bc031da ci: incorrect path to screenshot-test tool (#6275)
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.
2017-08-04 14:03:08 -07:00
Paul Gschwendtner ea6e829239 build: retry attemps for tunnel connections (#6246)
On the CI it happens pretty often that the tunnel connection to the different providers like Browserstack or Saucelabs is timing out.

Instead of always restarting manually, the script should automatically retry to run the connection establishing script.
2017-08-04 14:00:47 -07:00
Paul Gschwendtner 19614cda32 build(closure): detect cdk entry points from filesystem (#6144)
* The closure script now detects the CDK entry points from the filesystem. This is important to avoid hard-coding the CDK entry points multiple times in the project.
2017-07-31 11:24:35 -07:00