本文整理汇总了Python中trac.attachment.Attachment.description方法的典型用法代码示例。如果您正苦于以下问题:Python Attachment.description方法的具体用法?Python Attachment.description怎么用?Python Attachment.description使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类trac.attachment.Attachment
的用法示例。
在下文中一共展示了Attachment.description方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: setUp
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def setUp(self):
ProductResourceTestCase.setUp(self)
self.global_env.path = os.path.join(tempfile.gettempdir(), "trac-tempenv")
if os.path.exists(self.global_env.path):
shutil.rmtree(self.global_env.path)
os.mkdir(self.global_env.path)
attachment = Attachment(self.global_env, "ticket", 1)
attachment.description = "Global Bar"
attachment.insert("foo.txt", StringIO(""), 0)
attachment = Attachment(self.env1, "ticket", 1)
attachment.description = "Product Bar"
attachment.insert("foo.txt", StringIO(""), 0)
self.resource = resource.Resource("ticket", 1).child("attachment", "foo.txt")
示例2: image_setup
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def image_setup(tc):
add_pages(tc, ['page:fr'])
from trac.attachment import Attachment
tc.env.path = tempfile.mkdtemp(prefix='trac-tempenv-')
attachment = Attachment(tc.env, 'wiki', 'page:fr')
attachment.description = "image in page:fr"
attachment.insert('img.png', StringIO(''), 0, 2)
示例3: _create_attachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def _create_attachment(self, req, tid, upload, description):
attachment = Attachment(self.env, "ticket", tid)
if hasattr(upload.file, "fileno"):
size = os.fstat(upload.file.fileno())[6]
else:
upload.file.seek(0, 2)
size = upload.file.tell()
upload.file.seek(0)
if size == 0:
raise TracError(_("Can't upload empty file"))
max_size = self.env.config.get("attachment", "max_size")
if 0 <= max_size < size:
raise TracError(_("Maximum attachment size: %(num)s bytes", num=max_size), _("Upload failed"))
filename = _normalized_filename(upload.filename)
if not filename:
raise TracError(_("No file uploaded"))
attachment.description = description
attachment.author = get_reporter_id(req, "author")
attachment.ipnr = req.remote_addr
attachment.insert(filename, upload.file, size)
示例4: _process_attachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def _process_attachment(self, req, config, build):
resource_id = req.args['member'] == 'config' \
and build.config or build.resource.id
upload = req.args['file']
if not upload.file:
send_error(req, message="Attachment not received.")
self.log.debug('Received attachment %s for attaching to build:%s',
upload.filename, resource_id)
# Determine size of file
upload.file.seek(0, 2) # to the end
size = upload.file.tell()
upload.file.seek(0) # beginning again
# Delete attachment if it already exists
try:
old_attach = Attachment(self.env, 'build',
parent_id=resource_id, filename=upload.filename)
old_attach.delete()
except ResourceNotFound:
pass
# Save new attachment
attachment = Attachment(self.env, 'build', parent_id=resource_id)
attachment.description = req.args.get('description', '')
attachment.author = req.authname
attachment.insert(upload.filename, upload.file, size)
self._send_response(req, 201, 'Attachment created', headers={
'Content-Type': 'text/plain',
'Content-Length': str(len('Attachment created'))})
示例5: import_wiki_attachments
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def import_wiki_attachments(self, template_path):
"""Imports wiki attachments from template using the Attachment API."""
# check that there are attachments to import
template_attachment_path = os.path.join(template_path, 'attachments', 'wiki')
if os.path.isdir(template_attachment_path):
# clear the wiki attachment table
@self.env.with_transaction()
def clear_attachments(db):
"""Clears any wiki attachments from the current attachment table."""
cursor = db.cursor()
cursor.execute("DELETE FROM attachment WHERE type='wiki'")
# move attachment file into the env and insert database row
filepath = os.path.join(template_path, 'attachment.xml')
tree = ET.ElementTree(file=filepath)
for att in tree.getroot():
attachment = Attachment(self.env, 'wiki', att.attrib['parent_id'])
attachment.description = att.text
try:
fileobj = open(os.path.join(template_attachment_path,
att.attrib['parent_id'], unicode_quote(att.attrib['name'])))
attachment.insert(att.attrib['name'], fileobj, att.attrib['size'])
except IOError:
self.log.info("Unable to import attachment %s", att.attrib['name'])
示例6: addTicket
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def addTicket(self, ticket, source):
'''Add a ticket from a dict'''
db = self._env.get_db_cnx()
cursor = db.cursor()
idCountRes = cursor.execute('select count(*) as count from ticket where id = %s', (ticket['id'],))
idCount = idCountRes.fetchone()[0]
assert idCount == 0, 'Ticket %s found in %s' % (ticket['id'], self.name)
insertMainTicketQuery = 'insert into ticket (id, type, time, changetime, component, severity, priority, owner, \
reporter, cc, version, milestone, status, resolution, summary, description, keywords) \
values (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)'
insertMainTicketValues = (ticket['id'], ticket['type'], ticket['time'], ticket['changetime'], ticket['component'], \
ticket['severity'], ticket['priority'], ticket['owner'], ticket['reporter'], ticket['cc'], ticket['version'], \
ticket['milestone'], ticket['status'], ticket['resolution'], ticket['summary'], ticket['description'], ticket['keywords'])
insertMainTicketRes = cursor.execute(insertMainTicketQuery, insertMainTicketValues)
#so we know where the ticket came from
insertTicketSourceQuery = 'insert into ticket_custom (ticket, name, value) values (%s, %s, %s)'
insertTicketSourceValues = (ticket['id'], 'project', source)
insertTicketSourceRes = cursor.execute(insertTicketSourceQuery, insertTicketSourceValues)
insertTicketChangeQuery = 'insert into ticket_change (ticket, time, author, field, oldvalue, newvalue) values (%s, %s, %s, %s, %s, %s)'
for ticket_change in ticket['ticket_change']:
insertTicketChangeValues = (ticket['id'], ticket_change['time'], ticket_change['author'], ticket_change['field'], ticket_change['oldvalue'], ticket_change['newvalue'])
insertTicketChangeRes = cursor.execute(insertTicketChangeQuery, insertTicketChangeValues)
for a in ticket['attachment']:
ticketAttach = Attachment(self._env, 'ticket', ticket['id'])
ticketAttach.description = a['description']
ticketAttach.author = a['author']
ticketAttach.ipnr = a['ipnr']
ticketAttach.insert(a['filename'], a['fileobj'], a['size'], t=a['time'])
db.commit()
示例7: _create_attachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def _create_attachment(self, req, ticket, upload, description):
if hasattr(upload, 'filename'):
attachment = Attachment(self.env, 'ticket', ticket.id)
if hasattr(upload.file, 'fileno'):
size = os.fstat(upload.file.fileno())[6]
else:
upload.file.seek(0, 2)
size = upload.file.tell()
upload.file.seek(0)
if size == 0:
raise TracError(_("Can't upload empty file"))
max_size = self.env.config.get('attachment', 'max_size')
if max_size >= 0 and size > max_size:
raise TracError(_('Maximum attachment size: %(num)s bytes', num=max_size), _('Upload failed'))
filename = unicodedata.normalize('NFC', unicode(upload.filename, 'utf-8'))
filename = filename.replace('\\', '/').replace(':', '/')
filename = os.path.basename(filename)
if not filename:
raise TracError(_('No file uploaded'))
attachment.description = description
if 'author' in req.args:
attachment.author = get_reporter_id(req, 'author')
attachment.ipnr = req.remote_addr
attachment.insert(filename, upload.file, size)
示例8: addAttachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def addAttachment(self, ticket_id, filename, datafile, filesize,
author, description, upload_time):
# copied from bugzilla2trac
attachment = Attachment(self.env, 'ticket', ticket_id)
attachment.author = author
attachment.description = description
attachment.insert(filename, datafile, filesize, upload_time)
del attachment
示例9: setUp
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def setUp(self):
ProductResourceTestCase.setUp(self)
self.global_env.path = os.path.join(tempfile.gettempdir(),
'trac-tempenv')
if os.path.exists(self.global_env.path):
shutil.rmtree(self.global_env.path)
os.mkdir(self.global_env.path)
attachment = Attachment(self.global_env, 'ticket', 1)
attachment.description = 'Global Bar'
attachment.insert('foo.txt', StringIO(''), 0)
attachment = Attachment(self.env1, 'ticket', 1)
attachment.description = 'Product Bar'
attachment.insert('foo.txt', StringIO(''), 0)
self.resource = resource.Resource('ticket',
1).child('attachment', 'foo.txt')
示例10: image_setup
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def image_setup(tc):
add_pages(tc, ['page:fr'])
from trac.attachment import Attachment
tc.env.path = tempfile.mkdtemp(prefix='trac-tempenv-')
attachment = Attachment(tc.env, 'wiki', 'page:fr')
attachment.description = "image in page:fr"
attachment.insert('img.png', StringIO(''), 0, 2)
htdocs_location = 'http://assets.example.org/common'
tc.context.req.chrome['htdocs_location'] = htdocs_location
tc.env.config.set('trac', 'htdocs_location', htdocs_location)
示例11: addAttachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def addAttachment(self, author, a):
if a["filename"] != "":
description = a["description"]
id = a["bug_id"]
filename = a["filename"]
filedata = StringIO.StringIO(a["thedata"])
filesize = len(filedata.getvalue())
time = a["creation_ts"]
print " ->inserting attachment '%s' for ticket %s -- %s" % (filename, id, description)
attachment = Attachment(self.env, "ticket", id)
attachment.author = author
attachment.description = description
attachment.insert(filename, filedata, filesize, datetime2epoch(time))
del attachment
示例12: attach
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def attach(self, ticket, image):
attachment = Attachment(self.env, 'ticket', ticket.id)
attachment.author = ticket['reporter']
attachment.description = ticket['summary']
image.file.seek(0,2) # seek to end of file
size = image.file.tell()
filename = image.filename
image.file.seek(0)
attachment.insert(filename, image.file, size)
# XXX shouldn't this only be called for, like, the
# first image or whenever you really want to set the default?
from imagetrac.default_image import DefaultTicketImage
if self.env.is_component_enabled(DefaultTicketImage):
DefaultTicketImage(self.env).set_default(ticket.id, filename)
示例13: addAttachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def addAttachment(self, author, a):
if a['filename'] != '':
description = a['description']
id = a['bug_id']
filename = a['filename']
filedata = StringIO.StringIO(a['thedata'])
filesize = len(filedata.getvalue())
time = a['creation_ts']
print " ->inserting attachment '%s' for ticket %s -- %s" % \
(filename, id, description)
attachment = Attachment(self.env, 'ticket', id)
attachment.author = author
attachment.description = description
attachment.insert(filename, filedata, filesize, datetime2epoch(time))
del attachment
示例14: addAttachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def addAttachment(self, author, a):
description = a['description'].encode('utf-8')
id = a['bug_id']
filename = a['filename'].encode('utf-8')
filedata = StringIO.StringIO(a['thedata'].tostring())
filesize = len(filedata.getvalue())
time = a['creation_ts']
print " ->inserting attachment '%s' for ticket %s -- %s" % \
(filename, id, description)
attachment = Attachment(self.env, 'ticket', id)
attachment.author = author
attachment.description = description
attachment.insert(filename, filedata, filesize, time.strftime('%s'))
del attachment
示例15: putAttachment
# 需要导入模块: from trac.attachment import Attachment [as 别名]
# 或者: from trac.attachment.Attachment import description [as 别名]
def putAttachment(self, req, ticket, filename, description, data, replace=True):
""" Add an attachment, optionally (and defaulting to) overwriting an
existing one. Returns filename."""
if not model.Ticket(self.env, ticket).exists:
raise TracError, 'Ticket "%s" does not exist' % ticket
if replace:
try:
attachment = Attachment(self.env, 'ticket', ticket, filename)
attachment.delete()
except TracError:
pass
attachment = Attachment(self.env, 'ticket', ticket)
attachment.author = req.authname or 'anonymous'
attachment.description = description
attachment.insert(filename, StringIO(data.data), len(data.data))
return attachment.filename