mirror of
https://github.com/GSA/notifications-admin.git
synced 2025-12-10 07:03:12 -05:00
Initial config for local deployments
Not yet working properly on cloud.gov
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -108,6 +108,7 @@ environment.sh
|
|||||||
.envrc
|
.envrc
|
||||||
.env
|
.env
|
||||||
.env*
|
.env*
|
||||||
|
varsfile
|
||||||
|
|
||||||
# CloudFoundry
|
# CloudFoundry
|
||||||
.cf
|
.cf
|
||||||
|
|||||||
@@ -4,4 +4,4 @@ import os
|
|||||||
|
|
||||||
def extract_cloudfoundry_config():
|
def extract_cloudfoundry_config():
|
||||||
vcap_services = json.loads(os.environ['VCAP_SERVICES'])
|
vcap_services = json.loads(os.environ['VCAP_SERVICES'])
|
||||||
os.environ['REDIS_URL'] = vcap_services['redis'][0]['credentials']['uri']
|
os.environ['REDIS_URL'] = vcap_services['aws-elasticache-redis'][0]['credentials']['uri']
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class Config(object):
|
|||||||
ANTIVIRUS_API_KEY = os.environ.get('ANTIVIRUS_API_KEY')
|
ANTIVIRUS_API_KEY = os.environ.get('ANTIVIRUS_API_KEY')
|
||||||
|
|
||||||
ASSETS_DEBUG = False
|
ASSETS_DEBUG = False
|
||||||
AWS_REGION = 'us-west-2'
|
AWS_REGION = os.environ.get('AWS_REGION')
|
||||||
DEFAULT_SERVICE_LIMIT = 50
|
DEFAULT_SERVICE_LIMIT = 50
|
||||||
|
|
||||||
EMAIL_EXPIRY_SECONDS = 3600 # 1 hour
|
EMAIL_EXPIRY_SECONDS = 3600 # 1 hour
|
||||||
@@ -180,13 +180,13 @@ class Staging(Config):
|
|||||||
class Live(Config):
|
class Live(Config):
|
||||||
HEADER_COLOUR = '#005EA5' # $govuk-blue
|
HEADER_COLOUR = '#005EA5' # $govuk-blue
|
||||||
HTTP_PROTOCOL = 'https'
|
HTTP_PROTOCOL = 'https'
|
||||||
CSV_UPLOAD_BUCKET_NAME = 'live-notifications-csv-upload'
|
CSV_UPLOAD_BUCKET_NAME = 'notifications.prototype.csv_upload'
|
||||||
CONTACT_LIST_UPLOAD_BUCKET_NAME = 'production-contact-list'
|
CONTACT_LIST_UPLOAD_BUCKET_NAME = 'notifications.prototype.contact_list_upload'
|
||||||
LOGO_UPLOAD_BUCKET_NAME = 'public-logos-production'
|
LOGO_UPLOAD_BUCKET_NAME = 'notifications.prototype.logo_upload'
|
||||||
LOGO_CDN_DOMAIN = 'static-logos.notifications.service.gov.uk'
|
LOGO_CDN_DOMAIN = 'static-logos.notifications.service.gov.uk'
|
||||||
MOU_BUCKET_NAME = 'notifications.service.gov.uk-mou'
|
MOU_BUCKET_NAME = 'notifications.prototype.mou'
|
||||||
TRANSIENT_UPLOADED_LETTERS = 'production-transient-uploaded-letters'
|
TRANSIENT_UPLOADED_LETTERS = 'prototype-transient-uploaded-letters'
|
||||||
PRECOMPILED_ORIGINALS_BACKUP_LETTERS = 'production-letters-precompiled-originals-backup'
|
PRECOMPILED_ORIGINALS_BACKUP_LETTERS = 'prototype-letters-precompiled-originals-backup'
|
||||||
NOTIFY_ENVIRONMENT = 'live'
|
NOTIFY_ENVIRONMENT = 'live'
|
||||||
CHECK_PROXY_HEADER = False
|
CHECK_PROXY_HEADER = False
|
||||||
ASSET_DOMAIN = 'static.notifications.service.gov.uk'
|
ASSET_DOMAIN = 'static.notifications.service.gov.uk'
|
||||||
|
|||||||
39
manifest.yml
Normal file
39
manifest.yml
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
---
|
||||||
|
applications:
|
||||||
|
- name: notifications-admin
|
||||||
|
buildpack: python_buildpack
|
||||||
|
memory: 1G
|
||||||
|
health-check-type: http
|
||||||
|
health-check-http-endpoint: '/_status?simple=true'
|
||||||
|
health-check-invocation-timeout: 10
|
||||||
|
routes:
|
||||||
|
- route: notifications-admin.app.cloud.gov
|
||||||
|
|
||||||
|
services:
|
||||||
|
# - logit-ssl-syslog-drain
|
||||||
|
# - notify-prometheus
|
||||||
|
# - notify-splunk
|
||||||
|
- api-redis
|
||||||
|
|
||||||
|
env:
|
||||||
|
NOTIFY_APP_NAME: admin
|
||||||
|
NOTIFY_LOG_PATH: /home/vcap/logs/app.log
|
||||||
|
FLASK_APP: application.py
|
||||||
|
FLASK_ENV: production
|
||||||
|
|
||||||
|
NOTIFY_ENVIRONMENT: live
|
||||||
|
|
||||||
|
# Credentials variables
|
||||||
|
ADMIN_CLIENT_SECRET: ((ADMIN_CLIENT_SECRET))
|
||||||
|
ADMIN_BASE_URL: notifications-admin.app.cloud.gov
|
||||||
|
API_HOST_NAME: notifications-api.app.cloud.gov
|
||||||
|
DANGEROUS_SALT: ((DANGEROUS_SALT))
|
||||||
|
SECRET_KEY: ((SECRET_KEY))
|
||||||
|
ROUTE_SECRET_KEY_1: ((ROUTE_SECRET_KEY_1))
|
||||||
|
ROUTE_SECRET_KEY_2: ((ROUTE_SECRET_KEY_2))
|
||||||
|
|
||||||
|
AWS_REGION: us-west-2
|
||||||
|
AWS_ACCESS_KEY_ID: ((AWS_ACCESS_KEY_ID))
|
||||||
|
AWS_SECRET_ACCESS_KEY: ((AWS_SECRET_ACCESS_KEY))
|
||||||
|
|
||||||
|
NOTIFY_BILLING_DETAILS: []
|
||||||
@@ -3,6 +3,7 @@
|
|||||||
set -e -o pipefail
|
set -e -o pipefail
|
||||||
|
|
||||||
TERMINATE_TIMEOUT=30
|
TERMINATE_TIMEOUT=30
|
||||||
|
readonly LOGS_DIR="/home/vcap/logs"
|
||||||
|
|
||||||
function check_params {
|
function check_params {
|
||||||
if [ -z "${NOTIFY_APP_NAME}" ]; then
|
if [ -z "${NOTIFY_APP_NAME}" ]; then
|
||||||
@@ -16,19 +17,23 @@ function check_params {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function configure_aws_logs {
|
function configure_aws_logs {
|
||||||
|
# create files so that aws logs agent doesn't complain
|
||||||
|
touch ${LOGS_DIR}/gunicorn_error.log
|
||||||
|
touch ${LOGS_DIR}/app.log.json
|
||||||
|
|
||||||
aws configure set plugins.cwlogs cwlogs
|
aws configure set plugins.cwlogs cwlogs
|
||||||
|
|
||||||
cat > /home/vcap/app/awslogs.conf << EOF
|
cat > /home/vcap/app/awslogs.conf << EOF
|
||||||
[general]
|
[general]
|
||||||
state_file = /home/vcap/logs/awslogs-state
|
state_file = /home/vcap/logs/awslogs-state
|
||||||
|
|
||||||
[/home/vcap/logs/app.log]
|
[${LOGS_DIR}/app.log]
|
||||||
file = /home/vcap/logs/app.log*
|
file = ${LOGS_DIR}/app.log.json
|
||||||
log_group_name = paas-${CW_APP_NAME}-application
|
log_group_name = paas-${CW_APP_NAME}-application
|
||||||
log_stream_name = {hostname}
|
log_stream_name = {hostname}
|
||||||
|
|
||||||
[/home/vcap/logs/gunicorn_error.log]
|
[${LOGS_DIR}/gunicorn_error.log]
|
||||||
file = /home/vcap/logs/gunicorn_error.log
|
file = ${LOGS_DIR}/gunicorn_error.log
|
||||||
log_group_name = paas-${CW_APP_NAME}-gunicorn
|
log_group_name = paas-${CW_APP_NAME}-gunicorn
|
||||||
log_stream_name = {hostname}
|
log_stream_name = {hostname}
|
||||||
EOF
|
EOF
|
||||||
|
|||||||
7
varsfile.sample
Normal file
7
varsfile.sample
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
ADMIN_CLIENT_SECRET: asdf
|
||||||
|
DANGEROUS_SALT: asdf
|
||||||
|
SECRET_KEY: asdf
|
||||||
|
ROUTE_SECRET_KEY_1: asdf
|
||||||
|
ROUTE_SECRET_KEY_2: asdf
|
||||||
|
AWS_ACCESS_KEY_ID: asdf
|
||||||
|
AWS_SECRET_ACCESS_KEY: asdf
|
||||||
Reference in New Issue
Block a user