4 个版本
0.1.3 | 2023 年 4 月 11 日 |
---|---|
0.1.2 | 2023 年 3 月 6 日 |
0.1.1 | 2023 年 3 月 5 日 |
0.1.0 | 2023 年 3 月 5 日 |
#2775 在 命令行工具
20KB
377 行
线性模板器
从 TOML 文件创建线性工单,它目前支持创建 1 个父工单和每个 TOML 无限量的子工单。支持标题和描述中的 Handlebars 语法。
从 Crates.io 安装
# Linux and MacOS
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
安装 Linear Templater
cargo install linear_templater
用法
您需要设置环境变量 LINEAR_TOKEN
。我目前正以这种方式实现,以便每个 TOML 目录可以使用一个 .envrc
文件,并且一个人可以无缝地在多个 Linear 工作区之间切换。您可以从账户设置的 API 部分获取您的线性令牌。
使用帮助标志开始以获取最新的命令
> linear_templater -h
Create Linear Tickets from TOML files
Usage: linear_templater [OPTIONS]
Options:
-f, --fetch_ids <JSON FILE OUTPUT PATH>
Fetch ids for player and teams, and output to provided path as a JSON file
-c, --create_issues <PATH TO TOML FILE>
Read a TOML file and create a issues from it
-h, --help
Print help
-V, --version
Print version
示例
检索填写一些 TOML 文件所需的所有 ID
命令
LINEAR_TOKEN=xxxx linear_templater -f ~/Documents/output.json
结果
{
"data": {
"viewer": {
"id": "xxxxxx",
"name": "Batman",
"teamMemberships": {
"nodes": [
{
"team": {
"id": "yyyyyy",
"name": "Justice League",
"projects": {
"nodes": [
{
"id": "zzzzzz",
"name": "Upgrade infrastructure"
}
]
}
}
}
]
}
}
}
}
从 TOML 文件创建一系列工单
输入文件(使用 Handlebars 风格变量)
# build_batcave.toml
[variables]
name = "Alfred"
[parent]
title = "This is a parent issue"
team_id = "yyyyyy"
# optional
assignee_id = "xxxxxx"
project_id = "zzzzzz"
description = """
We need to create a batcave
See child tickets
"""
[[children]]
title = "This is a child issue for {{name}} to complete"
# optional
team_id = "yyyyyy"
assignee_id = "xxxxxx"
description = """
Figure out where to put the batcave
- Some place dark and dingy
- Make sure to coordinate with {{name}}
"""
[[children]]
title = "This is a second child issue that will be linked to the parent issue"
# optional
team_id = "yyyyyy"
assignee_id = "xxxxxx"
description = """
Make sure that we have enough bats
### Acceptance Criteria
- [ ] They can't bite too much
- [ ] At least a dozen
- [ ] Don't overdo it this time
"""
命令
LINEAR_TOKEN=xxxx linear_templater -c ~/Documents/build_batcave.toml
从目录中的所有 TOML 文件创建一系列工单
当传递一个目录时,Linear Templater 将递归遍历该目录及其所有子目录,并从所有不是 Cargo.toml
的 TOML 文件创建工单。
命令
# Create tickets from all TOML files in the current directory
LINEAR_TOKEN=xxxx linear_templater -c .
使用 direnv 管理您的 LINEAR_TOKEN
使用您选择的包管理器安装 direnv
echo export LINEAR_TOKEN=xxxx > .envrc
这消除了需要在所有命令前加上 LINEAR_TOKEN=xxxx 的需求
依赖项
~7–23MB
~318K SLoC