Trac api
There are many ways to install trac, I use the next one:
# apt-get install apache2-utils # for ubuntu virtualenv .env --no-site-packages source .env/bin/activate easy_install Trac==1.0 easy_install -Z -U http://trac-hacks.org/svn/xmlrpcplugin/trunk mkdir /PATH_TO_TRAC/mytrac trac-admin /PATH_TO_TRAC/mytrac initenv # set trac name and database vim /PATH_TO_TRAC/mytrac/conf/trac.ini # add to trac.ini: # [components] # tracrpc.* = enabled # create htpasswd file /usr/sbin/htpasswd -b /PATH_TO_TRAC/mytrac/.htpasswd <username> <pass> # use -c option for first time # add admin user trac-admin /PATH_TO_TRAC/mytrac permission add <username> TRAC_ADMIN # test it tracd -p 8020 -s --basic-auth="*,/PATH_TO_TRAC/mytrac/.htpasswd,realm" /PATH_TO_TRAC/mytrac # navigate to http://127.0.0.1:8020
Using trac api to create a new ticket:
import xmlrpclib API_URL = 'http://<username>:<pass>@127.0.0.1:8020/login/xmlrpc' if __name__ == '__main__': attributes = { 'status': 'new', 'priority': 'major', 'type': 'common' } subject = 'Some issue' description = 'Some description ...' server = xmlrpclib.ServerProxy(API_URL) ticket_id = server.ticket.create( subject, description, attributes ) print 'Ticket #{ticket_id} was created'.format(ticket_id=ticket_id)
Result (navigate to http://127.0.0.1:8020/ticket/1
):
Links:
Licensed under CC BY-SA 3.0