@kadi.build/deploy-ability 0.0.3 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/targets/akash/bids.d.ts +183 -0
- package/dist/targets/akash/bids.d.ts.map +1 -0
- package/dist/targets/akash/bids.js +247 -0
- package/dist/targets/akash/bids.js.map +1 -0
- package/dist/targets/akash/certificate-manager.d.ts +89 -167
- package/dist/targets/akash/certificate-manager.d.ts.map +1 -1
- package/dist/targets/akash/certificate-manager.js +193 -301
- package/dist/targets/akash/certificate-manager.js.map +1 -1
- package/dist/targets/akash/client.d.ts +644 -0
- package/dist/targets/akash/client.d.ts.map +1 -0
- package/dist/targets/akash/client.js +972 -0
- package/dist/targets/akash/client.js.map +1 -0
- package/dist/targets/akash/constants.d.ts +12 -149
- package/dist/targets/akash/constants.d.ts.map +1 -1
- package/dist/targets/akash/constants.js +14 -136
- package/dist/targets/akash/constants.js.map +1 -1
- package/dist/targets/akash/deployer.d.ts +3 -82
- package/dist/targets/akash/deployer.d.ts.map +1 -1
- package/dist/targets/akash/deployer.js +122 -160
- package/dist/targets/akash/deployer.js.map +1 -1
- package/dist/targets/akash/environment.d.ts +16 -214
- package/dist/targets/akash/environment.d.ts.map +1 -1
- package/dist/targets/akash/environment.js +20 -210
- package/dist/targets/akash/environment.js.map +1 -1
- package/dist/targets/akash/index.d.ts +95 -189
- package/dist/targets/akash/index.d.ts.map +1 -1
- package/dist/targets/akash/index.js +69 -197
- package/dist/targets/akash/index.js.map +1 -1
- package/dist/targets/akash/lease-monitor.d.ts +3 -21
- package/dist/targets/akash/lease-monitor.d.ts.map +1 -1
- package/dist/targets/akash/lease-monitor.js +39 -56
- package/dist/targets/akash/lease-monitor.js.map +1 -1
- package/dist/targets/akash/logs.d.ts +103 -4
- package/dist/targets/akash/logs.d.ts.map +1 -1
- package/dist/targets/akash/logs.js +12 -3
- package/dist/targets/akash/logs.js.map +1 -1
- package/dist/targets/akash/pricing.d.ts +12 -191
- package/dist/targets/akash/pricing.d.ts.map +1 -1
- package/dist/targets/akash/pricing.js +12 -188
- package/dist/targets/akash/pricing.js.map +1 -1
- package/dist/targets/akash/provider-manager.d.ts +120 -0
- package/dist/targets/akash/provider-manager.d.ts.map +1 -0
- package/dist/targets/akash/provider-manager.js +574 -0
- package/dist/targets/akash/provider-manager.js.map +1 -0
- package/dist/targets/akash/sdl-generator.d.ts +2 -2
- package/dist/targets/akash/sdl-generator.d.ts.map +1 -1
- package/dist/targets/akash/sdl-generator.js +6 -39
- package/dist/targets/akash/sdl-generator.js.map +1 -1
- package/dist/targets/akash/types.d.ts +66 -243
- package/dist/targets/akash/types.d.ts.map +1 -1
- package/dist/targets/akash/types.js +4 -41
- package/dist/targets/akash/types.js.map +1 -1
- package/dist/targets/akash/wallet-manager.d.ts +35 -352
- package/dist/targets/akash/wallet-manager.d.ts.map +1 -1
- package/dist/targets/akash/wallet-manager.js +37 -439
- package/dist/targets/akash/wallet-manager.js.map +1 -1
- package/dist/targets/local/compose-generator.d.ts.map +1 -1
- package/dist/targets/local/compose-generator.js +1 -0
- package/dist/targets/local/compose-generator.js.map +1 -1
- package/dist/targets/local/deployer.js +4 -4
- package/dist/targets/local/deployer.js.map +1 -1
- package/dist/targets/local/types.d.ts +4 -0
- package/dist/targets/local/types.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/options.d.ts +45 -4
- package/dist/types/options.d.ts.map +1 -1
- package/dist/utils/registry/manager.js +6 -6
- package/dist/utils/registry/manager.js.map +1 -1
- package/dist/utils/registry/setup.js +4 -4
- package/dist/utils/registry/setup.js.map +1 -1
- package/docs/KADI_ABILITY_CONVERSION.md +1365 -0
- package/docs/PIPELINE_BUILDER_DESIGN.md +1149 -0
- package/package.json +8 -11
- package/dist/targets/akash/bid-selectors.d.ts +0 -251
- package/dist/targets/akash/bid-selectors.d.ts.map +0 -1
- package/dist/targets/akash/bid-selectors.js +0 -322
- package/dist/targets/akash/bid-selectors.js.map +0 -1
- package/dist/targets/akash/bid-types.d.ts +0 -297
- package/dist/targets/akash/bid-types.d.ts.map +0 -1
- package/dist/targets/akash/bid-types.js +0 -89
- package/dist/targets/akash/bid-types.js.map +0 -1
- package/dist/targets/akash/blockchain-client.d.ts +0 -577
- package/dist/targets/akash/blockchain-client.d.ts.map +0 -1
- package/dist/targets/akash/blockchain-client.js +0 -803
- package/dist/targets/akash/blockchain-client.js.map +0 -1
- package/dist/targets/akash/logs.types.d.ts +0 -102
- package/dist/targets/akash/logs.types.d.ts.map +0 -1
- package/dist/targets/akash/logs.types.js +0 -9
- package/dist/targets/akash/logs.types.js.map +0 -1
- package/dist/targets/akash/provider-client.d.ts +0 -114
- package/dist/targets/akash/provider-client.d.ts.map +0 -1
- package/dist/targets/akash/provider-client.js +0 -318
- package/dist/targets/akash/provider-client.js.map +0 -1
- package/dist/targets/akash/provider-metadata.d.ts +0 -228
- package/dist/targets/akash/provider-metadata.d.ts.map +0 -1
- package/dist/targets/akash/provider-metadata.js +0 -14
- package/dist/targets/akash/provider-metadata.js.map +0 -1
- package/dist/targets/akash/provider-service.d.ts +0 -133
- package/dist/targets/akash/provider-service.d.ts.map +0 -1
- package/dist/targets/akash/provider-service.js +0 -391
- package/dist/targets/akash/provider-service.js.map +0 -1
- package/dist/targets/akash/query-client.d.ts +0 -125
- package/dist/targets/akash/query-client.d.ts.map +0 -1
- package/dist/targets/akash/query-client.js +0 -332
- package/dist/targets/akash/query-client.js.map +0 -1
- package/docs/EXAMPLES.md +0 -293
- package/docs/PLACEMENT.md +0 -433
- package/docs/STORAGE.md +0 -318
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provider Metadata Types
|
|
3
|
-
*
|
|
4
|
-
* Type definitions for Akash Network provider information including
|
|
5
|
-
* location, reliability metrics, and general provider details.
|
|
6
|
-
*
|
|
7
|
-
* These types are used to enrich bid information so developers can make
|
|
8
|
-
* informed decisions about which provider to choose based on uptime,
|
|
9
|
-
* location, audit status, and other factors.
|
|
10
|
-
*
|
|
11
|
-
* @module targets/akash/provider-metadata
|
|
12
|
-
*/
|
|
13
|
-
/**
|
|
14
|
-
* Geographic location information for a provider
|
|
15
|
-
*
|
|
16
|
-
* Provides detailed location data to help developers choose providers
|
|
17
|
-
* based on geographic proximity, regulatory requirements, or latency needs.
|
|
18
|
-
*
|
|
19
|
-
* Location data typically comes from IP geolocation services and may not
|
|
20
|
-
* always be 100% accurate, but is generally reliable for country/region.
|
|
21
|
-
*
|
|
22
|
-
* @example Provider in California, USA
|
|
23
|
-
* ```typescript
|
|
24
|
-
* {
|
|
25
|
-
* region: "California",
|
|
26
|
-
* regionCode: "CA",
|
|
27
|
-
* country: "United States",
|
|
28
|
-
* countryCode: "US",
|
|
29
|
-
* latitude: "37.7749",
|
|
30
|
-
* longitude: "-122.4194"
|
|
31
|
-
* }
|
|
32
|
-
* ```
|
|
33
|
-
*/
|
|
34
|
-
export interface ProviderLocation {
|
|
35
|
-
/**
|
|
36
|
-
* Full name of the region/state
|
|
37
|
-
* @example "California", "Tokyo", "Bavaria"
|
|
38
|
-
*/
|
|
39
|
-
readonly region: string;
|
|
40
|
-
/**
|
|
41
|
-
* Short code for the region/state
|
|
42
|
-
* @example "CA", "13" (Tokyo), "BY" (Bavaria)
|
|
43
|
-
*/
|
|
44
|
-
readonly regionCode: string;
|
|
45
|
-
/**
|
|
46
|
-
* Full name of the country
|
|
47
|
-
* @example "United States", "Japan", "Germany"
|
|
48
|
-
*/
|
|
49
|
-
readonly country: string;
|
|
50
|
-
/**
|
|
51
|
-
* ISO 3166-1 alpha-2 country code
|
|
52
|
-
* @example "US", "JP", "DE"
|
|
53
|
-
*/
|
|
54
|
-
readonly countryCode: string;
|
|
55
|
-
/**
|
|
56
|
-
* Latitude coordinate (optional)
|
|
57
|
-
* @example "37.7749"
|
|
58
|
-
*/
|
|
59
|
-
readonly latitude?: string;
|
|
60
|
-
/**
|
|
61
|
-
* Longitude coordinate (optional)
|
|
62
|
-
* @example "-122.4194"
|
|
63
|
-
*/
|
|
64
|
-
readonly longitude?: string;
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Provider reliability and uptime metrics
|
|
68
|
-
*
|
|
69
|
-
* Tracks provider availability over different time periods. Uptime values
|
|
70
|
-
* are percentages expressed as decimals (0.0 to 1.0).
|
|
71
|
-
*
|
|
72
|
-
* These metrics are calculated by the Akash indexer which periodically
|
|
73
|
-
* checks provider availability. A provider is considered "online" if its
|
|
74
|
-
* status endpoint responds successfully.
|
|
75
|
-
*
|
|
76
|
-
* **Important**: Not all providers may have reliability data, especially
|
|
77
|
-
* newly registered providers. Always check if reliability data exists
|
|
78
|
-
* before using it in selection logic.
|
|
79
|
-
*
|
|
80
|
-
* @example High reliability provider
|
|
81
|
-
* ```typescript
|
|
82
|
-
* {
|
|
83
|
-
* uptime1d: 1.0, // 100% uptime in last day
|
|
84
|
-
* uptime7d: 0.9987, // 99.87% uptime in last 7 days
|
|
85
|
-
* uptime30d: 0.9954, // 99.54% uptime in last 30 days
|
|
86
|
-
* isOnline: true,
|
|
87
|
-
* lastCheckDate: new Date("2025-10-15T10:30:00Z")
|
|
88
|
-
* }
|
|
89
|
-
* ```
|
|
90
|
-
*/
|
|
91
|
-
export interface ProviderReliability {
|
|
92
|
-
/**
|
|
93
|
-
* Uptime percentage for the last 1 day
|
|
94
|
-
* Range: 0.0 (0%) to 1.0 (100%)
|
|
95
|
-
*/
|
|
96
|
-
readonly uptime1d: number;
|
|
97
|
-
/**
|
|
98
|
-
* Uptime percentage for the last 7 days
|
|
99
|
-
* Range: 0.0 (0%) to 1.0 (100%)
|
|
100
|
-
*/
|
|
101
|
-
readonly uptime7d: number;
|
|
102
|
-
/**
|
|
103
|
-
* Uptime percentage for the last 30 days
|
|
104
|
-
* Range: 0.0 (0%) to 1.0 (100%)
|
|
105
|
-
*/
|
|
106
|
-
readonly uptime30d: number;
|
|
107
|
-
/**
|
|
108
|
-
* Whether the provider is currently online
|
|
109
|
-
*
|
|
110
|
-
* Based on the most recent status check. A provider is online if
|
|
111
|
-
* its status endpoint responded successfully to the last ping.
|
|
112
|
-
*/
|
|
113
|
-
readonly isOnline: boolean;
|
|
114
|
-
/**
|
|
115
|
-
* Timestamp of the last uptime check (optional)
|
|
116
|
-
*
|
|
117
|
-
* Useful for understanding how fresh the reliability data is.
|
|
118
|
-
*/
|
|
119
|
-
readonly lastCheckDate?: Date;
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Complete provider information
|
|
123
|
-
*
|
|
124
|
-
* Aggregates all available information about an Akash provider including
|
|
125
|
-
* identity, location, reliability, and audit status.
|
|
126
|
-
*
|
|
127
|
-
* This is the primary interface for representing provider data throughout
|
|
128
|
-
* the deployment process. Not all fields will be present for all providers
|
|
129
|
-
* (e.g., some may not have location data, or may be too new to have
|
|
130
|
-
* reliability metrics).
|
|
131
|
-
*
|
|
132
|
-
* **Provider Auditing:**
|
|
133
|
-
* Audited providers have been verified by recognized community auditors
|
|
134
|
-
* (like Overclock Labs) to meet certain standards for hardware, uptime,
|
|
135
|
-
* and operational practices. Audited status generally indicates higher
|
|
136
|
-
* reliability but also potentially higher prices.
|
|
137
|
-
*
|
|
138
|
-
* @example Complete provider info
|
|
139
|
-
* ```typescript
|
|
140
|
-
* {
|
|
141
|
-
* owner: "akash1...",
|
|
142
|
-
* hostUri: "https://provider.europlots.com:8443",
|
|
143
|
-
* name: "Europlots Provider",
|
|
144
|
-
* email: "support@europlots.com",
|
|
145
|
-
* website: "https://europlots.com",
|
|
146
|
-
* isAudited: true,
|
|
147
|
-
* location: {
|
|
148
|
-
* region: "Frankfurt",
|
|
149
|
-
* regionCode: "HE",
|
|
150
|
-
* country: "Germany",
|
|
151
|
-
* countryCode: "DE"
|
|
152
|
-
* },
|
|
153
|
-
* reliability: {
|
|
154
|
-
* uptime1d: 1.0,
|
|
155
|
-
* uptime7d: 0.998,
|
|
156
|
-
* uptime30d: 0.995,
|
|
157
|
-
* isOnline: true
|
|
158
|
-
* },
|
|
159
|
-
* akashVersion: "0.6.0"
|
|
160
|
-
* }
|
|
161
|
-
* ```
|
|
162
|
-
*/
|
|
163
|
-
export interface ProviderInfo {
|
|
164
|
-
/**
|
|
165
|
-
* Provider's Akash account address (owner)
|
|
166
|
-
*
|
|
167
|
-
* This is the unique blockchain identifier for the provider.
|
|
168
|
-
* @example "akash1..."
|
|
169
|
-
*/
|
|
170
|
-
readonly owner: string;
|
|
171
|
-
/**
|
|
172
|
-
* Provider's API endpoint (host URI)
|
|
173
|
-
*
|
|
174
|
-
* This is the HTTPS endpoint where the provider's API is accessible.
|
|
175
|
-
* Used for sending manifests and querying deployment status.
|
|
176
|
-
* @example "https://provider.europlots.com:8443"
|
|
177
|
-
*/
|
|
178
|
-
readonly hostUri: string;
|
|
179
|
-
/**
|
|
180
|
-
* Human-readable provider name (optional)
|
|
181
|
-
*
|
|
182
|
-
* A friendly name for the provider, if registered.
|
|
183
|
-
* @example "Europlots Provider", "Akash Cloud Services"
|
|
184
|
-
*/
|
|
185
|
-
readonly name?: string;
|
|
186
|
-
/**
|
|
187
|
-
* Provider contact email (optional)
|
|
188
|
-
* @example "support@provider.com"
|
|
189
|
-
*/
|
|
190
|
-
readonly email?: string;
|
|
191
|
-
/**
|
|
192
|
-
* Provider website URL (optional)
|
|
193
|
-
* @example "https://provider.com"
|
|
194
|
-
*/
|
|
195
|
-
readonly website?: string;
|
|
196
|
-
/**
|
|
197
|
-
* Whether the provider is audited by a recognized auditor
|
|
198
|
-
*
|
|
199
|
-
* Audited providers have been verified to meet community standards
|
|
200
|
-
* for hardware quality, uptime, and operational practices.
|
|
201
|
-
*/
|
|
202
|
-
readonly isAudited: boolean;
|
|
203
|
-
/**
|
|
204
|
-
* Geographic location information (optional)
|
|
205
|
-
*
|
|
206
|
-
* May not be available for all providers, especially those using VPNs
|
|
207
|
-
* or privacy-focused infrastructure.
|
|
208
|
-
*/
|
|
209
|
-
readonly location?: ProviderLocation;
|
|
210
|
-
/**
|
|
211
|
-
* Reliability and uptime metrics (optional)
|
|
212
|
-
*
|
|
213
|
-
* May not be available for newly registered providers or if the
|
|
214
|
-
* indexer hasn't collected enough data yet.
|
|
215
|
-
*/
|
|
216
|
-
readonly reliability?: ProviderReliability;
|
|
217
|
-
/**
|
|
218
|
-
* Akash provider software version (optional)
|
|
219
|
-
* @example "0.6.0", "0.5.5"
|
|
220
|
-
*/
|
|
221
|
-
readonly akashVersion?: string;
|
|
222
|
-
/**
|
|
223
|
-
* Cosmos SDK version the provider is running (optional)
|
|
224
|
-
* @example "0.47.5"
|
|
225
|
-
*/
|
|
226
|
-
readonly cosmosSdkVersion?: string;
|
|
227
|
-
}
|
|
228
|
-
//# sourceMappingURL=provider-metadata.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider-metadata.d.ts","sourceRoot":"","sources":["../../../src/targets/akash/provider-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAErC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAE3C;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provider Metadata Types
|
|
3
|
-
*
|
|
4
|
-
* Type definitions for Akash Network provider information including
|
|
5
|
-
* location, reliability metrics, and general provider details.
|
|
6
|
-
*
|
|
7
|
-
* These types are used to enrich bid information so developers can make
|
|
8
|
-
* informed decisions about which provider to choose based on uptime,
|
|
9
|
-
* location, audit status, and other factors.
|
|
10
|
-
*
|
|
11
|
-
* @module targets/akash/provider-metadata
|
|
12
|
-
*/
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=provider-metadata.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider-metadata.js","sourceRoot":"","sources":["../../../src/targets/akash/provider-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Provider Metadata Service
|
|
3
|
-
*
|
|
4
|
-
* Service for fetching enhanced provider information including reliability
|
|
5
|
-
* metrics, location data, and audit status. Supports both Akash Console API
|
|
6
|
-
* and direct blockchain queries.
|
|
7
|
-
*
|
|
8
|
-
* **Data Sources:**
|
|
9
|
-
*
|
|
10
|
-
* 1. **Akash Console API** (Primary) - Provides rich metadata:
|
|
11
|
-
* - Uptime/reliability metrics (1d, 7d, 30d)
|
|
12
|
-
* - Geographic location (IP geolocation)
|
|
13
|
-
* - Audit status and auditor information
|
|
14
|
-
* - Provider version information
|
|
15
|
-
*
|
|
16
|
-
* 2. **Blockchain Query** (Fallback) - Basic provider data:
|
|
17
|
-
* - Owner address
|
|
18
|
-
* - Host URI
|
|
19
|
-
* - Provider attributes
|
|
20
|
-
*
|
|
21
|
-
* This service tries the Console API first for complete data, and falls back
|
|
22
|
-
* to blockchain-only data if the API is unavailable.
|
|
23
|
-
*
|
|
24
|
-
* @module targets/akash/provider-service
|
|
25
|
-
*/
|
|
26
|
-
import { DeploymentError } from '../../errors/index.js';
|
|
27
|
-
import type { Result } from '../../types/index.js';
|
|
28
|
-
import type { AkashNetwork } from './environment.js';
|
|
29
|
-
import type { ProviderInfo } from './provider-metadata.js';
|
|
30
|
-
/**
|
|
31
|
-
* Fetch ALL providers with metadata from Console API
|
|
32
|
-
*
|
|
33
|
-
* Fetches the complete list of providers from the Akash Console API.
|
|
34
|
-
* This is the preferred method as it gets all provider data in a single
|
|
35
|
-
* API call, matching how the web console works.
|
|
36
|
-
*
|
|
37
|
-
* **Performance:**
|
|
38
|
-
* - Single API call for all providers (fast)
|
|
39
|
-
* - Returns complete metadata for all providers
|
|
40
|
-
* - Can be cached and reused across multiple bid queries
|
|
41
|
-
*
|
|
42
|
-
* **Data Included:**
|
|
43
|
-
* - Provider identity (name, owner, hostUri)
|
|
44
|
-
* - Reliability metrics (uptime1d, uptime7d, uptime30d, isOnline)
|
|
45
|
-
* - Geographic location (country, region, coordinates)
|
|
46
|
-
* - Audit status and version information
|
|
47
|
-
*
|
|
48
|
-
* @param network - Akash network (mainnet/testnet)
|
|
49
|
-
* @returns Result with map of provider address to provider info
|
|
50
|
-
*
|
|
51
|
-
* @example Fetch all providers
|
|
52
|
-
* ```typescript
|
|
53
|
-
* const result = await fetchAllProviders('mainnet');
|
|
54
|
-
* if (result.success) {
|
|
55
|
-
* const providers = result.data;
|
|
56
|
-
* console.log(`Loaded ${providers.size} providers`);
|
|
57
|
-
*
|
|
58
|
-
* // Look up a specific provider
|
|
59
|
-
* const provider = providers.get('akash1...');
|
|
60
|
-
* if (provider) {
|
|
61
|
-
* console.log('Uptime:', provider.reliability?.uptime7d);
|
|
62
|
-
* }
|
|
63
|
-
* }
|
|
64
|
-
* ```
|
|
65
|
-
*/
|
|
66
|
-
export declare function fetchAllProviders(network: AkashNetwork): Promise<Result<Map<string, ProviderInfo>, DeploymentError>>;
|
|
67
|
-
/**
|
|
68
|
-
* Fetch provider information with enriched metadata
|
|
69
|
-
*
|
|
70
|
-
* Attempts to fetch complete provider information from the Akash Console API,
|
|
71
|
-
* falling back to blockchain-only data if the API is unavailable.
|
|
72
|
-
*
|
|
73
|
-
* **DEPRECATED:** Use `fetchAllProviders()` instead for better performance.
|
|
74
|
-
* This function makes individual API calls per provider, while `fetchAllProviders()`
|
|
75
|
-
* gets all providers in a single call.
|
|
76
|
-
*
|
|
77
|
-
* **Data Quality:**
|
|
78
|
-
* - Console API: Complete data with reliability metrics and location
|
|
79
|
-
* - Blockchain fallback: Basic identity only (owner, hostUri)
|
|
80
|
-
*
|
|
81
|
-
* **Reliability:**
|
|
82
|
-
* The Console API may be temporarily unavailable during maintenance or
|
|
83
|
-
* network issues. The fallback ensures deployment can continue even without
|
|
84
|
-
* enhanced metadata, though bid selection will have less information.
|
|
85
|
-
*
|
|
86
|
-
* @param network - Akash network (mainnet/testnet)
|
|
87
|
-
* @param providerAddress - Provider's blockchain address
|
|
88
|
-
* @returns Result with complete provider information
|
|
89
|
-
*
|
|
90
|
-
* @example Fetch single provider
|
|
91
|
-
* ```typescript
|
|
92
|
-
* const result = await fetchProviderInfo('mainnet', 'akash1...');
|
|
93
|
-
* if (result.success) {
|
|
94
|
-
* const provider = result.data;
|
|
95
|
-
* console.log('Provider:', provider.name || provider.owner);
|
|
96
|
-
* if (provider.reliability) {
|
|
97
|
-
* console.log('Uptime (7d):', (provider.reliability.uptime7d * 100).toFixed(1) + '%');
|
|
98
|
-
* }
|
|
99
|
-
* }
|
|
100
|
-
* ```
|
|
101
|
-
*/
|
|
102
|
-
export declare function fetchProviderInfo(network: AkashNetwork, providerAddress: string): Promise<Result<ProviderInfo, DeploymentError>>;
|
|
103
|
-
/**
|
|
104
|
-
* Fetch multiple providers in batch for efficiency
|
|
105
|
-
*
|
|
106
|
-
* Fetches provider information for multiple providers in parallel.
|
|
107
|
-
* This is more efficient than calling `fetchProviderInfo` sequentially
|
|
108
|
-
* when processing multiple bids.
|
|
109
|
-
*
|
|
110
|
-
* **Behavior:**
|
|
111
|
-
* - Fetches all providers in parallel
|
|
112
|
-
* - Failed fetches return minimal provider info (owner + hostUri)
|
|
113
|
-
* - Never fails entirely - partial data is acceptable
|
|
114
|
-
*
|
|
115
|
-
* @param network - Akash network (mainnet/testnet)
|
|
116
|
-
* @param providerAddresses - Array of provider addresses to fetch
|
|
117
|
-
* @returns Result with map of provider address to provider info
|
|
118
|
-
*
|
|
119
|
-
* @example Fetch multiple providers
|
|
120
|
-
* ```typescript
|
|
121
|
-
* const addresses = ['akash1...', 'akash2...', 'akash3...'];
|
|
122
|
-
* const result = await fetchProviderInfoBatch('mainnet', addresses);
|
|
123
|
-
*
|
|
124
|
-
* if (result.success) {
|
|
125
|
-
* const providers = result.data;
|
|
126
|
-
* for (const [address, info] of providers) {
|
|
127
|
-
* console.log(address, ':', info.name || 'Unknown');
|
|
128
|
-
* }
|
|
129
|
-
* }
|
|
130
|
-
* ```
|
|
131
|
-
*/
|
|
132
|
-
export declare function fetchProviderInfoBatch(network: AkashNetwork, providerAddresses: string[]): Promise<Result<Map<string, ProviderInfo>, DeploymentError>>;
|
|
133
|
-
//# sourceMappingURL=provider-service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider-service.d.ts","sourceRoot":"","sources":["../../../src/targets/akash/provider-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EACV,YAAY,EAGb,MAAM,wBAAwB,CAAC;AAgChC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC,CAwG7D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,YAAY,EACrB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAsBhD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,YAAY,EACrB,iBAAiB,EAAE,MAAM,EAAE,GAC1B,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,eAAe,CAAC,CAAC,CAuC7D"}
|