@aeolus-fleet/trierarch-plugin (英语)
把你的机器带入舰队 并且把每个船员的要求 放在一个适合的机器上 它是服务器一侧的三重机插件(第0030号决定). 可选:一支舰队在没有它的情况下工作. 爱奥鲁斯对它一无所知 除了它的船,它持有 fleet:read, (中文(简体) ), fleet:commission, (中文(简体) ), crew:assign, (中文(简体) ), crew:run, (中文(简体) ), labels:define, (中文(简体) ), labels:assign 财务报告和审定财务报表 scopes:declare 并且只能通过其公共API到达舰队. 它的功劳在于 文件/目录。 。 。 .
至今为止:它自己的流程和小型数据库(每个舰队的连接,切换和启用模型),操作员作为其舰只而建立的连接,一台机器加入,机器与他们的三联报告,任务(docs/trierarch.md,"指派"),安装程序, /api/health 财务报告和审定财务报表 /api/version。 。 。 .
每张通行证都会寄出每个可信任的寄存器TRUSTED_REPOSITORIES)每个进程一次,在类型信息中 application/vnd.aeolus.trierarch.trusted-repositories+json 其有效载荷为: {"repositories":[{"name","url"}]}。重启后再次发送它们,所以每个三进制都会收到更改后的列表 。 一个三进制问, 带有类型信息 application/vnd.aeolus.trierarch.trusted-repositories-request+json,在下个通道上再次得到它们:人们开始了解三重插件的飞船.
任务作为它所服务并与它相连的每个舰队的通行证。 每道通行证都读取了舰队整体:等待船员的舰艇的未指定要求,以及报告细节而不沉默的三重舰队;有了他们,舰队的启用型号就从自己的数据库中取出(第0063号决定). 它声称它提出的每一项请求都乐观地声称,并在它不能提出的每一项请求上写上理由。 一项声称舰队拒绝了,因为请求变更了(另一通通行证赢得了它,或者该舰被船员或请求被移除),在下通通行证上再次被读取. 如果您愿意, 请运行多个进程: 车队每个请求存储一个任务 .
运行
- 赋予它自己的数据库并设置它的环境. 没有船也没有秘密:操作员连接它.
| 变量 | 需求 | 什麽 |
|---|---|---|
DATABASE_URL | 对 | 其自己的Postgres数据库(postgres://...它可能与舰队和中队共用Postgres服务器 |
FLEET_URL | 对 | 舰队的公开URL; 它叫"API"号飞船 <FLEET_URL>/api/v1,检查控制台的会话, 并命名它在每个连接机器的设置行。 不是秘密,是固定在这里, 所以没有呼叫者可以指向另一个舰队 |
HOST, (中文(简体) ), PORT | 没有 | 在听的地方; 127.0.0.1:4200 默认 |
LOG_LEVEL | 没有 | info 默认 |
INSTALLATION_TOKEN | 没有 | 托管服务在其安装程序上至少呈现出32个字符(第0021号决定)。 取消:它们不存在,每个舰队都得到服务,因为需要自行安装 |
TRIERARCH_SILENT_AFTER_SECONDS | 没有 | 一个最后一次见到比这更年长的三重奏者,沉默:它不会收到新的请求. 300 默认 |
TRIERARCH_PASS_INTERVAL_SECONDS | 没有 | 每支舰队有多少次有传球. 10 默认 |
TRUSTED_REPOSITORIES | 没有 | 每个三进制的寄存器可根据需要克隆, 如 JSON 命名为 git URL, 例如 {"hemma":"[email protected]:ThomasHendrickx/hemma.git"} (aeolus-fleet#384) (英语). 一个乘务员要求命名一个名字 作为其工作空间的仓库。 一个 URL 是 https:// 没有用户,或ssh(ssh:// 或者说 user@host:path没有密码。 它从来不是路径、文件 URL 或证书:拥有自己访问权限的机器克隆。 名单适用于它所服务的每一个舰队. 无默认 |
aeolus-trierarch-plugin start迁移数据库,服务,并运行一个任务通过每个间隔。 它所服务的每支舰队都保持其船员身份,其舰队仍取走的舰队再次被接通;任何其他舰队都没有接通.aeolus-trierarch-plugin migrate独自迁徙.- 每个舰队的操作员都把船连接起来:
fleet:read, (中文(简体) ),fleet:commission, (中文(简体) ),crew:assign, (中文(简体) ),crew:run, (中文(简体) ),labels:define财务报告和审定财务报表labels:assign然后把船的秘密交给connection.connect,服务器到服务器。 它登记为服务器,只保存船员的代号;秘密从未被存储或记录.
API 密码
一个 tRPC 路由器 /trpc呼叫控制台的会话饼干 舰队通过检查 console.session每一个程序,但安装的工程 在会话的车队.
| 程序 | 什麽 |
|---|---|
connection.status | 它是否为舰队服务 是否与舰只相连 是否与舰只相连 |
connection.connect | 与其船名和秘密相通(fleet:manage 页:1 在连接时被拒绝(CONFLICT),指另一舰队的一艘船或没有三只瞄准镜(BAD REQULATE) |
machines.join | 带了一台机器进来,名字是trierarch:join,或argo;否则:委托某类船舶 trierarch 与 crew:run 并回答它的起动, 船员线路, 秘密和设置线路, npx @aeolus-fleet/trierarch init --fleet-url <url> --ship-id <id> --plugin-ship-id <its own ship> --secret <secret>,每个显示一次;三重奏者只从船上取取出可信任的仓库 --plugin-ship-id 名称。 现役舰只名称:CONFLICT |
machines.list | 舰队的现役舰艇类型 trierarch,每个都带有其三位一体的上份报告和细节(在报告前不写),是否沉默 |
requests.check | 根据任务规则,在要求船员与他们在一起之前,是否现在就要安排船员设置: fits· ; refused 设置字段有错误和原因;或 noRoom 当它们适合时,但没有任何三重奏者有空间(一个要求会等待)。 没有写 |
installation.setEnabled, (中文(简体) ), get, (中文(简体) ), delete | 与 x-aeolus-installation-token:打开或关闭一个机队,读取,忘记它(第00-21号决定) |
虽然舰队被关闭,但每一个程序 connection.status 答案FORBIDDEN; 直到连接, machines.* 回答 Precondition FAILED. (原始内容存档于2017-09-29).