@forge/cache 0.2.0-next.0 → 0.2.0-next.2

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.
@@ -32,6 +32,10 @@ describe('connect', () => {
32
32
  rms: {
33
33
  url: 'https://dev.services.atlassian.com',
34
34
  host: 'rockmelon-storage.dev.atl-paas.net'
35
+ },
36
+ tracing: {
37
+ traceId: 'trace-id-test',
38
+ spanId: 'span-id-test'
35
39
  }
36
40
  };
37
41
  });
@@ -75,6 +79,10 @@ describe('createFetch', () => {
75
79
  rms: {
76
80
  url: 'https://dev.services.atlassian.com',
77
81
  host: 'rockmelon-storage.dev.atl-paas.net'
82
+ },
83
+ tracing: {
84
+ traceId: 'trace-id-test',
85
+ spanId: 'span-id-test'
78
86
  }
79
87
  };
80
88
  const fetch = (0, cache_1.createFetchRmsRuntimeV2)();
@@ -84,7 +92,9 @@ describe('createFetch', () => {
84
92
  expect((options === null || options === void 0 ? void 0 : options.agent)['keepAlive']).toBeTruthy();
85
93
  expect(options === null || options === void 0 ? void 0 : options.headers).toMatchObject({
86
94
  Authorization: 'Bearer token',
87
- Host: 'rockmelon-storage.dev.atl-paas.net'
95
+ Host: 'rockmelon-storage.dev.atl-paas.net',
96
+ 'x-b3-traceid': 'trace-id-test',
97
+ 'x-b3-spanid': 'span-id-test'
88
98
  });
89
99
  });
90
100
  });
@@ -172,12 +182,6 @@ describe('Cache', () => {
172
182
  expect(result).toEqual(11);
173
183
  expect(fetch.mock.lastCall).toMatchSnapshot();
174
184
  });
175
- it('handles success with ttl', async () => {
176
- const { cache, fetch } = buildCache();
177
- fetch.mockResolvedValueOnce({ ok: true, text: async () => JSON.stringify({ response: 13 }), status: 200 });
178
- await cache.incrementAndGet('key', { ttlSeconds: 100 });
179
- expect(fetch.mock.lastCall).toMatchSnapshot();
180
- });
181
185
  it('handles failure', async () => {
182
186
  const { cache, fetch } = buildCache();
183
187
  fetch.mockResolvedValueOnce({ ok: false, text: async () => 'Not allowed', status: 403 });
package/out/cache.d.ts CHANGED
@@ -12,9 +12,7 @@ export declare class Cache {
12
12
  ttlSeconds: number;
13
13
  }): Promise<'OK' | null>;
14
14
  get(key: string): Promise<string>;
15
- incrementAndGet(key: string, opt?: {
16
- ttlSeconds: number;
17
- }): Promise<number>;
15
+ incrementAndGet(key: string): Promise<number>;
18
16
  }
19
17
  export declare function getFetchRmsRuntimeV1(): ((path: string, options?: RequestInit) => Promise<Response>) | undefined;
20
18
  export declare function createFetchRmsRuntimeV2(): (path: string, options?: RequestInit) => Promise<Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AACA,OAAkB,EAAE,WAAW,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAInF,oBAAY,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC;AAGzE,wBAAsB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAYtE;AAED,qBAAa,KAAK;IACJ,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC;IAGtF,OAAO,CAAC,YAAY;IAUP,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAO9F,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOjC,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;CAMzF;AAED,wBAAgB,oBAAoB,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAE/G;AAID,wBAAgB,uBAAuB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAwBpG;AAED,wBAAgB,OAAO,UAItB"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../src/cache.ts"],"names":[],"mappings":"AACA,OAAkB,EAAE,WAAW,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAInF,oBAAY,QAAQ,GAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC,CAAC;AAGzE,wBAAsB,eAAe,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAYtE;AAED,qBAAa,KAAK;IACJ,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC;IAGtF,OAAO,CAAC,YAAY;IAUP,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5E,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAO9F,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOjC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAM3D;AAED,wBAAgB,oBAAoB,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,SAAS,CAE/G;AAID,wBAAgB,uBAAuB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CA2BpG;AAED,wBAAgB,OAAO,UAItB"}
package/out/cache.js CHANGED
@@ -43,8 +43,8 @@ class Cache {
43
43
  const { value: result } = await getResponseBody(response);
44
44
  return result;
45
45
  }
46
- async incrementAndGet(key, opt) {
47
- const response = await this.client('rms/store/incr', this.buildRequest(Object.assign({ key }, opt)));
46
+ async incrementAndGet(key) {
47
+ const response = await this.client('rms/store/incr', this.buildRequest({ key }));
48
48
  const { response: result } = await getResponseBody(response);
49
49
  return result;
50
50
  }
@@ -56,14 +56,14 @@ function getFetchRmsRuntimeV1() {
56
56
  }
57
57
  exports.getFetchRmsRuntimeV1 = getFetchRmsRuntimeV1;
58
58
  function createFetchRmsRuntimeV2() {
59
- const { proxy, rms } = (0, api_1.getRuntime)();
59
+ const { proxy, rms, tracing } = (0, api_1.getRuntime)();
60
60
  const agent = new https_1.Agent({ keepAlive: true });
61
61
  if (!(rms === null || rms === void 0 ? void 0 : rms.url) || !(rms === null || rms === void 0 ? void 0 : rms.host)) {
62
62
  throw new Error('RMS config not available.');
63
63
  }
64
64
  return async function (path, options) {
65
65
  const rmsFullUrl = new URL(rms.url) + path;
66
- return await global['fetch'](rmsFullUrl, Object.assign(Object.assign({}, options), { agent, headers: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.headers), { Authorization: `Bearer ${proxy.token}`, Host: rms.host }) }));
66
+ return await global['fetch'](rmsFullUrl, Object.assign(Object.assign({}, options), { agent, headers: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.headers), { Authorization: `Bearer ${proxy.token}`, Host: rms.host, 'x-b3-traceid': tracing.traceId, 'x-b3-spanid': tracing.spanId }) }));
67
67
  };
68
68
  }
69
69
  exports.createFetchRmsRuntimeV2 = createFetchRmsRuntimeV2;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/cache",
3
- "version": "0.2.0-next.0",
3
+ "version": "0.2.0-next.2",
4
4
  "description": "Forge Cache methods",
5
5
  "author": "Atlassian",
6
6
  "license": "UNLICENSED",
@@ -20,6 +20,6 @@
20
20
  "node-fetch": "2.6.7"
21
21
  },
22
22
  "dependencies": {
23
- "@forge/api": "^2.16.0"
23
+ "@forge/api": "^2.17.0-next.0"
24
24
  }
25
25
  }