chromium-dashboard/README.md

122 строки
4.0 KiB
Markdown
Исходник Обычный вид История

2015-08-03 19:59:03 +03:00
Chrome Platform Status
2013-03-07 22:18:10 +04:00
==================
2018-02-27 09:28:59 +03:00
[![Lighthouse score: 100/100](https://lighthouse-badge.appspot.com/?score=100&category=PWA)](https://github.com/ebidel/lighthouse-badge)
2018-02-01 01:04:17 +03:00
[chromestatus.com](http://chromestatus.com/)
2015-10-14 01:13:53 +03:00
### Get the code
git clone https://github.com/GoogleChrome/chromium-dashboard
2015-10-14 01:13:53 +03:00
2015-11-17 20:11:51 +03:00
### Installation
2019-05-22 21:51:38 +03:00
1. Install global CLIs
1. [Google App Engine SDK for Python](https://developers.google.com/appengine/downloads#Google_App_Engine_SDK_for_Python).
1. pip, node, npm.
1. Gulp `npm install -g gulp`
1. Install npm dependencies `npm ci`
1. Install other dependencies `npm run deps` and `npm run dev-deps`
2019-05-22 21:13:09 +03:00
If you face any error during the installation process, the section **Notes** (later in this README.md) may help.
2018-07-17 21:16:04 +03:00
##### Add env_vars.yaml
Create a file named `env_vars.yaml` in the root directory and fill it with:
```yaml
env_variables:
DJANGO_SETTINGS_MODULE: 'settings'
DJANGO_SECRET: 'this-is-a-secret'
```
2018-07-17 21:16:04 +03:00
2019-05-22 21:51:38 +03:00
### Developing
To start the main server and the notifier backend, run:
```bash
npm start
```
Then visit `http://localhost:8080/`.
2019-05-22 21:51:38 +03:00
2019-06-27 23:52:25 +03:00
To start front end code watching (sass, js lint check, babel, minify files), run
2019-05-22 21:51:38 +03:00
```bash
npm run watch
```
To run lint & lit-analyzer:
```bash
npm run lint
```
To run unit tests:
```bash
npm run test
```
Note: featurelist is temporarily excluded because lit-analyzer throws `Maximum call stack size exceeded`.
2019-05-22 21:51:38 +03:00
There are some developing information in developer-documentation.md.
**Notes**
- If you get an error saying `No module named protobuf` or `No module named six` or `No module named enum` , try installing them locally with `pip install six enum34 protobuf`.
- When installing the GAE SDK, make sure to get the version for python 2.7. It is no longer the default version.
- When running `npm start` you may get an ImportError for jinja2.tests. This was caused by an over-general line in skip_files.yaml. Pulling the latest source code should resolve the problem.
2016-07-11 21:37:51 +03:00
#### Blink components
Chromestatus gets the list of Blink components from a separate [app running on Firebase](https://blinkcomponents-b48b5.firebaseapp.com/blinkcomponents). See [source](https://github.com/ebidel/blink-components).
#### Seed the blink component owners
Visit http://localhost:8080/admin/blink/populate_blink to see the list of Blink component owners.
2016-07-11 21:37:51 +03:00
#### Debugging / settings
[`settings.py`](https://github.com/GoogleChrome/chromium-dashboard/blob/master/settings.py) contains a list
of globals for debugging and running the site locally.
2016-07-08 22:41:10 +03:00
### Deploying
2021-02-25 00:16:30 +03:00
If you have uncommited local changes, the appengine version name will end with `-tainted`.
It is OK to test on staging with tainted versions, but everything should be committed
(and thus not tainted) before staging a version that can later be pushed to prod.
2016-07-08 22:41:10 +03:00
2021-02-25 00:16:30 +03:00
**Note** you need to have admin privileges on the `cr-status-staging` and `cr-status`
cloud projects to be able to deploy the site.
2016-07-08 22:41:10 +03:00
2021-02-25 00:16:30 +03:00
Run the npm target:
2016-07-08 22:41:10 +03:00
2021-02-25 00:16:30 +03:00
npm run staging
2016-07-08 22:41:10 +03:00
2021-02-25 00:16:30 +03:00
Open the [Google Developer
Console for the staging site](https://console.cloud.google.com/appengine/versions?project=cr-status-staging)
and flip to the new version by selecting from the list and clicking *MIGRATE TRAFFIC*. Make sure to do this for both the 'default' service as well as for the 'notifier' service.
2016-07-08 22:41:10 +03:00
Each deployment also uploads the same code to a version named `rc` for "Release candidate". This is the only version that you can test using Google Sign-In at `https://rc-dot-cr-status-staging.appspot.com`.
2021-02-25 00:16:30 +03:00
If manual testing on the staging server looks good, then repeat the same steps to deploy to prod:
npm run deploy
Open the [Google Developer
Console for the production site](https://console.cloud.google.com/appengine/versions?project=cr-status)
The production site should only have versions that match versions on staging.
2013-03-29 22:11:54 +04:00
### LICENSE
2017-02-16 02:05:51 +03:00
Copyright (c) 2013-2016 Google Inc. All rights reserved.
2013-03-29 22:14:00 +04:00
2016-07-08 23:37:44 +03:00
Apache2 License.
2014-01-02 23:47:39 +04:00
[![Analytics](https://ga-beacon.appspot.com/UA-39048143-2/GoogleChrome/chromium-dashboard/README)](https://github.com/igrigorik/ga-beacon)