栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Altassian | Bitbucket Python API使用及相关任务自动化的实现

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Altassian | Bitbucket Python API使用及相关任务自动化的实现

本文总结如何调用Altassian的Bitbucket API及相关任务自动化的实现。
Updated: 2022 / 6 / 22


Altassian | Bitbucket Python API使用及相关任务自动化的实现
  • Bitbucket Python API
  • stashy
  • atlassian-python-api
    • Bitbucket Module
      • Manage Projects
      • Repository
        • File
  • 参考链接


Bitbucket Python API

目前可行的Bitbucket API 1’ 2

  • stashy 3’ 4
  • python-bitbucket 5
  • atlassian-python-api 6’ 7

stashy

根据用户名和密码登录Bitbucket Server

from stashy

stash = stashy.connect()
	url = 'http://YourServerAddr:7990',
	username = 'YourUsername',
	password = 'YourPassword')

atlassian-python-api Bitbucket Module

根据用户名和密码登录Bitbucket Server

from atlassian import Bitbucket

bitbucket = Bitbucket(
	url = 'http://YourServerAddr:7990',
	username = 'YourUsername',
	password = 'YourPassword')
Manage Projects
  • bitbucket.project.list()
bitbucket.project.list()
# {'key': ..., 'id': ..., 'name': ..., 'description': ..., 'public': ..., 'type': ..., 'links': {'self': [{'href': 'http://YourServerAdd:7990/projects/'key''}]}}
  • bitbucket.repo_list()
bitbucket.repo_list('YourProjectKey')
# {'slug': ..., 'id': ..., 'name': ..., 'description': ..., 'scmId': ..., 'state': ..., 'statusMessage': ..., 'forkable': ..., 'project': {'key': ..., 'id': ..., 'name': ..., 'description': ..., 'public': ..., 'type': ..., 'links': {'self': [{'href': 'http://YourServerAddr:7990/projects/YourProjectKey'}]}}, 'public': ..., 'links': {'clone': ..., [{'href': 'ssh://git@YourServerAddr: 7999/YourProjectKey/YourRepoSlug.git', 'name': 'ssh'}, {'href: 'http://YourServerAddr:7990/scm/YourProjectKey/YourReposlug.git', 'name': 'http'}], 'self': [{'href': 'http://YourServerAddr:7990/projects/YourProjectKey/repos/YourReposlug/browse'}]}
  • [x]

Repository File
  • bitbucket.get_file_list(project_key, repository_slug, sub_folder, query, start, limit)
FileList = bitbucket.get_file_list(project_key = YourProjectKey, repository_slug = YourRepoSlug, sub_folder = YourFilePath, query = YourBranchName, start = FromwhereStart, limit=None)

# list(FileList)可列出在该Project该Repo该Branch该Subfolder下从start开始的所有file name

  • bitbucket.get_content_file(project, repository, filename, at=None, markup=None)
FileCont = bitbucket.get_content_file(YourProjectKey, YourRepoSlug, YourFilePath&Name, YourBranch, markup=None)

type(FileCont)
# 

FILE = open('./FILE.csv', 'wb').write(FileCont)

  • bitbucket.download_repo_archive(project_key, repository_slug, dest_fd, at, filename, format, path, prefix, chunk_size)
with open('./File', mode='wb') as Yourfd:
	bitbucket.download_repo_archive(
		project_key = YourProjectKey,
		repository_slug = YourRepoSlug,
		dest_fd = Yourfd,
		at = YourBranch,
		path = YourFilePath&Name,
		format = zip)

# 或者
# fd = open('./File', mode = 'wb')
# bitbucket.download_repo_archive(
# 		project_key = YourProjectKey,
#		repository_slug = YourRepoSlug,
#		dest_fd = Yourfd,
#		at = YourBranch,
#		path = YourFilePath&Name,
#		format = zip)
# dest_fd.close()

参考链接
  1. python api for bitbucket ↩︎

  2. Bitbucket API ↩︎

  3. stashy ↩︎

  4. stashy Github ↩︎

  5. python-bitbucket ↩︎

  6. atlassian-python-api ↩︎

  7. atlassian-python-api Github ↩︎

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/987326.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号