[trac]配置trac实例权限的脚本

本文介绍了一个使用Python编写的脚本,该脚本能够为多个Trac实例批量设置用户权限,简化了管理员的工作流程。通过配置文件指定项目列表、用户列表及所需权限,脚本可以轻松地为不同用户组分配特定权限。
Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

   如果要为多个trac实例分配权限, 而且每一个trac实例又有多个用户, 做起来挺枯燥的,. 于是我用python写了个 脚本, 用来为多个trac实例分配权限. 代码如下, SetPermission.py是实现代码, PermissionConf.py是配置文件.

SetPermission.py

#--*-- coding:cp936 --*--

"""
@file: SetPermission.py
    配置trac实例的权限
@author: riag 
@contract: riag@163.com, http://blog.csdn.net/riag
@version: 0.10
@summary: 
@change: 
"""


import os
import PermissionConf
import traceback
import sys

if __name__ == "__main__":
    PythonPath 
= raw_input("输入python安装路径(默认值:C:/Python24, 选默认值按回车即可): ") ;
    
if PythonPath:
        TracAdminPath 
=PythonPath + "/Scripts/trac-admin" ;
    
else
        PythonPath 
= "C:/Python24"
        TracAdminPath 
= "C:/Python24/Scripts/trac-admin" ;
    
    RunTracAdmin 
= "python "+ TracAdminPath ;
    
print RunTracAdmin
    
    
if PermissionConf.Commd:
        Commd 
= PermissionConf.Commd
    
else: Commd = "add" ;
    
    PermissionsList 
= "";
    
for elem in PermissionConf.Permissions:
        PermissionsList 
+= elem ;
        PermissionsList 
+= " " ;
    
    
try:
        
if PermissionsList:
            
for elem in PermissionConf.ProjectList:
                RunPermissions 
= RunTracAdmin + " " + elem + " permission " + Commd + " ";
                
for user_elem in PermissionConf.UserList:
                    RunCommd 
=RunPermissions + user_elem + " " + PermissionsList
                    
print RunCommd
                    os.system(RunCommd)
    
except:
        traceback.print_exc(file 
= sys.stdout)
    
    
    os.system(
"pause") ;
    

 

PermissionConf.py

#--*-- coding:cp936 --*--

#每个项目的路径
ProjectList = ("c:/trac1""d:/trac2")
#用户
UserList = ("a""b")

#Permissions = ("TRAC_ADMIN") #最高权限
Permissions = ("TICKET_CREATE""WIKI_CREATE""WIKI_MODIFY""TICKET_APPEND""TICKET_MODIFY""BLOG_POSTER""BROWSER_VIEW"#开发人员权限
#
Permissions = ("BLOG_POSTER", "TICKET_CREATE", "TICKET_APPEND", "TICKET_MODIFY", "WIKI_CREATE", "WIKI_MODIFY") #测试人员权限

Commd 
= "add" #添加权限
#
Commd = "remove" #删除权限

 

 

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值