Unable to set up notifications/ modify existing notifications for jobs

34 views
Skip to first unread message

Brad Turnbough

unread,
Jul 28, 2022, 4:41:08 PM7/28/22
to rundeck-discuss
Hi Everyone,

I recently found out that I am unable to set up success / failure emails for jobs and I am also unable to modify existing notifications for jobs.  It was working fine recently, so I know it did work at one point.

When I click on the button for "Add Notification", it acts as if I did nothing.

When I pull up a job that has preexisting notifications, it doesn't look right, and I also cannot click on the 'edit' button nor can I click on the 'add notification' button. 

Any ideas?

Brad

rundeck-issue-2022-07-28.png

rac...@rundeck.com

unread,
Jul 28, 2022, 4:44:30 PM7/28/22
to rundeck-discuss
Hi Brad,

Which Rundeck version are you using?

Regards.

Brad Turnbough

unread,
Jul 28, 2022, 4:51:15 PM7/28/22
to rundeck-discuss
I am running 4.4.0 right now, but I recently upgraded from 4.2.1 (I was experiencing the issue on 4.2.1 as well)

Rundeck is installed from the official rundeck repo, on Ubuntu 20.04.

rac...@rundeck.com

unread,
Jul 28, 2022, 4:54:12 PM7/28/22
to rundeck-discuss
It seems that you're facing this, could you test this solution?

Regards!

Brad Turnbough

unread,
Jul 28, 2022, 5:36:46 PM7/28/22
to rundeck-discuss
If I add:

server.useForwardHeaders=true
 To the server properties config file, the system breaks even more, so I reverted the change.

I *did* recently implement a reverse proxy (so I'm guessing it's that, but I'm not sure why).  

The settings I have are as follows:

/etc/rundeck/rundeck-config.properties:
grails.serverURL=http://localhost:4440


/etc/apache2/sites-enabled/rundeck.conf:

<VirtualHost *:80>
   #ServerName www.example.com
   Redirect permanent / https://rundeck.blahblah.com/
</VirtualHost>

<VirtualHost *:443>
    Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains; preload"
    # custom log for rundeck service
    ErrorLog /var/log/apache2/rundeck_error.log
    CustomLog /var/log/apache2/rundeck_access.log combined

    # reverse proxy config
    ProxyPass / http://localhost:4440/
    ProxyPassReverse / http://localhost:4440/
    ProxyRequests Off

    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/blahblah.pem
    SSLCertificateKeyFile /etc/pki/tls/blahblah.key
</VirtualHost>

# Local reverse proxy authorization override
<Proxy http://localhost:4440>
Order deny,allow
Allow from all
</Proxy>



Is this all configured as it is supposed to be?

Thanks!!!!

Brad

rac...@rundeck.com

unread,
Jul 28, 2022, 6:09:12 PM7/28/22
to rundeck-discuss

Hi Brad,

I have an Apache reverse proxy + Rundeck config, take a look:

ServerRoot "/usr/local/apache2"
Listen 80

LoadModule mpm_event_module modules/mod_mpm_event.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule filter_module modules/mod_filter.so
LoadModule mime_module modules/mod_mime.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule unixd_module modules/mod_unixd.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule alias_module modules/mod_alias.so

<IfModule unixd_module>
User www-data
Group www-data
</IfModule>

ServerAdmin ad...@example.com

<Directory />
    AllowOverride none
    Require all denied
</Directory>

DocumentRoot "/usr/local/apache2/htdocs"
<Directory "/usr/local/apache2/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<Files ".ht*">
    Require all denied
</Files>

ErrorLog /proc/self/fd/2

LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    CustomLog /proc/self/fd/1 common
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"

</IfModule>

<IfModule cgid_module>
</IfModule>

<Directory "/usr/local/apache2/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

<IfModule headers_module>
    RequestHeader unset Proxy early
</IfModule>

<IfModule mime_module>
    TypesConfig conf/mime.types
    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
</IfModule>

<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

# reverse proxy config ( ** rundeck = localhost in your environment **)

ProxyPass / http://rundeck:4440/
ProxyPassReverse / http://rundeck:4440/
ProxyRequests Off

# Local reverse proxy authorization override ( ** rundeck = localhost in your environment **)
<Proxy http://rundeck:4440>
Order deny,allow
Allow from all
</Proxy>

That works to listen on http://localhost URL. See the following docker-compose example (the httpd.conf file is located inside config directory):

version: "3"
services:
  rundeck:
    image: rundeck/rundeck:4.4.0
    ports:
      - 4440:4440
    environment:
      RUNDECK_GRAILS_URL: http://localhost
      RUNDECK_SERVER_FORWARDED: "true"
  apache:
    image: httpd:latest
    volumes:
      - ./config/httpd.conf:/usr/local/apache2/conf/httpd.conf:ro
    ports:
    - 80:80

Important: make sure that the grails.serverURL parameter (on rundeck-config.properties file) is defined using the exit URL defined for your Rundeck instance in your reverse proxy config.

Greetings!

Brad Turnbough

unread,
Jul 28, 2022, 6:09:28 PM7/28/22
to rundeck-discuss
Ok, so I changed teh rundeck server configuration file back to:

http://{{servername}}.blahblah.com:4440  and then I accessed the web interface.  

I was able to access all notification settings and such as I would expect.

Is there a guide or something out there for Ubuntu / Apache2 / Rundeck Reverse proxy config?  The current method seems overly (unnecessarilly) complicated to accomplish something as simple as setting up a simple base URL that utilizes SSL.

rac...@rundeck.com

unread,
Jul 28, 2022, 6:25:02 PM7/28/22
to rundeck-discuss
Great, not at this moment but sounds good for a how-to section enhancement.

Thank you!

Regards!
Reply all
Reply to author
Forward
0 new messages