DOMJudge自动为私人竞赛创建100个用户

时间:2019-05-23 05:30:36

标签: uva acm-icpc

有没有一种方法可以自动为DOMJudge中的私人竞赛创建100个用户。我正在运行DOMJudge 6.0,可以升级到7.0 +

我正在探索2个选择

 1. DOMJudge API
    a. No API to create users and teams - https://www.domjudge.org/demoweb/api/doc
 2. Import/Export teams and users
    a. I see groups, teams and accounts in drop down menu. accounts.tsv in my DOMJudge link: https://domjudge.mydomain.com/jury/impexp.php
    b. Am able to download teams.tsv in the same page above, edit it and upload a new teams.tsv to import
    c. But am not able to see a sample accounts.tsv in the same page. I only see "Tab separated, export: groups.tsv, teams.tsv, scoreboard.tsv, results.tsv"
    d. The schema listed in wiki here (https://clics.ecs.baylor.edu/index.php?title=Contest_Control_System_Requirements#Appendix:_File_formats) doesnt seem to correlate with teams.tsv exported from above link.

2 个答案:

答案 0 :(得分:0)

由于我没有在线找到解决方案,所以我编写了一个脚本来自动将用户添加到DOMJudge表中,以简化用户添加工作流程。

这是script

答案 1 :(得分:0)

有一个特殊的脚本(尽管挺难谷歌搜索):create_accounts放在 / opt / domjudge / domserver / bin /

它需要用空格分隔的登录密码对和

  • 使用选定的密码创建用户
  • 创建与该用户同名的团队
  • 设置用户角色和团队角色(警告:默认为陪审团)

因此,要添加用户:

  1. 使用domserver计算机上的二进制文件转到目录。
cmp
  1. 使用用户和密码创建文件。可以使用pwgen生成随机密码,例如key
sort
  1. 重要!!如果要添加参与者,请更改 create_accounts 文件中的参数。
    • 参加者:4个(组织)-> 3个(参与者)
    • 角色= 2,3(陪审团,团队)-> 3(团队)
docker exec -it domserver bash  # if you use domserver in docker
cd /opt/domjudge/domserver/bin/
  1. 最后添加用户
pwgen 10 -A -0 -1 <users_count>