This is an automated email from the ASF dual-hosted git repository.

japetrsn pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-package-alarms.git


The following commit(s) were added to refs/heads/master by this push:
     new 8d40a76  Update existing trigger feeds on create instead of failing 
(#202)
8d40a76 is described below

commit 8d40a7686d28aa3cd49ff89779f8e73271d49693
Author: Jason Peterson <[email protected]>
AuthorDate: Sat May 2 11:37:54 2020 -0400

    Update existing trigger feeds on create instead of failing (#202)
---
 action/lib/Database.js | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/action/lib/Database.js b/action/lib/Database.js
index 6f91440..324361d 100644
--- a/action/lib/Database.js
+++ b/action/lib/Database.js
@@ -70,7 +70,19 @@ module.exports = function(dbURL, dbName, dbUsername, 
dbPassword) {
                     resolve();
                 }
                 else {
-                    reject(common.sendError(err.statusCode, 'error creating 
alarm trigger.', err.message));
+                    const errorMsg = 'error creating alarm trigger.';
+                    if (err.statusCode === 409) {
+                        //trigger already exists so update it
+                        utilsDB.getTrigger(triggerID)
+                        .then(trigger => utilsDB.disableTrigger(triggerID, 
trigger, 0, 'updating'))
+                        .then(() => utilsDB.getTrigger(triggerID))
+                        .then(trigger => utilsDB.updateTrigger(triggerID, 
newTrigger, {_rev: trigger._rev}, 0))
+                        .then(() => resolve())
+                        .catch(err => reject(common.sendError(err.statusCode, 
errorMsg, err.message)));
+                    }
+                    else {
+                        reject(common.sendError(err.statusCode, errorMsg, 
err.message));
+                    }
                 }
             });
         });

Reply via email to