构建taskcluster任务图
项目描述
Taskgraph
Taskgraph是一个用于生成Taskcluster CI服务任务图的Python库。一旦您的项目超过单个.taskcluster.yml文件,它就是推荐的配置任务的方法,并且是Firefox CI中构成超过30,000个任务(并持续增加)的引擎。
有关更多信息和使用说明,请查看文档。
工作原理
Taskgraph利用了Taskcluster是一个通用的任务执行平台这一事实。这意味着任务可以通过其综合API进行调度,而不仅限于由支持的事件触发。
Taskgraph利用这个执行平台,允许CI系统扩展到任何大小或复杂性。
通过Taskcluster的普通.taskcluster.yml文件创建了一个决策任务。此任务调用
taskgraph
。Taskgraph评估一系列基于yaml的任务定义(类似于其他CI服务提供的定义)。
Taskgraph对这些任务定义应用转换。转换是Python函数,可以程序性地修改或克隆任务定义。
Taskgraph应用一些可选的优化逻辑以删除不必要的任务。
Taskgraph通过其API将生成的任务图提交给Taskcluster。
Taskgraph通过声明性任务配置与程序性修改的组合,使其能够支持任何规模的CI系统。Taskgraph是驱动Firefox CI中30,000+任务的库。
安装
Taskgraph支持Python 3.8及以上版本,并可以从Pypi安装。
pip install taskcluster-taskgraph
或者,可以直接克隆仓库并安装。
git clone https://github.com/taskcluster/taskgraph
cd taskgraph
python setup.py install
在这两种情况下,建议使用Python 虚拟环境。
参与贡献
如果您想参与贡献,请参阅我们的贡献文档!
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
taskcluster_taskgraph-11.2.1.tar.gz (371.2 kB 查看哈希值)
构建分发
关闭
taskcluster_taskgraph-11.2.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | daede5d7b8d0e3c6fd48a8053fb0941f1fcf4437a0fbe40370c209009a8dec11 |
|
MD5 | c2940e45951c4a8f51193a27da804a47 |
|
BLAKE2b-256 | 57d69fadc127d90a8f33ed550972f4018996cea2bcb921d426fdb3277c6132ae |
关闭
taskcluster_taskgraph-11.2.1-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6d2c4e0e201801feedc63404cf3b654a5051bf7d724459a171bc3b0c2f674552 |
|
MD5 | 78295b0093add2ae144613230033674e |
|
BLAKE2b-256 | 5b00db4ea61b32c3de3d6aad9041e9e3cb44629e1f85d5ec72ae5c5786093c32 |