JIRA 4.2.1和;JIRA 4.3.3通过电子邮件进行集成
我想通过电子邮件集成两个JIRA实例,一个使用JIRA 4.2.1,另一个使用4.3.3 一个实例具有某些自定义字段,另一个实例具有某些自定义字段,两个JIRA实例都必须通过电子邮件交换问题详细信息和问题更新。i、 两者必须同步 比如说 1) 如果在实例1中创建了一个问题,则会触发一封邮件,并使用该邮件,实例2将在那里创建一个问题 2) 此外,如果在Inasce1中有一个问题的更新,那么将触发一封发送到实例2中的邮件,该邮件将更新实例2中的相同问题JIRA 4.2.1和;JIRA 4.3.3通过电子邮件进行集成,jira,Jira,我想通过电子邮件集成两个JIRA实例,一个使用JIRA 4.2.1,另一个使用4.3.3 一个实例具有某些自定义字段,另一个实例具有某些自定义字段,两个JIRA实例都必须通过电子邮件交换问题详细信息和问题更新。i、 两者必须同步 比如说 1) 如果在实例1中创建了一个问题,则会触发一封邮件,并使用该邮件,实例2将在那里创建一个问题 2) 此外,如果在Inasce1中有一个问题的更新,那么将触发一封发送到实例2中的邮件,该邮件将更新实例2中的相同问题 希望天气转晴 如果我没有弄错你的意图,我相信使
希望天气转晴 如果我没有弄错你的意图,我相信使用。例如,您可以使用XML-RPC库轻松编写Python脚本,比较两个系统并在需要时更新它们 你所建议的电子邮件方法的问题是,你很容易造成一个无休止的问题产生循环 首先,在两个实例中创建一个自定义字段,并将其称为“Sync”。一旦我们同步问题,这将用于标记问题 接下来 最后,编写一个脚本,通过RPC复制问题,例如:
#!/usr/bin/python
# Sample Python client accessing JIRA via XML-RPC. Methods requiring
# more than basic user-level access are commented out.
#
# Refer to the XML-RPC Javadoc to see what calls are available:
# http://docs.atlassian.com/software/jira/docs/api/rpc-jira-plugin/latest/com/atlassian/jira/rpc/xmlrpc/XmlRpcService.html
import xmlrpclib
s1 = xmlrpclib.ServerProxy('http://your.first.jira.url/rpc/xmlrpc')
auth1 = s1.jira1.login('user', 'password')
s2 = xmlrpclib.ServerProxy('http://your.second.jira.url/rpc/xmlrpc')
auth2 = s2.jira1.login('user', 'password')
# go trough all issues that appear in the next filter
filter = "10200"
issues = s1.jira1.getIssuesFromFilter(auth1, filter)
for issue in issues:
# read issues:
for customFields in issue['customFieldValues']:
if customFields['customfieldId'] == 'customfield_10412': # sync custome field
# cf exists , dont sync!
continue
# no sync field, sync now
proj = issue['project']
type = issue['type']
sum = issue['summary']
desc = issue['project']
newissue = s2.jira1.createIssue(auth2, { "project": issue['project'], "type": issue['type'], "summary": issue['summary'], "description": issue['description']})
print "Created %s/browse/%s" % (s.jira1.getServerInfo(auth)['baseUrl'], newissue['key'])
# mark issue as synced
s.jira1.updateIssue(auth, issue['key'], {"customfield_10412": ["yes"]})
脚本没有经过测试,但应该可以运行。您可能需要复制您拥有的其他字段,以获取更多信息。同样,这只是一种方式的同步,您也必须以另一种方式进行同步。如果我没有弄错您的意图,我相信有一种更简单的方法可以使用。例如,您可以使用XML-RPC库轻松编写Python脚本,比较两个系统并在需要时更新它们 你所建议的电子邮件方法的问题是,你很容易造成一个无休止的问题产生循环 首先,在两个实例中创建一个自定义字段,并将其称为“Sync”。一旦我们同步问题,这将用于标记问题 接下来 最后,编写一个脚本,通过RPC复制问题,例如:
#!/usr/bin/python
# Sample Python client accessing JIRA via XML-RPC. Methods requiring
# more than basic user-level access are commented out.
#
# Refer to the XML-RPC Javadoc to see what calls are available:
# http://docs.atlassian.com/software/jira/docs/api/rpc-jira-plugin/latest/com/atlassian/jira/rpc/xmlrpc/XmlRpcService.html
import xmlrpclib
s1 = xmlrpclib.ServerProxy('http://your.first.jira.url/rpc/xmlrpc')
auth1 = s1.jira1.login('user', 'password')
s2 = xmlrpclib.ServerProxy('http://your.second.jira.url/rpc/xmlrpc')
auth2 = s2.jira1.login('user', 'password')
# go trough all issues that appear in the next filter
filter = "10200"
issues = s1.jira1.getIssuesFromFilter(auth1, filter)
for issue in issues:
# read issues:
for customFields in issue['customFieldValues']:
if customFields['customfieldId'] == 'customfield_10412': # sync custome field
# cf exists , dont sync!
continue
# no sync field, sync now
proj = issue['project']
type = issue['type']
sum = issue['summary']
desc = issue['project']
newissue = s2.jira1.createIssue(auth2, { "project": issue['project'], "type": issue['type'], "summary": issue['summary'], "description": issue['description']})
print "Created %s/browse/%s" % (s.jira1.getServerInfo(auth)['baseUrl'], newissue['key'])
# mark issue as synced
s.jira1.updateIssue(auth, issue['key'], {"customfield_10412": ["yes"]})
脚本没有经过测试,但应该可以运行。您可能需要复制您拥有的其他字段,以获取更多信息。同样,这只是一种方式的同步,您也必须以另一种方式进行同步。目的很清楚,但不清楚的是您到底面临什么问题?您建议的是JIRA服务器之间的问题同步。一般来说,这不是一个容易解决的问题。我不认为我会用电子邮件来传递信息。尝试REST或SOAP API。但更好的办法是合并两个JIRA实例。是否可以在JIRA中使用SOAP发送邮件?目的是使两个JIRA同步。我不熟悉JIRA同步,所以我正在寻找解决方案。目的很清楚,但不清楚的是您到底面临什么问题?您建议的是JIRA服务器之间的问题同步。一般来说,这不是一个容易解决的问题。我不认为我会用电子邮件来传递信息。尝试REST或SOAP API。但更好的办法是合并两个JIRA实例。是否可以在JIRA中使用SOAP发送邮件?目的是使两个JIRA同步。我是这个JIRA同步的新手,所以我正在寻找解决方案。我对这个JIRA、XML RPC和Python非常陌生,你能指导我吗?我对这个JIRA、XML RPC和Python非常陌生,你能指导我吗?