зеркало из https://github.com/mozilla/fxa.git
refactor(build): some random dev build changes
This commit is contained in:
Родитель
cd1494af0c
Коммит
3c3a888a84
|
@ -13,10 +13,6 @@ if grep -e "$MODULE" -e 'all' $DIR/../packages/test.list; then
|
|||
mkdir -p config
|
||||
cp $DIR/../packages/version.json config
|
||||
|
||||
if [ "${MODULE}" == "fxa-auth-server" ]; then
|
||||
"$DIR/../_scripts/clone-authdb.sh"
|
||||
fi
|
||||
|
||||
if [ "${MODULE}" == 'fxa-auth-server' ]; then
|
||||
cd ..
|
||||
docker build -f fxa-auth-server/Dockerfile-build -t ${MODULE}:build .
|
||||
|
|
|
@ -5,7 +5,10 @@ TEST=$2
|
|||
DIR=$(dirname "$0")
|
||||
|
||||
if grep -e "$MODULE" -e 'all' $DIR/../packages/test.list; then
|
||||
if [ "${MODULE}" == 'fxa-oauth-server' ]; then
|
||||
if [ "${MODULE}" == 'fxa-auth-server' ]; then
|
||||
docker build -f Dockerfile-test -t ${MODULE}:test ..
|
||||
docker run --net="host" ${MODULE}:test npm test
|
||||
elif [ "${MODULE}" == 'fxa-oauth-server' ]; then
|
||||
docker build -f Dockerfile-oauth-test -t ${MODULE}:test .
|
||||
docker run --net="host" -e DB="mysql" ${MODULE}:test npm run test-oauth
|
||||
elif [[ -e Dockerfile-test ]]; then
|
||||
|
|
27
README.md
27
README.md
|
@ -19,19 +19,20 @@ The Firefox Accounts (fxa) monorepo
|
|||
```sh
|
||||
cd fxa
|
||||
npm install
|
||||
npm start
|
||||
```
|
||||
|
||||
4. Visit [127.0.0.1:3030](http://127.0.0.1:3030/).
|
||||
|
||||
Use the [PM2 tool](https://github.com/Unitech/PM2#main-features) to stop and start the servers, and read server logs.
|
||||
|
||||
To start all servers with **mysql database**
|
||||
To start all servers:
|
||||
|
||||
- `./pm2 start mysql_servers.json`
|
||||
- `npm start`
|
||||
|
||||
The most common commands are:
|
||||
|
||||
- `./pm2 kill` **- stop all servers.**
|
||||
- `npm stop` **- stop all servers.**
|
||||
|
||||
- `./pm2 status` - display running servers.
|
||||
|
||||
|
@ -45,12 +46,6 @@ The most common commands are:
|
|||
|
||||
- More commands in the [PM2 Readme](https://github.com/Unitech/PM2#main-features).
|
||||
|
||||
When you want to [fetch the latest changes](_scripts/update_all.sh) to all servers:
|
||||
|
||||
```sh
|
||||
npm run update
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Contributing
|
||||
|
@ -61,12 +56,12 @@ See the separate [CONTRIBUTING.md](https://github.com/mozilla/fxa/blob/master/CO
|
|||
|
||||
> This is an example workflow for **fxa**.
|
||||
|
||||
After installing **fxa** the servers should automatically start up. Use `./pm2 status` command to check the status of the servers:
|
||||
After installing **fxa** run `npm start`. Use `./pm2 status` command to check the status of the servers:
|
||||
|
||||
![](http://i.imgur.com/eqL8FiZ.png)
|
||||
|
||||
To avoid wasting computer resources while not working on FxA make sure to stop the servers using `./pm2 kill`.
|
||||
Once you are back working on FxA just use the `./pm2 start servers.json` command to bring the servers back up. Keep in mind that the memory store will restart and all your database data will be brand new.
|
||||
To avoid wasting computer resources while not working on FxA make sure to stop the servers using `npm stop`.
|
||||
Once you are back working on FxA just use the `npm start` command to bring the servers back up. Keep in mind that the memory store will restart and all your database data will be brand new.
|
||||
|
||||
#### Verifying email and viewing logs
|
||||
|
||||
|
@ -194,7 +189,7 @@ npm install -g grunt-cli
|
|||
|
||||
### Firefox Custom Profile
|
||||
|
||||
**Use `npm start` to start Firefox with local server configurations.**
|
||||
**Use `npm run start-firefox` to start Firefox with local server configurations.**
|
||||
Available options:
|
||||
|
||||
- `FXA_ENV=local` or `latest` or `stable` or `stage` (NOTE: `local` is default).
|
||||
|
@ -239,7 +234,7 @@ adb reverse tcp:1111 tcp:1111 # Profile server
|
|||
adb reverse tcp:5000 tcp:5000 # Sync server
|
||||
```
|
||||
|
||||
Then run `./pm2 start servers.json` and get to work!
|
||||
Then run `npm start` and get to work!
|
||||
|
||||
---
|
||||
|
||||
|
@ -251,7 +246,7 @@ The pm2 scripts run the `latest` docker version of the email service by default.
|
|||
start making changes to the email service then do the following:
|
||||
|
||||
1. Stop the email-service using `./pm2 stop <email_service_id>`
|
||||
1. Build the service: `cd packages/fxa-email-service; cargo build --bin fxa_email_send; ../../_scripts/clone-authdb.sh`
|
||||
1. Build the service: `cd packages/fxa-email-service; cargo build --bin fxa_email_send`
|
||||
1. Run the service: `cd packages/fxa-email-service; ./scripts/run_send.sh`
|
||||
|
||||
### Firefox for Android
|
||||
|
@ -298,7 +293,7 @@ npm install maildev -g
|
|||
#### Run
|
||||
|
||||
```bash
|
||||
./pm2 start servers.json
|
||||
npm start
|
||||
./pm2 stop 'auth-server local mail helper'
|
||||
```
|
||||
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR=`dirname "$0"`
|
||||
DB_PACKAGE=fxa-auth-db-mysql
|
||||
DB_DIR="$SCRIPT_DIR/../packages/$DB_PACKAGE"
|
||||
|
||||
rm -rf "$DB_PACKAGE"
|
||||
cp -R "$DB_DIR" "$DB_PACKAGE"
|
||||
cd "$DB_PACKAGE"
|
||||
|
||||
npm ci > /dev/null 2>&1
|
||||
|
||||
if [ "$1" = "run" ]; then
|
||||
if [ "$2" = "local" ]; then
|
||||
DB_SCRIPT="bin/mem"
|
||||
else
|
||||
node bin/db_patcher > /dev/null
|
||||
DB_SCRIPT="bin/server"
|
||||
fi
|
||||
node "$DB_SCRIPT" > "../$DB_PACKAGE.log" 2>&1 &
|
||||
DB_PID=$!
|
||||
echo "$DB_PID"
|
||||
sleep 1
|
||||
fi
|
||||
|
||||
cd ..
|
|
@ -15,7 +15,7 @@ function on_sigint() {
|
|||
trap on_sigint INT
|
||||
|
||||
docker run --rm --name fxa_email_service \
|
||||
--network fxa-net \
|
||||
--network host \
|
||||
-e NODE_ENV=dev \
|
||||
-e FXA_EMAIL_ENV=dev \
|
||||
-e FXA_EMAIL_LOG_LEVEL=debug \
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
#!/bin/sh -ex
|
||||
_scripts/install_packages.sh
|
||||
|
||||
if [ "${SKIP_DOCKER}" = "true" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
_scripts/install_docker.sh
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
#!/bin/sh -ex
|
||||
docker network create fxa-net || true
|
||||
|
||||
docker pull memcached
|
||||
|
||||
|
|
|
@ -4,34 +4,5 @@ _scripts/check.sh
|
|||
# Set ulimit, need it for npm
|
||||
ulimit -S -n 2048 || echo "Setting ulimit failed"
|
||||
|
||||
# Install and Setup all the projects
|
||||
|
||||
cd packages
|
||||
|
||||
# Install and build fxa-shared first
|
||||
|
||||
cd fxa-shared
|
||||
npm ci
|
||||
cd ..
|
||||
|
||||
PATH=$PATH:$HOME/.cargo/bin
|
||||
|
||||
# Now for concurrently!
|
||||
../node_modules/.bin/concurrently \
|
||||
"cd fxa-content-server; npm ci; cp server/config/local.json-dist server/config/local.json" \
|
||||
"cd fxa-auth-server; npm ci; node ./scripts/gen_keys.js; NODE_ENV=dev ./scripts/oauth_gen_keys.js; node ./scripts/gen_vapid_keys.js; node ./fxa-oauth-server/scripts/gen_keys; ../../_scripts/clone-authdb.sh" \
|
||||
"cd fxa-auth-db-mysql; npm ci" \
|
||||
"cd browserid-verifier; npm ci" \
|
||||
"cd fxa-js-client; npm ci; npx grunt sjcl" \
|
||||
"cd fxa-customs-server; npm ci" \
|
||||
"cd fxa-event-broker; npm ci" \
|
||||
"cd fxa-payments-server; npm ci" \
|
||||
"cd fxa-profile-server; npm ci; mkdir -p var/public/" \
|
||||
"cd 123done; npm i" \
|
||||
"cd fortress; npm i" \
|
||||
"cd fxa-geodb; npm i" \
|
||||
"cd fxa-email-event-proxy; npm i" \
|
||||
"cd fxa-support-panel ; npm ci"
|
||||
|
||||
cd ..
|
||||
npm run npm-ci-all
|
||||
ln -sf node_modules/.bin/pm2 pm2
|
||||
|
|
|
@ -16,7 +16,7 @@ trap on_sigint INT
|
|||
|
||||
# Create pushbox db on start (because pushbox doesn't create it)
|
||||
docker run --rm --name=mydb \
|
||||
--network fxa-net \
|
||||
--network host \
|
||||
-e MYSQL_ALLOW_EMPTY_PASSWORD=true \
|
||||
-e MYSQL_ROOT_HOST=% \
|
||||
-e MYSQL_DATABASE=pushbox \
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
#!/bin/bash -ex
|
||||
. ../../../_scripts/check_mysql.sh
|
||||
|
||||
check_mysql
|
||||
mysqlStarted=$?
|
||||
|
||||
if [ "$mysqlStarted" ]; then
|
||||
node ./bin/server.js
|
||||
fi
|
|
@ -3,11 +3,5 @@
|
|||
if [ "${CIRCLECI}" = "true" ]; then
|
||||
exit 0
|
||||
else
|
||||
if [ "${SKIP_DOCKER}" = "true" ]; then
|
||||
_scripts/install_packages.sh
|
||||
exit 0
|
||||
fi
|
||||
_scripts/install_all.sh
|
||||
pm2 delete mysql_servers.json && pm2 start mysql_servers.json
|
||||
echo "Use './pm2 kill' to stop all the servers"
|
||||
fi
|
||||
|
|
|
@ -25,7 +25,7 @@ if [ "$mysqlStarted" ]; then
|
|||
trap on_singint INT
|
||||
|
||||
docker run --rm --name pushbox \
|
||||
--network fxa-net \
|
||||
--network host \
|
||||
-p 8002:8002 \
|
||||
-e ROCKET_PORT=8002 \
|
||||
-e ROCKET_SERVER_TOKEN=Correct_Horse_Battery_Staple_1 \
|
||||
|
|
|
@ -15,7 +15,7 @@ function on_singint() {
|
|||
trap on_singint INT
|
||||
|
||||
docker run --rm --name pushbox_db \
|
||||
--network fxa-net \
|
||||
--network host \
|
||||
-p 4306:3306 \
|
||||
-e MYSQL_ROOT_PASSWORD=random \
|
||||
-e MYSQL_DATABASE=pushbox \
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Update all projects
|
||||
|
||||
git pull
|
||||
|
||||
# Migration
|
||||
docker network create fxa-net || true # Don't error out in case the network already exists
|
||||
|
||||
docker pull mozilla/syncserver || echo "syncserver update failed"
|
|
@ -22,7 +22,8 @@
|
|||
},
|
||||
{
|
||||
"name": "auth-server key server PORT 9000",
|
||||
"script": "bin/key_server.js",
|
||||
"script": "npm",
|
||||
"args": ["start"],
|
||||
"cwd": "packages/fxa-auth-server",
|
||||
"env": {
|
||||
"DB": "mysql",
|
||||
|
|
|
@ -83,7 +83,8 @@
|
|||
},
|
||||
{
|
||||
"name": "auth-server key server PORT 9000",
|
||||
"script": "bin/key_server.js",
|
||||
"script": "npm",
|
||||
"args": ["start"],
|
||||
"cwd": "packages/fxa-auth-server",
|
||||
"env": {
|
||||
"DB": "mysql",
|
||||
|
|
|
@ -2518,91 +2518,6 @@
|
|||
"source-map": "^0.6.1"
|
||||
}
|
||||
},
|
||||
"concurrently": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/concurrently/-/concurrently-4.1.1.tgz",
|
||||
"integrity": "sha512-48+FE5RJ0qc8azwKv4keVQWlni1hZeSjcWr8shBelOBtBHcKj1aJFM9lHRiSc1x7lq416pkvsqfBMhSRja+Lhw==",
|
||||
"requires": {
|
||||
"chalk": "^2.4.1",
|
||||
"date-fns": "^1.23.0",
|
||||
"lodash": "^4.17.10",
|
||||
"read-pkg": "^4.0.1",
|
||||
"rxjs": "^6.3.3",
|
||||
"spawn-command": "^0.0.2-1",
|
||||
"supports-color": "^4.5.0",
|
||||
"tree-kill": "^1.1.0",
|
||||
"yargs": "^12.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"ansi-styles": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||
"requires": {
|
||||
"color-convert": "^1.9.0"
|
||||
}
|
||||
},
|
||||
"chalk": {
|
||||
"version": "2.4.2",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||
"requires": {
|
||||
"ansi-styles": "^3.2.1",
|
||||
"escape-string-regexp": "^1.0.5",
|
||||
"supports-color": "^5.3.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"supports-color": {
|
||||
"version": "5.5.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
|
||||
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
|
||||
"requires": {
|
||||
"has-flag": "^3.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"parse-json": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
|
||||
"integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
|
||||
"requires": {
|
||||
"error-ex": "^1.3.1",
|
||||
"json-parse-better-errors": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"pify": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
|
||||
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
|
||||
},
|
||||
"read-pkg": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-4.0.1.tgz",
|
||||
"integrity": "sha1-ljYlN48+HE1IyFhytabsfV0JMjc=",
|
||||
"requires": {
|
||||
"normalize-package-data": "^2.3.2",
|
||||
"parse-json": "^4.0.0",
|
||||
"pify": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "4.5.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz",
|
||||
"integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=",
|
||||
"requires": {
|
||||
"has-flag": "^2.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"has-flag": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz",
|
||||
"integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE="
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"config-chain": {
|
||||
"version": "1.1.12",
|
||||
"resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.12.tgz",
|
||||
|
@ -8793,11 +8708,6 @@
|
|||
"resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
|
||||
"integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM="
|
||||
},
|
||||
"spawn-command": {
|
||||
"version": "0.0.2-1",
|
||||
"resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz",
|
||||
"integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A="
|
||||
},
|
||||
"spdx-correct": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
|
||||
|
@ -9224,11 +9134,6 @@
|
|||
"punycode": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"tree-kill": {
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz",
|
||||
"integrity": "sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q=="
|
||||
},
|
||||
"trim-newlines": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
|
||||
|
|
|
@ -5,8 +5,9 @@
|
|||
"scripts": {
|
||||
"authors": "git shortlog -s | cut -c8- | sort -f > AUTHORS",
|
||||
"postinstall": "_scripts/postinstall.sh",
|
||||
"update": "pm2 kill && _scripts/update_all.sh",
|
||||
"start": "pm2 start mysql_servers.json",
|
||||
"npm-ci-all": "lerna exec --no-bail -- npm ci",
|
||||
"start": "pm2 start mysql_servers.json && echo \"Use 'npm stop' to stop all the servers\"",
|
||||
"stop": "pm2 kill",
|
||||
"start-firefox": "fxa-dev-launcher",
|
||||
"start-android": "node _scripts/start-android.js",
|
||||
"test": "lerna run test",
|
||||
|
@ -26,7 +27,6 @@
|
|||
"dependencies": {
|
||||
"adr-log": "^2.1.1",
|
||||
"chalk": "1.1.1",
|
||||
"concurrently": "^4.1.1",
|
||||
"diffparser": "^2.0.1",
|
||||
"fxa-dev-launcher": "github:vladikoff/fxa-dev-launcher",
|
||||
"hot-shots": "^6.4.1",
|
||||
|
|
|
@ -13,5 +13,4 @@ LICENSE
|
|||
Dockerfile*
|
||||
test/load/*
|
||||
test/scripts/test_output/*
|
||||
fxa-auth-db-mysql/*
|
||||
fxa-content-server-l10n/*
|
|
@ -1,6 +1,7 @@
|
|||
FROM fxa-auth-server:build
|
||||
|
||||
WORKDIR /app/fxa-auth-db-mysql
|
||||
COPY --chown=app:app ["fxa-auth-db-mysql", "../fxa-auth-db-mysql/"]
|
||||
WORKDIR /fxa-auth-db-mysql
|
||||
RUN npm ci
|
||||
|
||||
# install dev dependencies
|
||||
|
|
|
@ -12,16 +12,15 @@
|
|||
"bump-template-versions": "node scripts/template-version-bump",
|
||||
"lint:deps": "npm audit --json | audit-filter --nsp-config=.nsprc --audit=-",
|
||||
"postinstall": "scripts/download_l10n.sh",
|
||||
"start": "NODE_ENV=dev scripts/start-local.sh 2>&1",
|
||||
"start-oauth": "NODE_ENV=dev node fxa-oauth-server/bin/server.js",
|
||||
"start-mysql": "NODE_ENV=dev scripts/start-local-mysql.sh 2>&1",
|
||||
"start": "npm run gen-keys && node ./bin/key_server.js",
|
||||
"test": "VERIFIER_VERSION=0 NO_COVERAGE=1 scripts/test-local.sh",
|
||||
"test-oauth": "fxa-oauth-server/scripts/test-local.sh",
|
||||
"test-ci": "scripts/test-local.sh && npm run test-e2e && npm run test-scripts",
|
||||
"test-ci": "npm run gen-keys && scripts/test-local.sh && npm run test-e2e && npm run test-scripts",
|
||||
"test-e2e": "NODE_ENV=dev mocha test/e2e",
|
||||
"test-scripts": "NODE_ENV=dev mocha test/scripts --exit",
|
||||
"test-remote": "MAILER_HOST=restmail.net MAILER_PORT=80 CORS_ORIGIN=http://baz mocha --timeout=300000 test/remote",
|
||||
"format": "prettier '**' --write"
|
||||
"format": "prettier '**' --write",
|
||||
"gen-keys": "./scripts/gen_keys.js; ./scripts/oauth_gen_keys.js; ./scripts/gen_vapid_keys.js"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
node ./scripts/gen_keys.js
|
||||
NODE_ENV=dev node ./scripts/oauth_gen_keys.js
|
||||
node ./scripts/gen_vapid_keys.js
|
||||
node ./test/mail_helper.js &
|
||||
MH=$!
|
||||
|
||||
if [ -e "../../_scripts/clone-authdb.sh" ]; then
|
||||
DB=`../../_scripts/clone-authdb.sh run`
|
||||
else
|
||||
ls fxa-auth-db-mysql/node_modules/mysql-patcher || npm i ./fxa-auth-db-mysql
|
||||
node fxa-auth-db-mysql/bin/db_patcher
|
||||
node fxa-auth-db-mysql/bin/server > fxa-auth-db-mysql.log 2>&1 &
|
||||
DB=$!
|
||||
fi
|
||||
|
||||
node ./bin/key_server.js
|
||||
|
||||
kill $MH
|
||||
kill $DB
|
|
@ -1,25 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
node ./scripts/gen_keys.js
|
||||
NODE_ENV=dev ./scripts/oauth_gen_keys.js
|
||||
node ./scripts/gen_vapid_keys.js
|
||||
node ./test/mail_helper.js &
|
||||
MH=$!
|
||||
|
||||
if [ -e "../../_scripts/clone-authdb.sh" ]; then
|
||||
DB=`../../_scripts/clone-authdb.sh run local`
|
||||
else
|
||||
node fxa-auth-db-mysql/bin/mem > fxa-auth-db-mysql.log 2>&1 &
|
||||
DB=$!
|
||||
fi
|
||||
|
||||
NODE_ENV=dev node ./fxa-oauth-server/bin/server.js &
|
||||
OA=$!
|
||||
|
||||
node ./bin/key_server.js
|
||||
|
||||
kill $MH
|
||||
kill $DB
|
||||
kill $OA
|
|
@ -1,3 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
node ./bin/key_server.js
|
||||
exit $PIPESTATUS[0]
|
|
@ -13,10 +13,6 @@ DEFAULT_ARGS="-R dot --recursive --timeout 5000 --exit"
|
|||
./scripts/gen_vapid_keys.js
|
||||
node ./scripts/oauth_gen_keys.js
|
||||
|
||||
if [ ! -e fxa-auth-db-mysql ] && [ -e "../../_scripts/clone-authdb.sh" ]; then
|
||||
../../_scripts/clone-authdb.sh
|
||||
fi
|
||||
|
||||
GLOB=$*
|
||||
if [ -z "$GLOB" ]; then
|
||||
echo "Local tests"
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
const { assert } = require('chai');
|
||||
const TestServer = require('../test_server');
|
||||
const Client = require('../client')();
|
||||
const createDBServer = require('../../fxa-auth-db-mysql');
|
||||
const createDBServer = require('../../../fxa-auth-db-mysql');
|
||||
const log = { trace() {}, info() {} };
|
||||
|
||||
const config = require('../../config').getProperties();
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
'use strict';
|
||||
|
||||
const createDBServer = require('../fxa-auth-db-mysql');
|
||||
const createDBServer = require('../../fxa-auth-db-mysql');
|
||||
|
||||
function TestServer(config) {
|
||||
this.config = config;
|
||||
|
|
|
@ -8,7 +8,7 @@ const crypto = require('crypto');
|
|||
const EventEmitter = require('events');
|
||||
const P = require('../lib/promise');
|
||||
const mailbox = require('./mailbox');
|
||||
const createDBServer = require('../fxa-auth-db-mysql');
|
||||
const createDBServer = require('../../fxa-auth-db-mysql');
|
||||
const createAuthServer = require('../bin/key_server');
|
||||
const createMailHelper = require('./mail_helper');
|
||||
const createProfileHelper = require('./profile_helper');
|
||||
|
|
|
@ -4,11 +4,10 @@
|
|||
"description": "Firefox Accounts Content Server",
|
||||
"scripts": {
|
||||
"build-production": "NODE_ENV=production grunt build",
|
||||
"postinstall": "scripts/download_l10n.sh",
|
||||
"postinstall": "cp server/config/local.json-dist server/config/local.json && scripts/download_l10n.sh",
|
||||
"lint": "eslint app server tests --cache",
|
||||
"lint:deps": "npm audit --json | audit-filter --nsp-config=.nsprc --audit=-",
|
||||
"start": "node scripts/check-local-config && grunt server",
|
||||
"start-circle": "CONFIG_FILES=server/config/local.json,server/config/production.json,tests/ci/config_circleci.json node_modules/.bin/grunt build && CONFIG_FILES=server/config/local.json,server/config/production.json,tests/ci/config_circleci.json node_modules/.bin/grunt serverproc:dist",
|
||||
"start-production": "NODE_ENV=production grunt build && CONFIG_FILES=server/config/local.json,server/config/production.json grunt serverproc:dist",
|
||||
"start-remote": "scripts/run_remote_dev.sh",
|
||||
"test": "node tests/intern.js --unit=true",
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"csp": {
|
||||
"enabled": false
|
||||
},
|
||||
"public_url": "http://127.0.0.1:3030",
|
||||
"fxaccount_url": "https://fxaci.dev.lcip.org/auth",
|
||||
"oauth_client_id": "98e6508e88680e1a",
|
||||
"oauth_url": "https://oauth-fxaci.dev.lcip.org",
|
||||
"profile_url": "https://fxaci.dev.lcip.org/profile",
|
||||
"profile_images_url": "https://fxaci.dev.lcip.org/profile",
|
||||
"allowed_parent_origins": ["https://123done-fxaci.dev.lcip.org"],
|
||||
"use_https": false,
|
||||
"i18n": {
|
||||
"supportedLanguages": ["en"]
|
||||
}
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
{
|
||||
"logging": {
|
||||
"loggers": {
|
||||
"bid": {
|
||||
"level": "ERROR"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
#!/bin/bash -ex
|
||||
|
||||
# Create a separate store for deps to avoid dependency issues with the content server
|
||||
mkdir -p deps/node_modules
|
||||
cd deps
|
||||
|
||||
# Auth
|
||||
if [ -d fxa-auth-server ]
|
||||
then
|
||||
# node_modules is cached and we can't clone into a non-empty directory
|
||||
cd fxa-auth-server
|
||||
git init
|
||||
git remote add origin https://github.com/mozilla/fxa-auth-server.git
|
||||
git fetch origin master
|
||||
git checkout -f -b master origin/master
|
||||
else
|
||||
git clone https://github.com/mozilla/fxa-auth-server.git --depth=1
|
||||
cd fxa-auth-server
|
||||
fi
|
||||
# Install devDeps for the Auth Server to get memory db
|
||||
npm i &> /dev/null
|
||||
LOG_LEVEL=error node ./node_modules/fxa-auth-db-mysql/bin/mem.js &
|
||||
node ./scripts/gen_keys.js
|
||||
SIGNIN_UNBLOCK_ALLOWED_EMAILS="^block.*@restmail\\.net$" SIGNIN_UNBLOCK_FORCED_EMAILS="^block.*@restmail\\.net$" npm start &> /dev/null &
|
||||
|
||||
# OAuth
|
||||
|
||||
cd fxa-oauth-server
|
||||
npm i > /dev/null
|
||||
LOG_LEVEL=error NODE_ENV=dev node ./bin/server.js &
|
||||
cd ../..
|
||||
|
||||
# Profile
|
||||
|
||||
npm i mozilla/fxa-profile-server &> /dev/null
|
||||
cd node_modules/fxa-profile-server
|
||||
npm i
|
||||
LOG_LEVEL=error NODE_ENV=dev npm start &
|
||||
cd ../..
|
||||
|
||||
# Verifier
|
||||
|
||||
npm i vladikoff/browserid-verifier#http &> /dev/null
|
||||
cd node_modules/browserid-verifier
|
||||
npm i vladikoff/browserid-local-verify#http &> /dev/null
|
||||
PORT=5050 CONFIG_FILES=../../../tests/ci/config_verifier.json node server.js &
|
||||
cd ../..
|
||||
|
||||
# Leave "deps"
|
||||
cd ..
|
|
@ -1,18 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# This script sets up a default password for VNC
|
||||
# If you do not run this then the first time VNC
|
||||
# starts it will ask you to set a password.
|
||||
|
||||
prog=/usr/bin/vnc4passwd
|
||||
mypass="newpass"
|
||||
|
||||
/usr/bin/expect <<EOF
|
||||
spawn "$prog"
|
||||
expect "Password:"
|
||||
send "$mypass\r"
|
||||
expect "Verify:"
|
||||
send "$mypass\r"
|
||||
expect eof
|
||||
exit
|
||||
EOF
|
|
@ -1,7 +1,5 @@
|
|||
FROM node:10-alpine
|
||||
|
||||
RUN npm install -g npm@6 && rm -rf ~app/.npm /tmp/*
|
||||
|
||||
RUN apk add --no-cache make git gcc g++ python
|
||||
|
||||
RUN addgroup -g 10001 app && \
|
||||
|
@ -10,9 +8,9 @@ WORKDIR /app
|
|||
|
||||
USER app
|
||||
|
||||
COPY package-lock.json package-lock.json
|
||||
COPY package.json package.json
|
||||
COPY --chown=app:app package-lock.json package-lock.json
|
||||
COPY --chown=app:app package.json package.json
|
||||
|
||||
RUN npm ci --production && rm -rf ~app/.npm /tmp/*
|
||||
|
||||
COPY . /app
|
||||
COPY --chown=app:app . /app
|
||||
|
|
|
@ -2,13 +2,12 @@
|
|||
|
||||
set -e
|
||||
|
||||
if [ -e "../../_scripts/clone-authdb.sh" ]; then
|
||||
DB_PID=`../../_scripts/clone-authdb.sh run`
|
||||
else
|
||||
node fxa-auth-db-mysql/bin/db_patcher
|
||||
node fxa-auth-db-mysql/bin/server > fxa-auth-db-mysql.log 2>&1 &
|
||||
DB_PID="$!"
|
||||
fi
|
||||
cd ../fxa-auth-db-mysql
|
||||
npm ci
|
||||
node ./bin/db_patcher
|
||||
node ./bin/server > fxa-auth-db-mysql.log 2>&1 &
|
||||
DB_PID="$!"
|
||||
cd ../fxa-email-service
|
||||
|
||||
if [ -z "$FXA_EMAIL_LOG_LEVEL" ]; then
|
||||
export FXA_EMAIL_LOG_LEVEL=off
|
||||
|
|
|
@ -6,11 +6,11 @@
|
|||
"license": "MPL-2.0",
|
||||
"scripts": {
|
||||
"start": "grunt",
|
||||
"postinstall": "grunt sjcl",
|
||||
"lint": "npm-run-all --parallel lint:*",
|
||||
"lint:deps": "npm audit --json | audit-filter --nsp-config=.nsprc --audit=-",
|
||||
"test": "npm run lint && mocha tests/lib --reporter dot --timeout 5000",
|
||||
"test-local": "AUTH_SERVER_URL=http://127.0.0.1:9000 npm test",
|
||||
"setup": "npm install && grunt sjcl",
|
||||
"contributors": "git shortlog -s | cut -c8- | sort -f > CONTRIBUTORS.md",
|
||||
"format": "prettier '**' --write"
|
||||
},
|
||||
|
|
|
@ -4,20 +4,20 @@ RUN groupadd --gid 10001 app && \
|
|||
RUN mkdir /fxa-content-server && chown -R app:app /fxa-content-server
|
||||
USER app
|
||||
WORKDIR /app
|
||||
COPY ["fxa-payments-server/package*.json", "./"]
|
||||
COPY --chown=app:app ["fxa-payments-server/package*.json", "./"]
|
||||
RUN npm ci
|
||||
COPY ["fxa-payments-server/.storybook", ".storybook/"]
|
||||
COPY ["fxa-payments-server/public", "public/"]
|
||||
COPY ["fxa-payments-server/src", "src/"]
|
||||
|
||||
USER app
|
||||
COPY ["fxa-content-server", "../fxa-content-server/"]
|
||||
COPY --chown=app:app ["fxa-payments-server/.storybook", ".storybook/"]
|
||||
COPY --chown=app:app ["fxa-payments-server/public", "public/"]
|
||||
COPY --chown=app:app ["fxa-payments-server/src", "src/"]
|
||||
COPY --chown=app:app ["fxa-content-server", "../fxa-content-server/"]
|
||||
WORKDIR /fxa-content-server
|
||||
RUN npm ci
|
||||
WORKDIR /app
|
||||
ENV PUBLIC_URL /
|
||||
ENV INLINE_RUNTIME_CHUNK false
|
||||
RUN npm run build
|
||||
|
||||
|
||||
FROM node:12-stretch-slim
|
||||
RUN groupadd --gid 10001 app && \
|
||||
useradd --uid 10001 --gid 10001 --home /app --create-home app
|
||||
|
@ -29,8 +29,6 @@ COPY --chown=app:app [ "fxa-payments-server/", "./" ]
|
|||
|
||||
COPY --chown=app:app ["fxa-geodb", "../fxa-geodb/"]
|
||||
WORKDIR /fxa-geodb
|
||||
USER root
|
||||
RUN chown -R app:app /fxa-geodb
|
||||
USER app
|
||||
RUN npm ci
|
||||
|
||||
|
@ -58,8 +56,6 @@ COPY --chown=app:app ["fxa-shared/tsconfig.json", "../fxa-shared/tsconfig.json"]
|
|||
COPY --chown=app:app ["fxa-shared/.nsprc", "../fxa-shared/.nsprc"]
|
||||
RUN mkdir /fxa-shared/node_modules
|
||||
WORKDIR /fxa-shared
|
||||
USER root
|
||||
RUN chown -R app:app /fxa-shared
|
||||
USER app
|
||||
RUN npm ci
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
"lint": "npm-run-all --parallel lint:*",
|
||||
"lint:deps": "npm audit --json | audit-filter --nsp-config=.nsprc --audit=-",
|
||||
"outdated": "npm outdated --depth 0 || exit 0",
|
||||
"preinstall": "./scripts/check_gm.sh",
|
||||
"preinstall": "./scripts/check_gm.sh && mkdir -p var/public/",
|
||||
"start": "scripts/run_dev.js",
|
||||
"test": "scripts/test-local.sh",
|
||||
"format": "prettier '**' --write"
|
||||
|
|
Загрузка…
Ссылка в новой задаче