@dagger.io/dagger 0.2.1 → 0.3.1

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.
Files changed (81) hide show
  1. package/README.md +72 -1
  2. package/dist/api/client.gen.d.ts +332 -126
  3. package/dist/api/client.gen.d.ts.map +1 -1
  4. package/dist/api/client.gen.js +355 -272
  5. package/dist/api/utils.d.ts +1 -1
  6. package/dist/api/utils.d.ts.map +1 -1
  7. package/dist/api/utils.js +63 -43
  8. package/dist/common/errors/DaggerSDKError.d.ts +32 -0
  9. package/dist/common/errors/DaggerSDKError.d.ts.map +1 -0
  10. package/dist/common/errors/DaggerSDKError.js +22 -0
  11. package/dist/common/errors/DockerImageRefValidationError.d.ts +22 -0
  12. package/dist/common/errors/DockerImageRefValidationError.d.ts.map +1 -0
  13. package/dist/common/errors/DockerImageRefValidationError.js +17 -0
  14. package/dist/common/errors/EngineSessionConnectParamsParseError.d.ts +21 -0
  15. package/dist/common/errors/EngineSessionConnectParamsParseError.d.ts.map +1 -0
  16. package/dist/common/errors/EngineSessionConnectParamsParseError.js +16 -0
  17. package/dist/common/errors/EngineSessionConnectionTimeoutError.d.ts +21 -0
  18. package/dist/common/errors/EngineSessionConnectionTimeoutError.d.ts.map +1 -0
  19. package/dist/common/errors/EngineSessionConnectionTimeoutError.js +16 -0
  20. package/dist/common/errors/EngineSessionEOFErrorOptions.d.ts +16 -0
  21. package/dist/common/errors/EngineSessionEOFErrorOptions.d.ts.map +1 -0
  22. package/dist/common/errors/EngineSessionEOFErrorOptions.js +16 -0
  23. package/dist/common/errors/GraphQLRequestError.d.ts +27 -0
  24. package/dist/common/errors/GraphQLRequestError.d.ts.map +1 -0
  25. package/dist/common/errors/GraphQLRequestError.js +17 -0
  26. package/dist/common/errors/InitEngineSessionBinaryError.d.ts +13 -0
  27. package/dist/common/errors/InitEngineSessionBinaryError.d.ts.map +1 -0
  28. package/dist/common/errors/InitEngineSessionBinaryError.js +15 -0
  29. package/dist/common/errors/TooManyNestedObjectsError.d.ts +21 -0
  30. package/dist/common/errors/TooManyNestedObjectsError.d.ts.map +1 -0
  31. package/dist/common/errors/TooManyNestedObjectsError.js +16 -0
  32. package/dist/common/errors/UnknownDaggerError.d.ts +13 -0
  33. package/dist/common/errors/UnknownDaggerError.d.ts.map +1 -0
  34. package/dist/common/errors/UnknownDaggerError.js +15 -0
  35. package/dist/common/errors/errors-codes.d.ts +43 -0
  36. package/dist/common/errors/errors-codes.d.ts.map +1 -0
  37. package/dist/common/errors/errors-codes.js +35 -0
  38. package/dist/common/errors/index.d.ts +11 -0
  39. package/dist/common/errors/index.d.ts.map +1 -0
  40. package/dist/common/errors/index.js +10 -0
  41. package/dist/common/utils.d.ts +65 -0
  42. package/dist/common/utils.d.ts.map +1 -0
  43. package/dist/common/utils.js +2 -0
  44. package/dist/connect.d.ts +25 -3
  45. package/dist/connect.d.ts.map +1 -1
  46. package/dist/connect.js +29 -5
  47. package/dist/index.d.ts +1 -2
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +0 -1
  50. package/dist/provisioning/{docker-provision/image.d.ts → bin.d.ts} +31 -29
  51. package/dist/provisioning/bin.d.ts.map +1 -0
  52. package/dist/provisioning/bin.js +328 -0
  53. package/dist/provisioning/default.d.ts +1 -1
  54. package/dist/provisioning/default.d.ts.map +1 -1
  55. package/dist/provisioning/default.js +1 -2
  56. package/dist/provisioning/engineconn.d.ts +1 -1
  57. package/dist/provisioning/engineconn.d.ts.map +1 -1
  58. package/dist/provisioning/index.d.ts +1 -2
  59. package/dist/provisioning/index.d.ts.map +1 -1
  60. package/dist/provisioning/index.js +1 -2
  61. package/package.json +19 -15
  62. package/dist/provisioning/bin/bin.d.ts +0 -21
  63. package/dist/provisioning/bin/bin.d.ts.map +0 -1
  64. package/dist/provisioning/bin/bin.js +0 -112
  65. package/dist/provisioning/bin/index.d.ts +0 -2
  66. package/dist/provisioning/bin/index.d.ts.map +0 -1
  67. package/dist/provisioning/bin/index.js +0 -1
  68. package/dist/provisioning/docker-provision/image.d.ts.map +0 -1
  69. package/dist/provisioning/docker-provision/image.js +0 -269
  70. package/dist/provisioning/docker-provision/index.d.ts +0 -2
  71. package/dist/provisioning/docker-provision/index.d.ts.map +0 -1
  72. package/dist/provisioning/docker-provision/index.js +0 -1
  73. package/dist/provisioning/http/http.d.ts +0 -14
  74. package/dist/provisioning/http/http.d.ts.map +0 -1
  75. package/dist/provisioning/http/http.js +0 -33
  76. package/dist/provisioning/http/index.d.ts +0 -2
  77. package/dist/provisioning/http/index.d.ts.map +0 -1
  78. package/dist/provisioning/http/index.js +0 -1
  79. package/dist/provisioning/provisioner.d.ts +0 -11
  80. package/dist/provisioning/provisioner.d.ts.map +0 -1
  81. package/dist/provisioning/provisioner.js +0 -26
@@ -12,7 +12,7 @@ export declare function buildQuery(q: QueryTree[]): string;
12
12
  * @param client | GraphQLClient
13
13
  * @returns
14
14
  */
15
- export declare function queryBuilder<T>(q: QueryTree[], client: GraphQLClient): Promise<T>;
15
+ export declare function computeQuery<T>(q: QueryTree[], client: GraphQLClient): Promise<T>;
16
16
  /**
17
17
  * Return a Graphql query result flattened
18
18
  * @param response any
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../api/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAO,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAkD3C;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,MAAM,CAYjD;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,CAAC,EAAE,SAAS,EAAE,EACd,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,CAAC,CAAC,CAQZ;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,CAmBhD;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAC7B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,CAAC,CAAC,CAQZ"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../api/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAOjE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAoE3C;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,MAAM,CAYjD;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,CAAC,EAAE,SAAS,EAAE,EACd,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,CAAC,CAAC,CAMZ;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,CAqBhD;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAC7B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,CAAC,CAAC,CAyBZ"}
package/dist/api/utils.js CHANGED
@@ -8,42 +8,52 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  /* eslint-disable @typescript-eslint/no-explicit-any */
11
- import { gql } from "graphql-request";
12
- function buildArgs(item) {
13
- const entries = Object.entries(item.args)
14
- .filter((value) => value[1] !== undefined)
15
- .map((value) => {
16
- return `${value[0]}: ${JSON.stringify(value[1]).replace(/\{"[a-zA-Z]+"/gi, (str) => str.replace(/"/g, ""))}`;
17
- });
18
- if (entries.length === 0) {
11
+ import { ClientError, gql } from "graphql-request";
12
+ import { GraphQLRequestError, TooManyNestedObjectsError, UnknownDaggerError, } from "../common/errors/index.js";
13
+ /**
14
+ * Format argument into GraphQL query format.
15
+ */
16
+ function buildArgs(args) {
17
+ // Remove unwanted quotes
18
+ const formatValue = (value) => JSON.stringify(value).replace(/\{"[a-zA-Z]+"/gi, (str) => str.replace(/"/g, ""));
19
+ const formattedArgs = Object.entries(args).reduce((acc, [key, value]) => {
20
+ if (value) {
21
+ acc.push(`${key}: ${formatValue(value)}`);
22
+ }
23
+ return acc;
24
+ }, []);
25
+ if (formattedArgs.length === 0) {
19
26
  return "";
20
27
  }
21
- return "(" + entries + ")";
28
+ return `(${formattedArgs})`;
22
29
  }
23
30
  /**
24
- * Find querytree, convert them into GraphQl query
31
+ * Find QueryTree, convert them into GraphQl query
25
32
  * then compute and return the result to the appropriate field
26
33
  */
27
34
  function computeNestedQuery(query, client) {
28
35
  return __awaiter(this, void 0, void 0, function* () {
29
- /**
30
- * Check if there is a nested queryTree to be executed
31
- */
32
- const isQueryTree = (value) => Object.keys(value).find((val) => val === "_queryTree");
33
- for (const q of query) {
34
- if (q.args !== undefined) {
35
- yield Promise.all(Object.entries(q.args).map((val) => __awaiter(this, void 0, void 0, function* () {
36
- if (val[1] instanceof Object && isQueryTree(val[1])) {
37
- // push an id that will be used by the container
38
- val[1]["_queryTree"].push({ operation: "id" });
39
- const getQueryTree = buildQuery(val[1]["_queryTree"]);
40
- const result = yield compute(getQueryTree, client);
41
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
42
- //@ts-ignore
43
- q.args[val[0]] = result;
36
+ // Check if there is a nested queryTree to be executed
37
+ const isQueryTree = (value) => value["_queryTree"] !== undefined;
38
+ // Remove all undefined args and assert args type
39
+ const queryToExec = query.filter((q) => !!q.args);
40
+ for (const q of queryToExec) {
41
+ yield Promise.all(Object.entries(q.args).map(([key, value]) => __awaiter(this, void 0, void 0, function* () {
42
+ if (value instanceof Object && isQueryTree(value)) {
43
+ // Resolve sub queries if operation's args is a subquery
44
+ for (const op of value["_queryTree"]) {
45
+ yield computeNestedQuery([op], client);
44
46
  }
45
- })));
46
- }
47
+ // push an id that will be used by the container
48
+ const getQueryTree = buildQuery([
49
+ ...value["_queryTree"],
50
+ {
51
+ operation: "id",
52
+ },
53
+ ]);
54
+ q.args[key] = yield compute(getQueryTree, client);
55
+ }
56
+ })));
47
57
  }
48
58
  });
49
59
  }
@@ -53,14 +63,12 @@ function computeNestedQuery(query, client) {
53
63
  * @returns
54
64
  */
55
65
  export function buildQuery(q) {
56
- let query = "{";
57
- q.forEach((item, index) => {
58
- query += `
59
- ${item.operation} ${item.args ? `${buildArgs(item)}` : ""} ${q.length - 1 !== index ? "{" : "}".repeat(q.length - 1)}
60
- `;
61
- });
62
- query += "}";
63
- return query;
66
+ const query = q.reduce((acc, { operation, args }, i) => {
67
+ const qLen = q.length;
68
+ acc += ` ${operation} ${args ? `${buildArgs(args)}` : ""} ${qLen - 1 !== i ? "{" : "}".repeat(qLen - 1)}`;
69
+ return acc;
70
+ }, "");
71
+ return `{${query} }`;
64
72
  }
65
73
  /**
66
74
  * Convert querytree into a Graphql query then compute it
@@ -68,12 +76,11 @@ export function buildQuery(q) {
68
76
  * @param client | GraphQLClient
69
77
  * @returns
70
78
  */
71
- export function queryBuilder(q, client) {
79
+ export function computeQuery(q, client) {
72
80
  return __awaiter(this, void 0, void 0, function* () {
73
81
  yield computeNestedQuery(q, client);
74
82
  const query = buildQuery(q);
75
- const result = yield compute(query, client);
76
- return result;
83
+ return yield compute(query, client);
77
84
  });
78
85
  }
79
86
  /**
@@ -91,8 +98,7 @@ export function queryFlatten(response) {
91
98
  if (keys.length != 1) {
92
99
  // Dagger is currently expecting to only return one value
93
100
  // If the response is nested in a way were more than one object is nested inside throw an error
94
- // TODO Throw sensible Error
95
- throw new Error("Too many Graphql nested objects");
101
+ throw new TooManyNestedObjectsError("Too many nested objects inside graphql response", { response: response });
96
102
  }
97
103
  const nestedKey = keys[0];
98
104
  return queryFlatten(response[nestedKey]);
@@ -104,9 +110,23 @@ export function queryFlatten(response) {
104
110
  */
105
111
  export function compute(query, client) {
106
112
  return __awaiter(this, void 0, void 0, function* () {
107
- const computeQuery = yield client.request(gql `
108
- ${query}
109
- `);
113
+ let computeQuery;
114
+ try {
115
+ computeQuery = yield client.request(gql `
116
+ ${query}
117
+ `);
118
+ }
119
+ catch (e) {
120
+ if (e instanceof ClientError) {
121
+ throw new GraphQLRequestError("Error message", {
122
+ request: e.request,
123
+ response: e.response,
124
+ cause: e,
125
+ });
126
+ }
127
+ // Just throw the unknown error
128
+ throw new UnknownDaggerError("Encountered an unknown error while requesting data via graphql", { cause: e });
129
+ }
110
130
  return queryFlatten(computeQuery);
111
131
  });
112
132
  }
@@ -0,0 +1,32 @@
1
+ import { ErrorCodes, ErrorNames } from "./errors-codes";
2
+ export interface DaggerSDKErrorOptions {
3
+ cause?: Error;
4
+ }
5
+ /**
6
+ * The base error. Every other error inherits this error.
7
+ */
8
+ export declare abstract class DaggerSDKError extends Error {
9
+ /**
10
+ * The name of the dagger error.
11
+ */
12
+ abstract readonly name: ErrorNames;
13
+ /**
14
+ * The dagger specific error code.
15
+ * Use this to identify dagger errors programmatically.
16
+ */
17
+ abstract readonly code: ErrorCodes;
18
+ /**
19
+ * The original error, which caused the DaggerSDKError.
20
+ */
21
+ cause?: Error;
22
+ protected constructor(message: string, options?: DaggerSDKErrorOptions);
23
+ /**
24
+ * @hidden
25
+ */
26
+ get [Symbol.toStringTag](): "GraphQLRequestError" | "UnknownDaggerError" | "TooManyNestedObjectsError" | "EngineSessionConnectParamsParseError" | "EngineSessionConnectionTimeoutError" | "EngineSessionEOFError" | "InitEngineSessionBinaryError" | "DockerImageRefValidationError";
27
+ /**
28
+ * Pretty prints the error
29
+ */
30
+ printStackTrace(): void;
31
+ }
32
+ //# sourceMappingURL=DaggerSDKError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DaggerSDKError.d.ts","sourceRoot":"","sources":["../../../common/errors/DaggerSDKError.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEvD,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED;;GAEG;AACH,8BAAsB,cAAe,SAAQ,KAAK;IAChD;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IAElC;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IAElC;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;IAEb,SAAS,aAAa,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;IAKtE;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,6PAEvB;IAED;;OAEG;IACH,eAAe;CAGhB"}
@@ -0,0 +1,22 @@
1
+ import { log } from "../utils.js";
2
+ /**
3
+ * The base error. Every other error inherits this error.
4
+ */
5
+ export class DaggerSDKError extends Error {
6
+ constructor(message, options) {
7
+ super(message);
8
+ this.cause = options === null || options === void 0 ? void 0 : options.cause;
9
+ }
10
+ /**
11
+ * @hidden
12
+ */
13
+ get [Symbol.toStringTag]() {
14
+ return this.name;
15
+ }
16
+ /**
17
+ * Pretty prints the error
18
+ */
19
+ printStackTrace() {
20
+ log(this.stack);
21
+ }
22
+ }
@@ -0,0 +1,22 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ interface DockerImageRefValidationErrorOptions extends DaggerSDKErrorOptions {
3
+ ref: string;
4
+ }
5
+ /**
6
+ * This error is thrown if the passed image reference does not pass validation and is not compliant with the
7
+ * DockerImage constructor.
8
+ */
9
+ export declare class DockerImageRefValidationError extends DaggerSDKError {
10
+ name: "DockerImageRefValidationError";
11
+ code: "D107";
12
+ /**
13
+ * The docker image reference, which caused the error.
14
+ */
15
+ ref: string;
16
+ /**
17
+ * @hidden
18
+ */
19
+ constructor(message: string, options: DockerImageRefValidationErrorOptions);
20
+ }
21
+ export {};
22
+ //# sourceMappingURL=DockerImageRefValidationError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DockerImageRefValidationError.d.ts","sourceRoot":"","sources":["../../../common/errors/DockerImageRefValidationError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,UAAU,oCAAqC,SAAQ,qBAAqB;IAC1E,GAAG,EAAE,MAAM,CAAA;CACZ;AAED;;;GAGG;AACH,qBAAa,6BAA8B,SAAQ,cAAc;IAC/D,IAAI,kCAA4C;IAChD,IAAI,SAA4C;IAEhD;;OAEG;IACH,GAAG,EAAE,MAAM,CAAA;IAEX;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,oCAAoC;CAI3E"}
@@ -0,0 +1,17 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the passed image reference does not pass validation and is not compliant with the
5
+ * DockerImage constructor.
6
+ */
7
+ export class DockerImageRefValidationError extends DaggerSDKError {
8
+ /**
9
+ * @hidden
10
+ */
11
+ constructor(message, options) {
12
+ super(message, options);
13
+ this.name = ERROR_NAMES.DockerImageRefValidationError;
14
+ this.code = ERROR_CODES.DockerImageRefValidationError;
15
+ this.ref = options === null || options === void 0 ? void 0 : options.ref;
16
+ }
17
+ }
@@ -0,0 +1,21 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ interface EngineSessionConnectParamsParseErrorOptions extends DaggerSDKErrorOptions {
3
+ parsedLine: string;
4
+ }
5
+ /**
6
+ * This error is thrown if the EngineSession does not manage to parse the required connection parameters from the session binary
7
+ */
8
+ export declare class EngineSessionConnectParamsParseError extends DaggerSDKError {
9
+ name: "EngineSessionConnectParamsParseError";
10
+ code: "D103";
11
+ /**
12
+ * the line, which caused the error during parsing, if the error was caused because of parsing.
13
+ */
14
+ parsedLine: string;
15
+ /**
16
+ * @hidden
17
+ */
18
+ constructor(message: string, options: EngineSessionConnectParamsParseErrorOptions);
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=EngineSessionConnectParamsParseError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EngineSessionConnectParamsParseError.d.ts","sourceRoot":"","sources":["../../../common/errors/EngineSessionConnectParamsParseError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,UAAU,2CACR,SAAQ,qBAAqB;IAC7B,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,qBAAa,oCAAqC,SAAQ,cAAc;IACtE,IAAI,yCAAmD;IACvD,IAAI,SAAmD;IAEvD;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;OAEG;gBAED,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,2CAA2C;CAKvD"}
@@ -0,0 +1,16 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the EngineSession does not manage to parse the required connection parameters from the session binary
5
+ */
6
+ export class EngineSessionConnectParamsParseError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.EngineSessionConnectParamsParseError;
13
+ this.code = ERROR_CODES.EngineSessionConnectParamsParseError;
14
+ this.parsedLine = options.parsedLine;
15
+ }
16
+ }
@@ -0,0 +1,21 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ interface EngineSessionConnectionTimeoutErrorOptions extends DaggerSDKErrorOptions {
3
+ timeOutDuration: number;
4
+ }
5
+ /**
6
+ * This error is thrown if the EngineSession does not manage to parse the required port successfully because the sessions connection timed out.
7
+ */
8
+ export declare class EngineSessionConnectionTimeoutError extends DaggerSDKError {
9
+ name: "EngineSessionConnectionTimeoutError";
10
+ code: "D104";
11
+ /**
12
+ * The duration until the timeout occurred in ms.
13
+ */
14
+ timeOutDuration: number;
15
+ /**
16
+ * @hidden
17
+ */
18
+ constructor(message: string, options: EngineSessionConnectionTimeoutErrorOptions);
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=EngineSessionConnectionTimeoutError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EngineSessionConnectionTimeoutError.d.ts","sourceRoot":"","sources":["../../../common/errors/EngineSessionConnectionTimeoutError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,UAAU,0CACR,SAAQ,qBAAqB;IAC7B,eAAe,EAAE,MAAM,CAAA;CACxB;AAED;;GAEG;AACH,qBAAa,mCAAoC,SAAQ,cAAc;IACrE,IAAI,wCAAkD;IACtD,IAAI,SAAkD;IAEtD;;OAEG;IACH,eAAe,EAAE,MAAM,CAAA;IAEvB;;OAEG;gBAED,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,0CAA0C;CAKtD"}
@@ -0,0 +1,16 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the EngineSession does not manage to parse the required port successfully because the sessions connection timed out.
5
+ */
6
+ export class EngineSessionConnectionTimeoutError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.EngineSessionConnectionTimeoutError;
13
+ this.code = ERROR_CODES.EngineSessionConnectionTimeoutError;
14
+ this.timeOutDuration = options.timeOutDuration;
15
+ }
16
+ }
@@ -0,0 +1,16 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ type EngineSessionEOFErrorOptions = DaggerSDKErrorOptions;
3
+ /**
4
+ * This error is thrown if the EngineSession does not manage to parse the required port successfully because a EOF is read before any valid port.
5
+ * This usually happens if no connection can be established.
6
+ */
7
+ export declare class EngineSessionEOFError extends DaggerSDKError {
8
+ name: "EngineSessionEOFError";
9
+ code: "D105";
10
+ /**
11
+ * @hidden
12
+ */
13
+ constructor(message: string, options?: EngineSessionEOFErrorOptions);
14
+ }
15
+ export {};
16
+ //# sourceMappingURL=EngineSessionEOFErrorOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EngineSessionEOFErrorOptions.d.ts","sourceRoot":"","sources":["../../../common/errors/EngineSessionEOFErrorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,KAAK,4BAA4B,GAAG,qBAAqB,CAAA;AAEzD;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,cAAc;IACvD,IAAI,0BAAoC;IACxC,IAAI,SAAoC;IAExC;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,4BAA4B;CAGpE"}
@@ -0,0 +1,16 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the EngineSession does not manage to parse the required port successfully because a EOF is read before any valid port.
5
+ * This usually happens if no connection can be established.
6
+ */
7
+ export class EngineSessionEOFError extends DaggerSDKError {
8
+ /**
9
+ * @hidden
10
+ */
11
+ constructor(message, options) {
12
+ super(message, options);
13
+ this.name = ERROR_NAMES.EngineSessionEOFError;
14
+ this.code = ERROR_CODES.EngineSessionEOFError;
15
+ }
16
+ }
@@ -0,0 +1,27 @@
1
+ import { GraphQLRequestContext, GraphQLResponse } from "graphql-request/dist/types";
2
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
3
+ interface GraphQLRequestErrorOptions extends DaggerSDKErrorOptions {
4
+ response: GraphQLResponse;
5
+ request: GraphQLRequestContext;
6
+ }
7
+ /**
8
+ * This error originates from the dagger engine. It means that some error was thrown and sent back via GraphQL.
9
+ */
10
+ export declare class GraphQLRequestError extends DaggerSDKError {
11
+ name: "GraphQLRequestError";
12
+ code: "D100";
13
+ /**
14
+ * The query and variables, which caused the error.
15
+ */
16
+ requestContext: GraphQLRequestContext;
17
+ /**
18
+ * the GraphQL response containing the error.
19
+ */
20
+ response: GraphQLResponse;
21
+ /**
22
+ * @hidden
23
+ */
24
+ constructor(message: string, options: GraphQLRequestErrorOptions);
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=GraphQLRequestError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphQLRequestError.d.ts","sourceRoot":"","sources":["../../../common/errors/GraphQLRequestError.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,UAAU,0BAA2B,SAAQ,qBAAqB;IAChE,QAAQ,EAAE,eAAe,CAAA;IACzB,OAAO,EAAE,qBAAqB,CAAA;CAC/B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,cAAc;IACrD,IAAI,wBAAkC;IACtC,IAAI,SAAkC;IAEtC;;OAEG;IACH,cAAc,EAAE,qBAAqB,CAAA;IAErC;;OAEG;IACH,QAAQ,EAAE,eAAe,CAAA;IAEzB;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,0BAA0B;CAKjE"}
@@ -0,0 +1,17 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error originates from the dagger engine. It means that some error was thrown and sent back via GraphQL.
5
+ */
6
+ export class GraphQLRequestError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.GraphQLRequestError;
13
+ this.code = ERROR_CODES.GraphQLRequestError;
14
+ this.requestContext = options.request;
15
+ this.response = options.response;
16
+ }
17
+ }
@@ -0,0 +1,13 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ /**
3
+ * This error is thrown if the dagger binary cannot be copied from the dagger docker image and copied to the local host.
4
+ */
5
+ export declare class InitEngineSessionBinaryError extends DaggerSDKError {
6
+ name: "InitEngineSessionBinaryError";
7
+ code: "D106";
8
+ /**
9
+ * @hidden
10
+ */
11
+ constructor(message: string, options?: DaggerSDKErrorOptions);
12
+ }
13
+ //# sourceMappingURL=InitEngineSessionBinaryError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InitEngineSessionBinaryError.d.ts","sourceRoot":"","sources":["../../../common/errors/InitEngineSessionBinaryError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E;;GAEG;AACH,qBAAa,4BAA6B,SAAQ,cAAc;IAC9D,IAAI,iCAA2C;IAC/C,IAAI,SAA2C;IAE/C;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB;CAG7D"}
@@ -0,0 +1,15 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the dagger binary cannot be copied from the dagger docker image and copied to the local host.
5
+ */
6
+ export class InitEngineSessionBinaryError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.InitEngineSessionBinaryError;
13
+ this.code = ERROR_CODES.InitEngineSessionBinaryError;
14
+ }
15
+ }
@@ -0,0 +1,21 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ interface TooManyNestedObjectsErrorOptions extends DaggerSDKErrorOptions {
3
+ response: unknown;
4
+ }
5
+ /**
6
+ * Dagger only expects one response value from the engine. If the engine returns more than one value this error is thrown.
7
+ */
8
+ export declare class TooManyNestedObjectsError extends DaggerSDKError {
9
+ name: "TooManyNestedObjectsError";
10
+ code: "D102";
11
+ /**
12
+ * the response containing more than one value.
13
+ */
14
+ response: unknown;
15
+ /**
16
+ * @hidden
17
+ */
18
+ constructor(message: string, options: TooManyNestedObjectsErrorOptions);
19
+ }
20
+ export {};
21
+ //# sourceMappingURL=TooManyNestedObjectsError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TooManyNestedObjectsError.d.ts","sourceRoot":"","sources":["../../../common/errors/TooManyNestedObjectsError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,UAAU,gCAAiC,SAAQ,qBAAqB;IACtE,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,cAAc;IAC3D,IAAI,8BAAwC;IAC5C,IAAI,SAAwC;IAE5C;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAA;IAEjB;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,gCAAgC;CAIvE"}
@@ -0,0 +1,16 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * Dagger only expects one response value from the engine. If the engine returns more than one value this error is thrown.
5
+ */
6
+ export class TooManyNestedObjectsError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.TooManyNestedObjectsError;
13
+ this.code = ERROR_CODES.TooManyNestedObjectsError;
14
+ this.response = options.response;
15
+ }
16
+ }
@@ -0,0 +1,13 @@
1
+ import { DaggerSDKError, DaggerSDKErrorOptions } from "./DaggerSDKError.js";
2
+ /**
3
+ * This error is thrown if the dagger SDK does not identify the error and just wraps the cause.
4
+ */
5
+ export declare class UnknownDaggerError extends DaggerSDKError {
6
+ name: "UnknownDaggerError";
7
+ code: "D101";
8
+ /**
9
+ * @hidden
10
+ */
11
+ constructor(message: string, options: DaggerSDKErrorOptions);
12
+ }
13
+ //# sourceMappingURL=UnknownDaggerError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UnknownDaggerError.d.ts","sourceRoot":"","sources":["../../../common/errors/UnknownDaggerError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAG3E;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,IAAI,uBAAiC;IACrC,IAAI,SAAiC;IAErC;;OAEG;gBACS,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB;CAG5D"}
@@ -0,0 +1,15 @@
1
+ import { DaggerSDKError } from "./DaggerSDKError.js";
2
+ import { ERROR_CODES, ERROR_NAMES } from "./errors-codes.js";
3
+ /**
4
+ * This error is thrown if the dagger SDK does not identify the error and just wraps the cause.
5
+ */
6
+ export class UnknownDaggerError extends DaggerSDKError {
7
+ /**
8
+ * @hidden
9
+ */
10
+ constructor(message, options) {
11
+ super(message, options);
12
+ this.name = ERROR_NAMES.UnknownDaggerError;
13
+ this.code = ERROR_CODES.UnknownDaggerError;
14
+ }
15
+ }
@@ -0,0 +1,43 @@
1
+ export declare const ERROR_CODES: {
2
+ /**
3
+ * {@link GraphQLRequestError}
4
+ */
5
+ readonly GraphQLRequestError: "D100";
6
+ /**
7
+ * {@link UnknownDaggerError}
8
+ */
9
+ readonly UnknownDaggerError: "D101";
10
+ /**
11
+ * {@link TooManyNestedObjectsError}
12
+ */
13
+ readonly TooManyNestedObjectsError: "D102";
14
+ /**
15
+ * {@link EngineSessionConnectParamsParseError}
16
+ */
17
+ readonly EngineSessionConnectParamsParseError: "D103";
18
+ /**
19
+ * {@link EngineSessionConnectionTimeoutError}
20
+ */
21
+ readonly EngineSessionConnectionTimeoutError: "D104";
22
+ /**
23
+ * {@link EngineSessionEOFError}
24
+ */
25
+ readonly EngineSessionEOFError: "D105";
26
+ /**
27
+ * {@link InitEngineSessionBinaryError}
28
+ */
29
+ readonly InitEngineSessionBinaryError: "D106";
30
+ /**
31
+ * {@link DockerImageRefValidationError}
32
+ */
33
+ readonly DockerImageRefValidationError: "D107";
34
+ };
35
+ type ErrorCodesType = typeof ERROR_CODES;
36
+ export type ErrorNames = keyof ErrorCodesType;
37
+ export type ErrorCodes = ErrorCodesType[ErrorNames];
38
+ type ErrorNamesMap = {
39
+ readonly [Key in ErrorNames]: Key;
40
+ };
41
+ export declare const ERROR_NAMES: ErrorNamesMap;
42
+ export {};
43
+ //# sourceMappingURL=errors-codes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors-codes.d.ts","sourceRoot":"","sources":["../../../common/errors/errors-codes.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;IACtB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;CAEK,CAAA;AAEV,KAAK,cAAc,GAAG,OAAO,WAAW,CAAA;AACxC,MAAM,MAAM,UAAU,GAAG,MAAM,cAAc,CAAA;AAC7C,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;AAEnD,KAAK,aAAa,GAAG;IAAE,QAAQ,EAAE,GAAG,IAAI,UAAU,GAAG,GAAG;CAAE,CAAA;AAC1D,eAAO,MAAM,WAAW,EAAE,aAKzB,CAAA"}