Merge pull request #94 from kevgliss/notifications

Notifications
This commit is contained in:
kevgliss 2015-09-22 13:37:51 -07:00
commit 862bf3f619
3 changed files with 41 additions and 18 deletions

View File

@ -56,23 +56,6 @@ And optionally if your database is going to be on the same host as the webserver
$ sudo apt-get install postgres $ sudo apt-get install postgres
Installing Lemur
----------------
Once you've got the environment setup, you can install Lemur and all its dependencies with
the same command you used to grab virtualenv::
pip install -U lemur
Once everything is installed, you should be able to execute the Lemur CLI, via ``lemur``, and get something
like the following:
.. code-block:: bash
$ lemur
usage: lemur [--config=/path/to/settings.py] [command] [options]
Installing from Source Installing from Source
~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~

View File

@ -232,7 +232,7 @@ def create(**kwargs):
database.update_list(cert, 'notifications', Notification, kwargs.get('notifications')) database.update_list(cert, 'notifications', Notification, kwargs.get('notifications'))
# create default notifications for this certificate if none are provided # create default notifications for this certificate if none are provided
notifications = [] notifications = cert.notifications
if not kwargs.get('notifications'): if not kwargs.get('notifications'):
notification_name = "DEFAULT_{0}".format(cert.owner.split('@')[0].upper()) notification_name = "DEFAULT_{0}".format(cert.owner.split('@')[0].upper())
notifications += notification_service.create_default_expiration_notifications(notification_name, [cert.owner]) notifications += notification_service.create_default_expiration_notifications(notification_name, [cert.owner])

View File

@ -208,6 +208,46 @@ class CertificatesList(AuthenticatedResource):
"notAfter": "2015-06-17T15:21:08", "notAfter": "2015-06-17T15:21:08",
"description": "dsfdsf" "description": "dsfdsf"
}, },
"notifications": [
{
"description": "Default 30 day expiration notification",
"notificationOptions": [
{
"name": "interval",
"required": true,
"value": 30,
"helpMessage": "Number of days to be alert before expiration.",
"validation": "^\\d+$",
"type": "int"
},
{
"available": [
"days",
"weeks",
"months"
],
"name": "unit",
"required": true,
"value": "days",
"helpMessage": "Interval unit",
"validation": "",
"type": "select"
},
{
"name": "recipients",
"required": true,
"value": "bob@example.com",
"helpMessage": "Comma delimited list of email addresses",
"validation": "^([\\w+-.%]+@[\\w-.]+\\.[A-Za-z]{2,4},?)+$",
"type": "str"
}
],
"label": "DEFAULT_KGLISSON_30_DAY",
"pluginName": "email-notification",
"active": true,
"id": 7
}
],
"extensions": { "extensions": {
"basicConstraints": {}, "basicConstraints": {},
"keyUsage": { "keyUsage": {