Files
notifications-admin/README.md
T

84 lines
1.8 KiB
Markdown
Raw Normal View History

2015-11-20 10:31:28 +00:00
# notifications-admin
2016-02-03 15:18:57 +00:00
2020-05-20 10:52:55 +01:00
GOV.UK Notify admin application - https://www.notifications.service.gov.uk/
2015-11-18 16:32:15 +00:00
- Register and manage users
- Create and manage services
- Send batch emails and SMS by uploading a CSV
2016-02-03 15:18:57 +00:00
- Show history of notifications
2015-11-23 14:31:14 +00:00
2021-02-22 16:56:09 +00:00
## Setting up
2015-12-15 08:20:25 +00:00
2021-02-22 17:12:03 +00:00
### Python version
2020-05-16 16:00:38 -07:00
2021-02-22 17:12:03 +00:00
At the moment we run Python 3.6 in production.
2020-05-16 16:00:38 -07:00
2021-02-22 17:12:03 +00:00
### NPM packages
2020-05-16 16:00:38 -07:00
2017-04-18 14:04:10 +01:00
```shell
2020-05-20 10:52:55 +01:00
brew install node
2017-04-18 14:04:10 +01:00
```
2021-02-22 17:12:03 +00:00
[NPM](npmjs.org) is Node's package management tool. `n` is a tool for managing different versions of Node. The following installs `n` and uses the long term support (LTS) version of Node.
2020-05-16 16:00:38 -07:00
2016-01-14 16:26:56 +00:00
```shell
2020-05-20 10:52:55 +01:00
npm install -g n
n lts
2020-05-16 16:00:38 -07:00
```
2021-02-22 17:12:03 +00:00
### `environment.sh`
2020-05-22 09:48:04 +01:00
In the root directory of the application, run:
```
echo "
2016-08-04 18:01:08 +01:00
export NOTIFY_ENVIRONMENT='development'
2017-11-06 13:07:21 +00:00
export FLASK_APP=application.py
2021-02-22 16:54:56 +00:00
export FLASK_ENV=development
2017-11-06 13:07:21 +00:00
export WERKZEUG_DEBUG_PIN=off
"> environment.sh
```
2021-02-22 16:56:09 +00:00
### AWS credentials
2016-08-17 15:59:16 +01:00
2021-02-22 16:44:13 +00:00
To run parts of the app, such as uploading letters, you will need appropriate AWS credentials. See the [Wiki](https://github.com/alphagov/notifications-manuals/wiki/aws-accounts#how-to-set-up-local-development) for more details.
2021-02-22 17:12:03 +00:00
## To run the application
2016-02-03 15:18:57 +00:00
2015-12-15 08:20:25 +00:00
```shell
2021-02-22 17:12:03 +00:00
# install dependencies, etc.
make bootstrap
# run the web app
2021-02-22 16:41:30 +00:00
make run-flask
2015-12-15 08:20:25 +00:00
```
2015-11-23 14:39:31 +00:00
2021-02-22 17:12:03 +00:00
Then visit [localhost:6012](http://localhost:6012).
## To test the application
```
# install dependencies, etc.
make bootstrap
make test
```
2018-07-10 15:16:14 +01:00
2021-02-22 17:15:09 +00:00
## Common tasks
2018-07-10 15:16:14 +01:00
2021-02-22 17:15:09 +00:00
### Updating application dependencies
2018-07-10 15:16:14 +01:00
2021-02-22 17:15:09 +00:00
`requirements.txt` is generated from the `requirements.in` in order to pin versions of all nested dependencies. If `requirements.in` has been changed, run `make freeze-requirements` to regenerate it.
2018-07-10 15:16:14 +01:00
2021-02-22 17:15:09 +00:00
### Automatically rebuild the frontend assets
2021-02-22 17:15:09 +00:00
If you want the front end assets to re-compile on changes, leave this running in a separate terminal from the app
2020-05-20 10:52:55 +01:00
```shell
npm run watch
```
2021-02-22 17:15:09 +00:00
## Further docs
2021-02-22 17:15:09 +00:00
- [Working with static assets](docs/static-assets.md)