GitRoot

Craft your forge, Build your project, Grow your community freely
 1// SPDX-FileCopyrightText: 2026 Romain Maneschi <romain@gitroot.dev>
 2//
 3// SPDX-License-Identifier: MIT
 4
 5
 6@json
 7export class Exec {
 8  constructor(
 9    public build: string,
10    public reportStats: bool,
11    public cmds: Array<Cmd>,
12    public env: Array<string>,
13    public artifacts: Array<string>,
14    public cache: Array<Cache>,
15  ) {}
16}
17
18@json
19export class Cmd {
20  constructor(
21    public cmd: string,
22    public args: Array<string>,
23  ) {}
24}
25
26@json
27export class Cache {
28  constructor(
29    public key: string,
30    public path: string,
31    public readOnly: bool,
32  ) {}
33}
34
35@json
36export class ExecStatus {
37  constructor(
38    public cmdsExec: Array<string>,
39    public cmdsStatus: Array<u32>,
40    public cmdsLogs: Array<string>,
41    public cmdsStats: Array<CmdStats>,
42    public artifacts: Array<string>,
43  ) {}
44}
45
46@json
47export class CmdStats {
48  constructor(
49    public maxMemoryBytes: u64,
50    public maxThreads: u32,
51    public readBytesTotal: u64,
52    public writeBytesTotal: u64,
53    public totalCpuTimeMs: u64,
54  ) {}
55}
56