Hi all,
In my first attempt at writing a plugin, I came across the error:
<code>
AttributeError: 'Ticket' object has no attribute 'desc'
</code>
Background:
I'd like to run a script when a new ticket is created, and oddly, it
seems that there is no plugin already written to do that. If there
is, would you kindly point me in that direction?
Otherwise, my question is: What attributes exist for the ticket
object when creating a new ticket (i.e. when the ITicketChangeListener
is implemented?)
I'm GUESSING at the attribute names, and I got lucky that there's one
called "id". So I presumed that there would also be one called
"[Dd]escription" or "[Dd]esc". But apparently, none of those
attributes exist (yet?)
Below is what I have written so far, and it is functional (sans the
desc attribute.)
Any pointers to a solution would be more than helpful!
<code>
class TracRunOtherPlugin(Component):
""" Executes a program on the host server."""
implements(ITicketChangeListener)
# ITicketChangeListener Interface
def ticket_created(self, ticket):
# Called when a ticket is created
self.log.info('Ticket created: %r' % ticket)
# Build the command string
file_str='/var/www/qa/autoGenerateTest.php'
args = ''.join([str(ticket.id), ' ', str(ticket.desc), ])
cmd_str = ''.join([file_str, ' ', args, ])
# Execute the command
retcode = subprocess.call(cmd_str,shell=True)
# Return an error if any
if retcode !=0:
sys.exit("Error while executing " + cmd_str + " Aborting")
def ticket_changed(self, ticket, comment, author, old_values):
# Called when a ticket is modified.
#
# `old_values` is a dictionary containing the previous values of
the
# fields that have changed.
self.log.info('Ticket modified: %r' % ticket)
def ticket_deleted(self, ticket):
# Called when a ticket is deleted.
self.log.info('Ticket deleted: %r' % ticket)
</code>
--
You received this message because you are subscribed to the Google Groups "Trac
Development" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/trac-dev?hl=en.