Adam Shimali e6fe10cbdc [WIP] added endpoint and dao to create invites for users.
Droped token as later code to send email invite can generate
timebased url to send to user. That can then be checked
against configurable time threshold for expiry. Therefore
no need to store a token.
2016-02-24 14:18:56 +00:00
2016-02-22 17:17:29 +00:00
2016-02-16 16:01:50 +00:00
2016-02-16 16:01:50 +00:00
2016-02-17 11:36:14 +00:00
2016-02-22 17:17:29 +00:00
2016-02-17 11:01:15 +00:00
2016-02-22 17:17:29 +00:00
2016-02-17 11:36:14 +00:00
2016-02-16 16:01:50 +00:00

Requirements Status

notifications-api

Notifications api Application for the notification api.

Read and write notifications/status queue. Get and update notification status.

Setting Up

mkvirtualenv -p /usr/local/bin/python3 notifications-api

Creating the environment.sh file. Replace [unique-to-environment] with your something unique to the environment. The local development environments are using the AWS on preview.

Create a local environment.sh file containing the following:

echo "
export NOTIFY_API_ENVIRONMENT='config.Development'
export ADMIN_CLIENT_SECRET='dev-notify-secret-key'
export ADMIN_CLIENT_USER_NAME='dev-notify-admin'
export AWS_REGION='eu-west-1'
export DANGEROUS_SALT='dev-notify-salt'
export DELIVERY_CLIENT_USER_NAME='dev-notify-delivery'
export DELIVERY_CLIENT_SECRET='dev-notify-secret-key'
export FIRETEXT_API_KEY="secret-fire-text" # This has to be real so speak to a grownup
export FIRETEXT_NUMBER="Firetext"
export NOTIFY_JOB_QUEUE='[unique-to-environment]-notify-jobs-queue' # NOTE unique prefix
export NOTIFICATION_QUEUE_PREFIX='[unique-to-environment]-notification_development' # NOTE unique prefix
export SECRET_KEY='dev-notify-secret-key'
export SQLALCHEMY_DATABASE_URI = 'postgresql://localhost/notification_api'
export VERIFY_CODE_FROM_EMAIL_ADDRESS='no-reply@notify.works'
export NOTIFY_EMAIL_DOMAIN='dev.notify.com'
"> environment.sh

NOTE: the DELIVERY_CLIENT_USER_NAME, DELIVERY_CLIENT_SECRET, NOTIFY_JOB_QUEUE and NOTIFICATION_QUEUE_PREFIX must be the same as the ones in the notifications-delivery app. The SECRET_KEY and DANGEROUS_SALT are the same in notifications-delivery and notifications-admin app.

NOTE: Also note the unique prefix for the queue names. This prevents clashing with others queues in shared amazon environment and using a prefix enables filtering by queue name in the SQS interface.

To run the application

You need to run the api application and a local celery instance.

There are two run scripts for running all the necessary parts.

scripts/run_app.sh
scripts/run_celery.sh
Description
The API powering Notify.gov
Readme 58 MiB
Languages
Python 98.5%
HCL 0.6%
Jinja 0.5%
Shell 0.3%
Makefile 0.1%