93 строки
3.7 KiB
Markdown
93 строки
3.7 KiB
Markdown
# Firefox Accounts Content Server
|
|
|
|
[![Build Status: Travis](https://travis-ci.org/mozilla/fxa-content-server.svg?branch=master)](https://travis-ci.org/mozilla/fxa-content-server)
|
|
[![Build Status: Circle CI](https://circleci.com/gh/mozilla/fxa-content-server.svg?style=shield)](https://circleci.com/gh/mozilla/fxa-content-server)
|
|
[![Coverage Status](https://img.shields.io/coveralls/mozilla/fxa-content-server.svg)](https://coveralls.io/r/mozilla/fxa-content-server)
|
|
|
|
Static server that hosts [Firefox Account sign up](https://accounts.firefox.com), sign in, email verification, etc. flows.
|
|
|
|
* [Quick Start](#quick-start)
|
|
* [Development Notes](#development-notes)
|
|
* [Changes to Stylesheets](#changes-to-stylesheets)
|
|
* [Changes to Scripts and Templates](#changes-to-scripts-and-templates)
|
|
* [Testing](#testing)
|
|
* [Prerequisites](#prerequisites)
|
|
* [Setup](#setup)
|
|
* [Grunt Commands](#grunt-commands)
|
|
* [Servers](#servers)
|
|
* [License](#license)
|
|
|
|
## Quick Start
|
|
|
|
Clone the repository, make sure you have [required prerequisites](https://github.com/mozilla/fxa-local-dev#dependencies) installed.
|
|
Run `npm install` and `npm run start-remote`.
|
|
This will start a local fxa-content-server on [http://127.0.0.1:3030](http://127.0.0.1:3030) that works with remote Firefox Accounts servers.
|
|
|
|
If you want to install all Firefox Accounts servers locally follow the instructions on:
|
|
[fxa-local-dev](https://github.com/mozilla/fxa-local-dev) to get a full development setup running.
|
|
Please note that fxa-local-dev is the preferred way of contributing to Firefox Accounts.
|
|
|
|
## Development Notes
|
|
|
|
### Changes to stylesheets
|
|
|
|
To have the css resources automatically rebuilt after changes, run `grunt sass watch`.
|
|
Now whenever a change is made to the `.scss` files, the corresponding css resources will be rebuilt.
|
|
|
|
### Changes to scripts and templates
|
|
|
|
Any changes made to the scripts or the template files will automatically be reflected on page refresh.
|
|
|
|
## Testing
|
|
|
|
### Prerequisites
|
|
|
|
* Java JDK or JRE (http://www.oracle.com/technetwork/java/javase/downloads/index.html)
|
|
|
|
### Setup
|
|
|
|
To run tests locally with Selenium:
|
|
|
|
```sh
|
|
npm test
|
|
```
|
|
|
|
To change the default auth server edit `server/config/*.json` on your deployed instance.
|
|
|
|
```json
|
|
{
|
|
"fxaccount_url": "http://your.auth.server.here.org"
|
|
}
|
|
```
|
|
|
|
**Note that testing with Selenium via Docker does *not* work at present, so all testing must be carried out via your normal operating system's npm & Java tooling.**
|
|
|
|
## Grunt Commands
|
|
|
|
[Grunt](http://gruntjs.com/) is used to run common tasks to build, test, and run local servers.
|
|
|
|
| TASK | DESCRIPTION |
|
|
|------|-------------|
|
|
| `grunt build` | build production resources. See [task source](grunttasks/build.js) for more documentation |
|
|
| `grunt clean` | remove any built production resources. |
|
|
| `grunt lint` | run ESLint, Sass-lint, amdcheck and JSONLint on client side and testing JavaScript. |
|
|
| `grunt sass watch` | rebuild css resources automatically when changes are made to the `.scss` files (file needs to be saved). |
|
|
| `grunt server` | run a local server running on port 3030 with development resources. |
|
|
| `grunt server:dist` | run a local server running on port 3030 with production resources. Production resources will be built as part of the task. |
|
|
| `grunt test` | run local Intern tests. |
|
|
| `grunt version` | stamp a new minor version. Updates the version number and creates a new CHANGELOG.md. |
|
|
| `grunt version:patch` | stamp a new patch version. Updates the version number and creates a new CHANGELOG.md. |
|
|
|
|
## Servers
|
|
|
|
* latest development - https://latest.dev.lcip.org/
|
|
* content - https://content.dev.lcip.org/
|
|
* stable - https://stable.dev.lcip.org/
|
|
* stage - https://accounts.stage.mozaws.net/
|
|
* production - https://accounts.firefox.com/
|
|
|
|
## License
|
|
|
|
MPL 2.0
|
|
|