Giter Site home page Giter Site logo

rundeck-hipchat-plugin's Introduction

rundeck-hipchat-plugin

Sends rundeck notification messages to a HipChat room.

Latest version is 1.7.0, full release notes can be found here.

Installation Instructions

  1. Either download the latest release from Maven Central (link) or build a snapshot from source.
  2. Copy the plugin jar (rundeck-hipchat-plugin-<version>.jar) into your $RDECK_BASE/libext - no restart of rundeck required.

See the rundeck documentation for more information on installing rundeck plugins.

User Guide

Can be found here.

rundeck-hipchat-plugin's People

Contributors

hbakkum avatar jplock avatar yannick29 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

rundeck-hipchat-plugin's Issues

Add proxy support

It would be great if the Hipchat plugin would work with https proxy servers. See the ec2 1.5 release for an example. All of our Rundeck instances require outbound connectivity through an http/https proxy server.

Unknown or unsupported HipChat API version: [v2 ]

Hi @hbakkum ,

@hbakkum I am trying to setup this plugin. But I am getting error v2 is unknows or not supported
when I specified following settings;

configure framework:
framework.plugin.Notification.HipChatNotification.apiVersion=v2
framework.plugin.Notification.HipChatNotification.apiAuthToken=value

configure project:
project.plugin.Notification.HipChatNotification.apiVersion=v2
project.plugin.Notification.HipChatNotification.apiAuthToken=value

Do you know why am I getting this?
Also on rundeck in hipchat section, you only specify room id and that's it right?

@hbakkum This is what I am getting:

class com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Unknown or unsupported HipChat API version: [v2 ]

I am using new version of plugin 1.7.0.

Please let me know. Thanks

Regards,
Waqas.

Rundeck fails to connect to hipchat

2015-09-19 04:49:51,007 [quartzScheduler_Worker-2] ERROR grails.app.services.rundeck.services.NotificationService - Notification Failed: HipChatNotification
2015-09-19 04:49:55,346 [quartzScheduler_Worker-2] INFO grails.app.services.rundeck.services.ExecutionUtilService - Execution successful: 334
2015-09-19 04:49:55,506 [quartzScheduler_Worker-2] ERROR com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin - Error sending HipChat notification to room: [xxxx]
com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Error opening connection to HipChat URL: [Stream closed].
at com.hbakkum.rundeck.plugins.hipchat.http.RestyHttpRequestExecutor.execute(RestyHttpRequestExecutor.java:44)
at com.hbakkum.rundeck.plugins.hipchat.roomnotifier.HipChatApiVersion1RoomNotifier.invokeHipChatAPI(HipChatApiVersion1RoomNotifier.java:64)
at com.hbakkum.rundeck.plugins.hipchat.roomnotifier.HipChatApiVersion1RoomNotifier.sendRoomNotification(HipChatApiVersion1RoomNotifier.java:47)
at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.sendRoomNotifications(HipChatNotificationPlugin.java:158)
at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.postNotification(HipChatNotificationPlugin.java:139)
at rundeck.services.NotificationService.triggerPlugin(NotificationService.groovy:471)
at rundeck.services.NotificationService$_triggerJobNotification_closure5.doCall(NotificationService.groovy:333)
at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:142)
at rundeck.services.NotificationService$_triggerJobNotification_closure1.doCall(NotificationService.groovy:84)
at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:81)
at rundeck.services.ExecutionService$_saveExecutionState_closure54.doCall(ExecutionService.groovy:1904)
at rundeck.services.ExecutionService.saveExecutionState(ExecutionService.groovy:1809)
at rundeck.quartzjobs.ExecutionJob$_saveState_closure3.doCall(ExecutionJob.groovy:449)
at rundeck.quartzjobs.ExecutionJob.withRetry(ExecutionJob.groovy:392)
at rundeck.quartzjobs.ExecutionJob.saveState(ExecutionJob.groovy:458)
at rundeck.quartzjobs.ExecutionJob.execute_internal(ExecutionJob.groovy:143)
at rundeck.quartzjobs.ExecutionJob$_execute_closure1.doCall(ExecutionJob.groovy:71)
at com.codahale.metrics.Timer.time(Timer.java:99)
at rundeck.quartzjobs.ExecutionJob.execute(ExecutionJob.groovy:70)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: java.io.IOException: Stream closed
at java.io.BufferedInputStream.getInIfOpen(BufferedInputStream.java:151)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
at java.io.FilterInputStream.read(FilterInputStream.java:107)
at us.monoid.web.AbstractResource.fill(AbstractResource.java:44)
at us.monoid.web.Resty.fillResourceFromURL(Resty.java:432)
at us.monoid.web.Resty.doGET(Resty.java:388)
at us.monoid.web.Resty.text(Resty.java:241)
at us.monoid.web.Resty.text(Resty.java:271)
at com.hbakkum.rundeck.plugins.hipchat.http.RestyHttpRequestExecutor.execute(RestyHttpRequestExecutor.java:38)
... 20 more

This plugin requiere IPv4.

Hi,

I'm using Rundeck in a IPv6 only machine and this awesome plugin won't work because it requiere visibly IPv4 connectivity.

Can you do something for me ?

Thanks.

HipChat Server

With the addition of Hipchat Server it now becomes important to be able to specify the server url. Would it be possible to have that parameterized?

Expression executionData.context is undefined

I'm attempting to use rundeck-hipchat-plugin on rundeck 2.1.1 and its erroring out with this.

2014-05-06 23:26:01,476 [quartzScheduler_Worker-1] ERROR grails.app.services.rundeck.services.NotificationService - Error sending notification: Notification{eventTrigger='
onsuccess', type='HipChatNotification', content='{"room":"room_number","apiAuthToken":"my_api_token"}'}: class com.hbakkum.rundeck.plugins.hipchat.HipChatNoti
ficationPluginException: Error merging HipChat notification message template: [Expression executionData.context is undefined on line 13, column 17 in hipchat-message.ftl.]
.
com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Error merging HipChat notification message template: [Expression executionData.context is undefined
 on line 13, column 17 in hipchat-message.ftl.].
        at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.generateMessage(HipChatNotificationPlugin.java:141)
        at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.postNotification(HipChatNotificationPlugin.java:102)
        at rundeck.services.NotificationService.triggerPlugin(NotificationService.groovy:454)
        at rundeck.services.NotificationService$_triggerJobNotification_closure5.doCall(NotificationService.groovy:316)
        at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:138)
        at rundeck.services.NotificationService$_triggerJobNotification_closure1.doCall(NotificationService.groovy:84)
        at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:81)
        at rundeck.services.ExecutionService.saveExecutionState(ExecutionService.groovy:1493)
        at rundeck.quartzjobs.ExecutionJob$_saveState_closure3.doCall(ExecutionJob.groovy:369)
        at rundeck.quartzjobs.ExecutionJob.withRetry(ExecutionJob.groovy:333)
        at rundeck.quartzjobs.ExecutionJob.saveState(ExecutionJob.groovy:367)
        at rundeck.quartzjobs.ExecutionJob.execute_internal(ExecutionJob.groovy:108)
        at rundeck.quartzjobs.ExecutionJob$_execute_closure1.doCall(ExecutionJob.groovy:68)
        at com.codahale.metrics.Timer.time(Timer.java:99)
        at rundeck.quartzjobs.ExecutionJob.execute(ExecutionJob.groovy:67)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:199)
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:546)
Caused by: freemarker.core.InvalidReferenceException: Expression executionData.context is undefined on line 13, column 17 in hipchat-message.ftl.
        at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
        at freemarker.core.TemplateObject.invalidTypeException(TemplateObject.java:135)
        at freemarker.core.Dot._getAsTemplateModel(Dot.java:78)
        at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
        at freemarker.core.Dot._getAsTemplateModel(Dot.java:74)
        at freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
        at freemarker.core.Expression.getStringValue(Expression.java:93)
        at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
        at freemarker.core.Environment.visit(Environment.java:221)
        at freemarker.core.MixedContent.accept(MixedContent.java:92)
        at freemarker.core.Environment.visit(Environment.java:221)
        at freemarker.core.Environment.process(Environment.java:199)
        at freemarker.template.Template.process(Template.java:259)
        at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.generateMessage(HipChatNotificationPlugin.java:136)
        ... 16 more

Configure Room AuthToken at Instance Level

Hi,

I am wondering if it is possible to change the scope of the apiAuthToken attribute in class HipChatNotificationPlugin to PropertyScope.Instance?

What do you think?

Kind Regards,
Kilian.

Hipchat plugin does not work

Hi everyone,

I am configuring Rundeck in my work and I want to receive all notifications from jobs via Hipchat. I have found this plugin: https://github.com/hbakkum/rundeck-hipchat-plugin

I copied .jar file in Rundeck libext directory and now I see Hipchat option in Job notification. Despite the fact that I wrote the room ID and I get a token to allow Rundeck sends notifications to this room, nothing happens..

I saw this topic: rundeck/rundeck#764

Also I am getting this logs:


2018-01-31 15:15:12,122 [quartzScheduler_Worker-3] INFO  grails.app.services.rundeck.services.ExecutionUtilService - Execution successful: 13 in project proyecto_prueba
2018-01-31 15:15:12,501 [quartzScheduler_Worker-3] INFO  grails.app.services.rundeck.services.ExecutionService - updated scheduled Execution
2018-01-31 15:15:31,088 [quartzScheduler_Worker-4] ERROR grails.app.services.rundeck.services.PluginService - Notification: configuration was not valid for plugin 'HipChatNotification': apiAuthToken: required

is Hipchat plugin working wrong because last update was in 2016 or Am I configuring something wrong?

Thanks beforehand.

Regards,
Mike.

Hipchat SSL API V2 broken

Do I need to add the hipchat upstream cert to the keystore in rundeck, we are flowing through a squid proxy for connectivity

2015-01-23 13:04:09,236 [quartzScheduler_Worker-1] DEBUG freemarker.cache - Compiling FreeMarker template "hipchat-message.ftl"["en_US",UTF-8,parsed] from "jar:file:/var/lib/rundeck/var/tmp/pluginJars/20150121111035000-rundeck-hipchat-plugin-1.5.0.jar!/templates/hipchat-message.ftl"
2015-01-23 13:04:09,268 [quartzScheduler_Worker-1] ERROR com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin - Error sending HipChat notification to room: [669280]
com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Error opening connection to HipChat URL: [sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target].
at com.hbakkum.rundeck.plugins.hipchat.http.RestyHttpRequestExecutor.execute(RestyHttpRequestExecutor.java:67)
at com.hbakkum.rundeck.plugins.hipchat.roomnotifier.HipChatApiVersion2RoomNotifier.sendRoomNotification(HipChatApiVersion2RoomNotifier.java:45)
at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.sendRoomNotifications(HipChatNotificationPlugin.java:158)
at com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.postNotification(HipChatNotificationPlugin.java:139)
at rundeck.services.NotificationService.triggerPlugin(NotificationService.groovy:465)
at rundeck.services.NotificationService$_triggerJobNotification_closure5.doCall(NotificationService.groovy:327)
at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:142)
at rundeck.services.NotificationService$_triggerJobNotification_closure1.doCall(NotificationService.groovy:84)
at rundeck.services.NotificationService.triggerJobNotification(NotificationService.groovy:81)
at rundeck.services.ExecutionService.saveExecutionState(ExecutionService.groovy:1847)
at rundeck.quartzjobs.ExecutionJob$_saveState_closure3.doCall(ExecutionJob.groovy:390)
at rundeck.quartzjobs.ExecutionJob.withRetry(ExecutionJob.groovy:343)
at rundeck.quartzjobs.ExecutionJob.saveState(ExecutionJob.groovy:388)
at rundeck.quartzjobs.ExecutionJob.execute_internal(ExecutionJob.groovy:122)
at rundeck.quartzjobs.ExecutionJob$_execute_closure1.doCall(ExecutionJob.groovy:69)
at com.codahale.metrics.Timer.time(Timer.java:99)
at rundeck.quartzjobs.ExecutionJob.execute(ExecutionJob.groovy:68)
at org.quartz.core.JobRunShell.run(JobRunShell.java:199)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:546)
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at us.monoid.web.Content.addContent(Content.java:43)
at us.monoid.web.Resty.doPOSTOrPUT(Resty.java:393)
at us.monoid.web.Resty.text(Resty.java:258)
at us.monoid.web.Resty.text(Resty.java:284)
at com.hbakkum.rundeck.plugins.hipchat.http.RestyHttpRequestExecutor.execute(RestyHttpRequestExecutor.java:61)
... 18 more
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
... 23 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:268)

Any Error in the Notification will abort the job

Hi,
Just a minor quirk - Any problem with sending a notification to HipChat will end up aborting the job that is running. It would be nice if the job could continue. (eg, I had problems with V1 versus V2 API access. No Job would run as I would get a 403 Forbidden message from the HipChat Server)

Seeing weird error in logs

I am seeing this error in my rundeck logs:

com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPlugin.postNotification(HipChatNotificationPlugin.java:137)
ERROR NotificationService: Error sending notification: Notification{eventTrigger='onfailure', type='HipChatNotification', content='{"room":"xx"}'}: class com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Error merging HipChat notification message template: [Expression execution.context.job.username is undefined on line 12, column 17 in hipchat-message.ftl.].
com.hbakkum.rundeck.plugins.hipchat.HipChatNotificationPluginException: Error merging HipChat notification message template: [Expression execution.context.job.username is undefined on line 12, column 17 in hipchat-message.ftl.].

The job does post to the hipchat room so I am not sure exactly why the user isn't being set. Is this a known issue?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.