kevinpapst/kimai2-console

Kimai - 用于远程管理时间跟踪数据的控制台应用程序

1.0.1 2023-06-29 20:43 UTC

This package is auto-updated.

Last update: 2024-08-29 23:10:46 UTC


README

一个PHP应用程序,通过API(http)访问您的Kimai 2安装

要求

  • Kimai > v2.0.20
  • PHP 8.1或8.2
  • cURL扩展
  • json扩展
  • iconv扩展
  • zlib扩展
  • mbstring扩展

安装

要安装Kimai控制台工具,请执行以下命令

curl -LO https://github.com/kevinpapst/kimai2-console/releases/latest/download/kimai.phar
curl -LO https://github.com/kevinpapst/kimai2-console/releases/latest/download/kimai.phar.sha1
sha1sum --check kimai.phar.sha1
rm kimai.phar.sha1
chmod +x kimai.phar
mv kimai.phar /usr/local/bin/kimai

配置文件

首次使用之前,您需要创建一个配置文件,该文件包含Kimai的连接信息。默认情况下,此配置文件将位于~/.kimai2-console.json

kimai configuration

确保文件只能由您的用户读取

chmod 600 ~/.kimai2-console.json

这样,您现在就可以通过命令行使用Kimai了。

默认情况下,配置文件针对演示安装,并将正常工作。但现在,您需要将其指向自己的Kimai,因此请编辑配置文件并更改设置

  • URL:Kimai安装的URL
  • USERNAME:Kimai安装的URL
  • API_KEY:您的Kimai API密钥(可以在编辑个人资料时设置)
  • OPTIONS:CURL请求选项数组(见guzzle文档

常见问题解答

  • 我想使用自签名证书 - 在您的配置中添加"OPTIONS": {"verify": false}

可用命令

使用kimai获取所有可用命令的列表。

  • kimai active - 显示并更新所有正在运行的工时表(通过--description--tags
  • kimai stop - 停止当前活动的工时表并更新它们(通过--description--tags
  • kimai start - 开始新的工时表(见下文)
  • kimai customer:list - 显示客户列表
  • kimai project:list - 显示项目列表
  • kimai activity:list - 显示活动列表
  • kimai version - 显示远程安装的完整版本字符串
  • kimai configuration - 创建初始配置文件或显示它

要获取特定命令的帮助,请使用--help开关,例如:kimai project:list --help

开始工时表

此命令会尝试根据以下方式从您的输入中检测客户、项目和活动:

  • 如果它是一个数字,那么它将尝试通过其ID加载实体
    • 如果找到实体,它将被使用
  • 如果它是一个字符串,那么这只是一个搜索词
    • 如果找到一个实体,它将被使用
    • 如果找到多个实体,将显示选择列表
  • 如果没有提供或在前一步中没有找到结果,将获取并显示所有实体的列表以供选择
    • 此列表可能已被过滤(例如,仅找到的项目中的活动)

此最简单的示例将显示所有客户的列表,然后显示所选客户的项目列表,最后显示所选项目的所有活动列表

bin/kimai start

仅通过搜索词启动新工时表的示例,添加描述和一些标签

bin/kimai start --customer Schowalter --project analyzer --activity iterate --description "working for fun" --tags "test, bla foo, tagging"

 [OK] Started timesheet                                                                                                 

 ------------- ------------------------------------ 
  ID            5085                                
  Begin         2020-01-03T23:34:26+0100            
  Description   working for fun                     
  Tags          bla foo                             
                test                                
                tagging                             
  Customer      Schowalter PLC                      
  Project       Grass-roots system-worthy analyzer  
  Activity      iterate viral infomediaries         
 ------------- ------------------------------------ 

输出格式

:listing命令显示所有找到的实体的格式化表格。

如果您想在脚本中使用输出而不是手动查看,请使用 --csv 开关。

环境变量

以下环境变量受到支持

  • KIMAI_MEMORY_LIMIT - 配置允许的内存限制(例如 128MB,或者 -1 表示无限)(见这里
  • KIMAI_CONFIG - 您配置文件的路径(默认为:$HOME/.kimai2-console.json)

常见问题解答

更新控制台工具

重新执行初始安装过程,并用最新的发布版本覆盖 /usr/local/bin/kimai 文件(见最新发布)。

检查PHAR的内容

查看PHAR内容的方法有很多,这里列举一些

phar extract -f kimai.phar
box info kimai.phar -l

PHAR内容使用GZ压缩,并由PHAR解释器使用SHA512签名验证。

从源码构建

您需要安装带有所有必需依赖项的PHP cli。依赖项可能与运行工具所需的依赖项不同。然后根据它们的安装文档安装humbug/box项目。

现在编译PHAR就像调用

box compile

在GitHub上发布

  • src/Constants.php 中增加版本号
  • 执行 composer install --no-dev
  • 执行 box compile
  • 执行 sha1sum kimai.phar > kimai.phar.sha1
  • 准备新的GitHub发布
  • 将文件 kimai.pharkimai.phar.sha1 上传到新发布中
  • 发布发布