Jira Logger CLI 工具

0.5.3 2023-08-11 15:34 UTC

README

Stable PHP License

目录

安装

常规

  • 先决条件
    • PHP 版本 >= 7.2
    • PHP SQLite 扩展
    • Composer 包管理器
  • 运行以下命令以获取 Jira logger 项目
composer create-project mohamed-abdul-fattah/jira-logger
cd jira-logger
# List Jira logger commands
php jiralogger list

Docker

  • 先决条件
  • 运行以下命令通过 docker 设置 Jira logger
composer create-project mohamed-abdul-fattah/jira-logger
cd jira-logger
docker-compose up -d
# Use the following command to interacte with the jiralogger
# through the docker container
docker exec -it jiralogger-cli php jiralogger

用法

设置命令

setup 命令应在设置命令行工具时运行一次,以创建数据库并请求您的 Jira 服务器 URI。

# https://jira.com/ is an example of your Jira server URI
php jiralogger setup https://jira.com/

时区命令

使用 config:timezone 命令配置开始和结束日志时间的时区

php jiralogger config:timezone
# Choose between UTC and Africa/Cairo timezones

连接命令

connect 命令是您与 Jira 服务器进行身份验证的方式。日志同步过程需要身份验证。

与 Jira 服务器进行身份验证有两种方式

  1. 基于 Cookie 的身份验证(已弃用的旧机制)
# This way, connect command will ask for your Jira username and password
php jiralogger connect --use-cookies

# You can provide username via command options
php jiralogger connect -u john.doe --use-cookies
  1. 使用 API 令牌进行基本身份验证。从这里获取您的 Jira API 令牌。
# This way, connect will ask for you Jira username (email) and API token
php jiralogger connect

# You can provide username via command options alongside with the API token
php jiralogger connect -u john.doe@jira.com --api-token token

启动命令

使用 log:start 命令为 Jira 任务启动日志计时器。

# Running start with task ID would start with "now" time
php jiralogger log:start TASK-123

# Optionally, you can provide log starting time and log description
php jiralogger log:start TASK-123 -t 13:20 -d "Work in progress"

使用 tempo 扩展进行具有自定义属性的日志记录(有关更多信息,请参阅 tempo 部分)可以通过 group 选项处理。有关自定义属性的信息,请参阅 tempo 属性

php jiralogger log:start TASK-123 -g groupname

停止命令

使用 log:stop 命令停止 Jira 任务的日志计时器。

# Running stop will stop task at "now" time
php jiralogger log:stop

# Optionally, you can provide end time and override starting description
php jiralogger log:stop -t 15:30 -d "DONE"

使用 tempo 扩展进行具有自定义属性的日志记录(有关更多信息,请参阅 tempo 部分)可以通过 group 选项处理。有关自定义属性的信息,请参阅 tempo 属性

# Override provided tempo group on log:start
php jiralogger log:stop -g groupname

状态命令

使用 log:status 命令获取当前运行的任务信息(如果有)以及总未同步日志项数。

php jiralogger log:status

中止命令

使用 log:abort 命令中止已启动的 Jira 任务的日志计时器。

php jiralogger log:abort

同步命令

使用 log:sync 命令同步并将时间记录到 Jira 任务。需要通过 connect 命令进行身份验证

php jiralogger log:sync

Tempo

Tempo 是一个用于更好的时间跟踪和报告的 Jira 扩展。在使用 Tempo 功能之前,请与您的管理员确认是否已在您的 Jira 服务器上安装了 Tempo。

属性命令

使用 tempo:attributes 保存由您的 Jira 管理员添加的自定义属性。

php jiralogger tempo:attributes '{"_Role_": {"name": "Role","value": "Developer","workAttributeId": 2},"_Account_": {"name": "Account","value": "PROJ","workAttributeId": 3}}'

默认情况下,属性将保存到 default 组名下。虽然您可以使用不同的组名提供不同的属性。

php jiralogger tempo:attributes '{"_Role_": {"name": "Role","value": "Developer","workAttributeId": 2},"_Account_": {"name": "Account","value": "PROJ","workAttributeId": 3}}' -g mygroup

属性列表命令

使用 tempo:list 列出通过 tempo:attributes 保存的属性。

php jiralogger tempo:list

Tempo 同步命令

使用 tempo:sync 使用 Tempo 属性将日志同步到 Jira。默认属性组用于未分组日志,而分组日志(使用 group 选项记录的日志)将使用其组。

# By default the tempo group is "default"
php jiralogger tempo:sync
# You can override tempo group using group option
php jiralogger tempo:list -g groupname

贡献

请阅读CONTRIBUTING.md以了解向本项目提交pull request的详细过程。

许可证

本项目遵循MIT许可证 - 详细内容请参阅LICENSE文件。

变更日志

请阅读CHANGELOG.md以获取关于版本更新的更多详细信息。