通过python-rally-API更新“显示名”

2024-05-23 18:15:58 发布

您现在位置:Python中文网/ 问答频道 /正文

为了在Rally中唯一地标识用户,我们需要更新用户的显示名称字段,以便可以标识两个同名的人。你知道吗

e.g. John D(johnd@test.com)
     John G(johng@test.com)

尝试在下面的代码片段中获取所有用户,然后将使用update()post()方法更改displayName上面的格式。你知道吗

import sys
from pyral import Rally, rallyWorkset
options = [arg for arg in sys.argv[1:] if arg.startswith('--')]
args    = [arg for arg in sys.argv[1:] if arg not in options]
server = "rally1.rallydev.com"
apikey = "<rally_api_key>"
workspace = "<myworkspace>"
#project = "<myproject>"
rally = Rally(server,apikey=apikey, workspace=workspace)
rally.enableLogging('mypyral.log')

all_users = rally.getAllUsers()
for user in all_users:
    tz   = user.UserProfile.TimeZone or 'default'
    role = user.Role or '-No Role-'
    values = (int(user.oid), user.Name, user.UserName, role, tz)
    print("%12.12d %-24.24s %-30.30s %-12.12s" % values)    

不提供任何输出-逻辑变成无限循环

是否有其他方法更新所有用户的显示名称字段。你知道吗


Tags: 用户intest名称comforsysarg
1条回答
网友
1楼 · 发布于 2024-05-23 18:15:58

不确定这是否有用,但它在Ruby中有效:

$ cat -n Print-All-Users-short.rb 
 1  #!/usr/bin/env ruby
 2  $my_base_url    = 'http://rally1.rallydev.com'
 3  $my_username    = 'Secret'
 4  $my_password    = 'MoreSecret'
 5  $my_workspace   = 'Integrations'
 6  
 7  require './MyVars.rb' if FileTest.exist?( './MyVars.rb' )
 8  require 'rally_api'
 9  
10  @rallycon = RallyAPI::RallyRestJson.new({
11          :base_url       => $my_base_url,
12          :username       => $my_username,
13          :password       => $my_password,
14          :workspace      => $my_workspace,
15          :version        => 'v2.0',
16          :headers        => RallyAPI::CustomHttpHeader.new(:name=>'Print-All-Users-short.rb', :vendor=>'MySelf', :version=>'3.14159')
17          })
18  
19  all_users = @rallycon.find(RallyAPI::RallyQuery.new(
20                  :type           => :user,
21                  :query_string   => "(ObjectID > 0)",
22                  :fetch          => true))
23  
24  if all_users.count < 1 then     # Did we find too few?
25      print "ERROR: Query returned nothing.\n"
26      exit (-1)
27  end
28  print "Query returned #{all_users.count} users.\n"

$ ./Print-All-Users-short.rb
Query returned 109 users.

相关问题 更多 >