Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

Redmine 1.3 - Missing Template #20

Closed
schaarda opened this Issue · 17 comments

3 participants

@schaarda

Since updating to Redmine 1.3 I can't send digest mails. If I try to send a test mail I get the following error message:
"Während des Versands ist ein Fehler aufgetreten (Missing template digest_mailer/digest.text.erb in view path app/views)"

I've never seen the file mentioned, even not in Redmine 1.2 where Digest worked fine.

@drewkeller
Owner
@schaarda

I already tried that (and restarted Redmine), but it did not work, the error message still was the same.

@therings87

I have seen the same error running redmine 1.3.0 on debian squeeze with mysql:

** Invoke redmine:send_digest (first_time)
** Execute redmine:send_digest

Start: 1
Days : 1
** Processing project 'TSMH Systemadministration'...
Summarizing: 2012-02-23 to 2012-02-24 (1 days)
From 02/23/2012 to 02/23/2012
Found 7 events.
Found 6 digest recipients out of 7 project members/groups.
rake aborted!
Missing template digest_mailer/digest.html.erb in view path vendor/plugins/redmine-mylyn-connector/app/views:vendor/plugins/redmine_digest/app/views:vendor/plugins/redmine_dmsf/app/views:vendor/plugins/redmine_favourite_projects/app/views:app/views
/usr/lib/ruby/vendor_ruby/action_view/paths.rb:74:in find_template'
/usr/lib/ruby/vendor_ruby/action_view/base.rb:264:in
render'
/usr/lib/ruby/vendor_ruby/action_view/base.rb:348:in _render_with_layout'
/usr/lib/ruby/vendor_ruby/action_view/base.rb:262:in
render'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:600:in render'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:586:in
render_message'
/usr/share/redmine/app/models/mailer.rb:432:in render_multipart'
/usr/share/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:31:in
digest'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:492:in __send__'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:492:in
create!'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:485:in initialize'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:428:in
new'
/usr/lib/ruby/vendor_ruby/action_mailer/base.rb:428:in method_missing'
/usr/share/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:159:in
digests'
/usr/share/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:134:in each'
/usr/share/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:134:in
digests'
/usr/share/redmine/vendor/plugins/redmine_digest/lib/tasks/digest.rake:44
/usr/lib/ruby/1.8/rake.rb:636:in call'
/usr/lib/ruby/1.8/rake.rb:636:in
execute'
/usr/lib/ruby/1.8/rake.rb:631:in each'
/usr/lib/ruby/1.8/rake.rb:631:in
execute'
/usr/lib/ruby/1.8/rake.rb:597:in invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in
synchronize'
/usr/lib/ruby/1.8/rake.rb:590:in invoke_with_call_chain'
/usr/lib/ruby/1.8/rake.rb:583:in
invoke'
/usr/lib/ruby/1.8/rake.rb:2051:in invoke_task'
/usr/lib/ruby/1.8/rake.rb:2029:in
top_level'
/usr/lib/ruby/1.8/rake.rb:2029:in each'
/usr/lib/ruby/1.8/rake.rb:2029:in
top_level'
/usr/lib/ruby/1.8/rake.rb:2068:in standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:2023:in
top_level'
/usr/lib/ruby/1.8/rake.rb:2001:in run'
/usr/lib/ruby/1.8/rake.rb:2068:in
standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:1998:in `run'
/usr/bin/rake:28

It looks like the plugin would search the template in every installed plugin directory.

Could you check that?

@drewkeller
Owner

Forgot to mention this issue number in the commit. This is working for me.
df59d68

@drewkeller drewkeller closed this
@schaarda

The error message is gone now. But although I get the green message stating the mail was sent, I did not receive any mail. (Other mails from Redmine work, though)

Additionally, the message states that no events were found for the configured projects, which is not correct as there is a lot of activity going on.

I'll try to dig a little deeper.

@drewkeller
Owner
@schaarda

Great, now I get the error message again, this time complaining about the missing rhtml :-(

Processing DigestController#test_email (for 172.x.x.x at 2012-03-01 14:53:52) [GET]
Parameters: {"action"=>"test_email", "controller"=>"digest"}

Sending test email to me@here.de.

Start: 1
Days : 1
** Processing project 'Test'...
No events were found for project Test.
** Processing project 'Test2'...
Missing template digest_mailer/digest.text.plain.rhtml in view path app/views
Redirected to http://myserver.de/redmine/settings/plugin/redmine_digest
Completed in 4516ms (DB: 16) | 302 Found [http://myserver.de/redmine/digest/test_email]

@drewkeller
Owner

Did you switch to the debug branch in between or stayed on the master branch?
I'm not sure why it would have worked for you several days ago and then not work today.
I'll try running it again on my system later.

@schaarda

I switched to debug. And from what I can see it did not work several days ago. The error happens AFTER the check whether there is something to mail or not (during rendering of the mail). Several days ago the plugin came to the conclusion that there was nothing new to report, so no rendering and no error.

Now I can see from the log output that Digest found several changes and then tries to render the mail (you can see it in the log snippet I posted, the first project "Test" produces no error as there is no event found).

Here's a snippet from the logging:

========================================
events_by_day.keys: 2012-02-29
* day: 2012-02-29
       13:42 --- changeset --- Revision 189: test
       14:56 --- changeset --- Revision 190: test
       15:17 --- changeset --- Revision 191: test

events_by_day days count: 1
Found 3 events.
Missing template digest_mailer/digest.text.plain.rhtml in view path app/views
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.14/lib/action_view/paths.rb:74:in `find_template'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.14/lib/action_view/base.rb:264:in `render'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.14/lib/action_view/base.rb:348:in `_render_with_layout'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionpack-2.3.14/lib/action_view/base.rb:262:in `render'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:600:in `render'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:586:in `render_message'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:29:in `digest'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:492:in `__send__'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:492:in `create!'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:485:in `initialize'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:428:in `new'
C:/Seu/Redmine/ruby/lib/ruby/gems/1.8/gems/actionmailer-2.3.14/lib/action_mailer/base.rb:428:in `method_missing'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:197:in `digests'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:171:in `each'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:171:in `digests'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/models/digest_mailer.rb:15:in `test'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/controllers/digest_controller.rb:54:in `digest_send'
C:/Seu/Redmine/apps/redmine/vendor/plugins/redmine_digest/app/controllers/digest_controller.rb:102:in `test_email'

And I don't have a clue why it's now looking for the rthml again (after complaining about .erb before). One thing I noted: since the upgrade to Redmine 1.3. there are some new gems, e.g actionmailer-3.2.1. Maybe there's conflict with that, although the log does not show this.

@drewkeller
Owner
@drewkeller
Owner

I ran the test again using both the master branch and extra_debug. They both worked for me using the 'test email' link in the configuration. I also ran a testing using a scheduled job, which also worked. I received an email each time.

=====
Start: 7
Days : 8
Looking up projects to process...
Found 1 digestable projects out of 1 total projects.
Projects to process: sandbox

** Processing project 'sandbox'...
Summarizing: 2012-02-25 to 2012-03-04 (8 days)
From 02/25/2012 to 03/03/2012
Fetching activity
Activity.scope: ["issues", "changesets", "news", "documents", "files", "wiki_edits"]
events.count: 1

========================================
events_by_day.keys: 2012-02-25
* day: 2012-02-25
       04:27 pm --- issue --- Bug #1 (New): Test

events_by_day days count: 1
Found 1 events.
Email sent.
Sent digest: [sandbox] Activity: 1 events (from 02/25/2012 to 03/03/2012)
A digest was processed for trac@obfuscated.com.<p>1 project was processed.<br />Sent digest: [sandbox] Activity: 1 events (from 02/25/2012 to 03/03/2012)</p>
Checking session state...
Redirecting to plugin settings.
@drewkeller
Owner

The above test was on Linux with redmine 1.3.1. I tried on my Bitnami stack with redmine 1.2.1, which still worked fine. Then I tried to upgrade the redmine in Bitnami to 1.3.1. That required upgrading some ruby gems, which didn't go very well and I'm not getting redmine to work now, let alone trying to run any test on it.

I wonder if you're having some sort of file permissions issue. Are you on Windows or Linux? Are the template files readable by the web server (usually set for the 'www-data' group)?

@schaarda

It's the Bitnami Redmine 1.3.0-1-Stack on Windows Server 2003. As the server is running in System-Account, persmissions should not be an issue here.

@drewkeller
Owner
@schaarda

I've got it working now! It looks like Digest was not in the view path

Based on the solution to a similar problem with another plugin (see https://projects.littlestreamsoftware.com/issues/3890 ) I added the following line to digest_mailer.rb:

self.instance_variable_get("@inheritable_attributes")[:view_paths] << RAILS_ROOT + "/vendor/plugins/redmine_digest/app/views" 
@drewkeller
Owner

Awesome! Thanks for finding that.

@schaarda

My pleasure. And thanks for the useful plugin.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.