-
Notifications
You must be signed in to change notification settings - Fork 28
Expand file tree
/
Copy pathtypes.ts
More file actions
85 lines (71 loc) · 1.85 KB
/
Copy pathtypes.ts
File metadata and controls
85 lines (71 loc) · 1.85 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
import { Architecture, Compose, Manifest } from "@dappnode/types";
import { ManifestFormat } from "./files/manifest/types.js";
export interface CliGlobalOptions {
dir?: string;
compose_file_name?: string;
silent?: boolean;
verbose?: boolean;
}
// TODO: Try to have all properties defined
interface ListrContextBuildItem {
releaseDir?: string;
releaseMultiHash?: string;
variant?: string;
}
interface ListrContextPublishItem extends ListrContextBuildItem {
nextVersion?: string;
txData?: TxData;
}
export interface ListrContextBuild {
[dnpName: string]: ListrContextBuildItem;
}
export interface ListrContextPublish {
[dnpName: string]: ListrContextPublishItem;
}
interface PublishVariantsMapEntry {
// Manifest-related
manifest: Manifest;
manifestFormat: ManifestFormat;
}
export interface BuildVariantsMapEntry extends PublishVariantsMapEntry {
// Compose file
compose: Compose;
// File paths
releaseDir: string;
composePaths: string[];
// Package information
images: PackageImage[];
architectures: Architecture[];
}
export interface BuildVariantsMap {
[variant: string]: BuildVariantsMapEntry;
}
// Interal types
export type ReleaseType = "major" | "minor" | "patch";
export const releaseTypes: ReleaseType[] = ["major", "minor", "patch"];
export type PackageImageLocal = {
type: "local";
imageTag: string;
};
export type PackageImageExternal = {
type: "external";
imageTag: string;
originalImageTag: string;
};
export type PackageImage = PackageImageLocal | PackageImageExternal;
export interface TxData {
to: string;
value: number;
data: string;
gasLimit: number;
ensName: string;
currentVersion: string;
releaseMultiHash: string;
developerAddress?: string;
}
export interface TxDataShortKeys {
r: string; // repoName
v: string; // version
h: string; // hash
d?: string; // developerAddress
}