与jfrog artifactory rest api的类型化交互

pyartifactor的Python项目详细描述


python工件厂

Codacy BadgeBuild Status

python-artifactory是访问Artifactory REST API的python库。

此库使您能够管理应用程序中的工件资源,如用户、组、权限、存储库和工件。 它至少需要python 3.6

目录

用法

认证

frompyartifactoryimportArtifactoryart=Artifactory(url="ARTIFACTORY_URL",auth=('USERNAME','PASSORD_OR_API_KEY'))

ssl证书验证选项

指定要用作客户端证书的本地证书

frompyartifactoryimportArtifactoryart=Artifactory(url="ARTIFACTORY_URL",auth=('USERNAME','PASSORD_OR_API_KEY'),cert="/path_to_file/server.pem")

禁用主机证书验证

frompyartifactoryimportArtifactoryart=Artifactory(url="ARTIFACTORY_URL",auth=('USERNAME','PASSORD_OR_API_KEY'),verify=False)

管理对象

用户

首先,您需要创建一个新的artifactory对象。

frompyartifactoryimportArtifactoryart=Artifactory(url="ARTIFACTORY_URL",auth=('USERNAME','PASSORD_OR_API_KEY'))

获取用户列表:

users=art.users.list()

获取单个用户:

users=art.users.get("test_user")

创建/更新用户:

frompyartifactory.models.UserimportNewUser# Create Useruser=NewUser(name="test_user",password="test_password",email="user@user.com")new_user=art.users.create(user)# Update useruser.email="test@test.com"updated_user=art.users.update(user)

删除用户:

art.users.delete("test_user")

获取组列表:

users=art.groups.list()

获取单个组:

users=art.groups.get("group_name")

创建/更新组:

frompyartifactory.models.GroupimportGroup# Create a Groupgroup=Group(name="test_group",description="test_group")new_group=art.groups.create(group)# Update usergroup.description="test_group_2"updated_group=art.groups.update(group)

删除组:

art.groups.delete("test_group")

安全性

一组对apikey、密码执行操作的方法…

>>>art.security.art.security.create_api_key(art.security.get_encrypted_password(art.security.revoke_api_key(art.security.get_api_key(art.security.regenerate_api_key(art.security.revoke_user_api_key(

储存库

获取存储库列表:

repositories=art.repositories.list()

获取单个存储库(本地、虚拟或远程):

local_repo=art.groups.get_local_repo("local_repo_name")virtual_repo=art.groups.get_virtual_repo("virtual_repo_name")remote_repo=art.groups.get_remote_repo("remote_repo_name")

创建/更新存储库:

frompyartifactory.models.RepositoryimportLocalRepository,VirtualRepository,RemoteRepository# Create a repositorylocal_repo=LocalRepository(key="test_local_repo")new_local_repo=art.repositories.create_local_repo(local_repo)# Update a repositorylocal_repo.description="test_local_repo"updated_local_repo=art.repositories.update_local_repo(local_repo)# Same process for Virtual and Remote repositories

删除存储库:

art.repositories.delete("test_local_repo")

权限

获取权限列表:

permissions=art.permissions.list()

获得单一权限:

users=art.permissions.get("test_permission")

创建/更新权限:

frompyartifactory.models.PermissionimportPermission# Create a permissionpermission=Permission(**{"name":"test_permission","repositories":["test_repository"],"principals":{"users":{"test_user":["r","w","n","d"]},"groups":{"developers":["r"]},},})perm=art.permissions.create(permission)# Update permissionpermission.repositories=["test_repository_2"]updated_permission=art.permissions.update(permission)

删除权限:

art.permissions.delete("test_permission")

工件和构建

工件

待定

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java不调用未来。有什么问题吗?   isSelected(),isDisplayed在selenium、java for checkbox中不适用于我。其中xpath不显示是选中还是未选中   java在线应用程序创建者是如何工作的?是否有任何示例源代码可供查看?   Rest服务中的java Spring启动自定义异常   java将成员对象添加到ArrayList<Membership>   关键字这个Java项目如何使用语言保留字作为标识符?   字符串格式如何在Java中打印列中的双精度数组   java libgdx动画仅在事件上出现一次   java如何使用spring。应用docker容器上RestTemplate url中的名称?   java Hibernate UnuniqueObjectException:具有相同标识符值的不同对象已与会话关联   使用leapmotion、光标显示的java处理   java Libgdx Box2D仅针对少数特定对象控制冲突响应   带外键的java Spring数据JPA@Query:参数不匹配   java在我的“ifelse”语句中遇到问题,我不知道如何将文本字段转换为整数(或其他)   java Maven插件没有在我希望的地方运行