@forge/cli 10.0.0-next.11 → 10.0.1-next.10

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/CHANGELOG.md CHANGED
@@ -1,5 +1,161 @@
1
1
  # @forge/cli
2
2
 
3
+ ## 10.0.1-next.10
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [4913321]
8
+ - @forge/manifest@7.4.0-next.3
9
+ - @forge/cli-shared@5.0.1-next.3
10
+ - @forge/lint@5.2.0-next.4
11
+ - @forge/tunnel@5.2.2-next.8
12
+ - @forge/bundler@4.17.0-next.7
13
+
14
+ ## 10.0.1-next.9
15
+
16
+ ### Patch Changes
17
+
18
+ - 7dae3d7: Fix sandbox tunnel compatibility with Node 14
19
+ - Updated dependencies [7dae3d7]
20
+ - @forge/cli-shared@5.0.1-next.2
21
+ - @forge/manifest@7.4.0-next.2
22
+ - @forge/bundler@4.17.0-next.6
23
+ - @forge/lint@5.2.0-next.3
24
+ - @forge/tunnel@5.2.2-next.7
25
+
26
+ ## 10.0.1-next.8
27
+
28
+ ### Patch Changes
29
+
30
+ - Updated dependencies [ba1a1c3]
31
+ - @forge/tunnel@5.2.2-next.6
32
+
33
+ ## 10.0.1-next.7
34
+
35
+ ### Patch Changes
36
+
37
+ - Updated dependencies [8e5e3cc]
38
+ - @forge/bundler@4.17.0-next.5
39
+ - @forge/tunnel@5.2.2-next.5
40
+
41
+ ## 10.0.1-next.6
42
+
43
+ ### Patch Changes
44
+
45
+ - Updated dependencies [4e2b1a9]
46
+ - Updated dependencies [289edb1]
47
+ - @forge/runtime@5.8.1-next.0
48
+ - @forge/manifest@7.4.0-next.1
49
+ - @forge/bundler@4.17.0-next.4
50
+ - @forge/tunnel@5.2.2-next.4
51
+ - @forge/cli-shared@5.0.1-next.1
52
+ - @forge/lint@5.2.0-next.2
53
+
54
+ ## 10.0.1-next.5
55
+
56
+ ### Patch Changes
57
+
58
+ - Updated dependencies [b3d7850]
59
+ - Updated dependencies [a8cdbca]
60
+ - @forge/manifest@7.4.0-next.0
61
+ - @forge/cli-shared@5.0.1-next.0
62
+ - @forge/lint@5.2.0-next.1
63
+ - @forge/tunnel@5.2.2-next.3
64
+ - @forge/bundler@4.17.0-next.3
65
+
66
+ ## 10.0.1-next.4
67
+
68
+ ### Patch Changes
69
+
70
+ - Updated dependencies [d2eeda0]
71
+ - @forge/bundler@4.17.0-next.2
72
+ - @forge/tunnel@5.2.2-next.2
73
+
74
+ ## 10.0.1-next.3
75
+
76
+ ### Patch Changes
77
+
78
+ - @forge/bundler@4.16.3-next.1
79
+ - @forge/tunnel@5.2.2-next.1
80
+
81
+ ## 10.0.1-next.2
82
+
83
+ ### Patch Changes
84
+
85
+ - 381042f: tracking command option on Sentry and analytic events
86
+
87
+ ## 10.0.1-next.1
88
+
89
+ ### Patch Changes
90
+
91
+ - Updated dependencies [07e4505]
92
+ - @forge/lint@5.2.0-next.0
93
+ - @forge/bundler@4.16.3-next.0
94
+ - @forge/tunnel@5.2.2-next.0
95
+
96
+ ## 10.0.1-next.0
97
+
98
+ ### Patch Changes
99
+
100
+ - f08bd2c: Add Cloudflare tunnel analytics
101
+
102
+ ## 10.0.0
103
+
104
+ ### Major Changes
105
+
106
+ - 5c2c20f: Fixed the issue where the CLI was unable to bundle modules with multiple entrypoints using different resource types.
107
+
108
+ Specifically the following configuration that supports both UI Kit and Custom UI resources are now supported properly.
109
+
110
+ ```yaml
111
+ modules:
112
+ jira:customFieldType:
113
+ - key: my_custom_field_app
114
+ resource: ui-kit-resource
115
+ render: native
116
+ contextConfig:
117
+ resource: custom-ui-resource
118
+ ```
119
+
120
+ In the previous CLI version, the above configuration would assume that the `custom-ui-resource` is a UI Kit resource
121
+ and would expected a UI Kit based resource is linked. To support using same resource type for multiple entrypoints,
122
+ in above example, please add `render: native` to the `contextConfig` to correct the resource type:
123
+
124
+ ```yaml
125
+ modules:
126
+ jira:customFieldType:
127
+ - key: my_custom_field_app
128
+ resource: ui-kit-resource
129
+ render: native
130
+ contextConfig:
131
+ resource: ui-kit-resource
132
+ render: native
133
+ ```
134
+
135
+ ### Minor Changes
136
+
137
+ - 670a419: Only parse listed environment variables in the manifest
138
+
139
+ ### Patch Changes
140
+
141
+ - 0c62018: Ignore rate limit errors when polling for installation status
142
+ - 6099d41: Update testing to support Node 20+
143
+ - b2ca651: Use exponential backoff when installation status task is rate limited
144
+ - Updated dependencies [5c2c20f]
145
+ - Updated dependencies [77d16a9]
146
+ - Updated dependencies [6162ed5]
147
+ - Updated dependencies [7787d36]
148
+ - Updated dependencies [670a419]
149
+ - Updated dependencies [4c2dc9f]
150
+ - Updated dependencies [1fcdb65]
151
+ - Updated dependencies [6099d41]
152
+ - Updated dependencies [f04a310]
153
+ - @forge/cli-shared@5.0.0
154
+ - @forge/manifest@7.3.0
155
+ - @forge/tunnel@5.2.1
156
+ - @forge/bundler@4.16.2
157
+ - @forge/lint@5.1.1
158
+
3
159
  ## 10.0.0-next.11
4
160
 
5
161
  ### Patch Changes
@@ -1,22 +1,22 @@
1
1
  {
2
2
  "name": "@forge/cli",
3
- "version": "10.0.0-next.11",
3
+ "version": "10.0.1-next.10",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@forge/cli",
9
- "version": "10.0.0-next.11",
9
+ "version": "10.0.1-next.10",
10
10
  "hasInstallScript": true,
11
11
  "license": "UNLICENSED",
12
12
  "dependencies": {
13
- "@forge/bundler": "4.16.2-next.8",
14
- "@forge/cli-shared": "5.0.0-next.7",
13
+ "@forge/bundler": "4.17.0-next.7",
14
+ "@forge/cli-shared": "5.0.1-next.3",
15
15
  "@forge/egress": "1.2.13",
16
- "@forge/lint": "5.1.1-next.7",
17
- "@forge/manifest": "7.3.0-next.6",
18
- "@forge/runtime": "5.8.0",
19
- "@forge/tunnel": "5.2.1-next.9",
16
+ "@forge/lint": "5.2.0-next.4",
17
+ "@forge/manifest": "7.4.0-next.3",
18
+ "@forge/runtime": "5.8.1-next.0",
19
+ "@forge/tunnel": "5.2.2-next.8",
20
20
  "@forge/util": "1.4.3",
21
21
  "@sentry/node": "7.100.1",
22
22
  "ajv": "^8.12.0",
@@ -878,9 +878,9 @@
878
878
  "integrity": "sha512-zG50ZRzbKyWHVb/XjI6iCIyyDNmSHdlclvehMjFZ/A3qpHExjSCjaszeY6gBDJKD2GORKKjQ3LS1UyRpiVVvkA=="
879
879
  },
880
880
  "node_modules/@forge/bundler": {
881
- "version": "4.16.2-next.8",
882
- "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.16.2-next.8.tgz",
883
- "integrity": "sha512-YzBbDHlPB6COup1P89TMky1iN0Fa0UJliZFpOwEPq8w/Vzl9OQcw4P6d4Vb6kDoR21moZwZH31wJRR6JlXzPkg==",
881
+ "version": "4.17.0-next.7",
882
+ "resolved": "https://registry.npmjs.org/@forge/bundler/-/bundler-4.17.0-next.7.tgz",
883
+ "integrity": "sha512-932FBsGwTbjKW7p3Kf2pya0pvRqLD1K3sMdp7kEAAXQFhf5nLqcxtuvOn4MTDvsJ74NMyr8oc7G81POWZf68oQ==",
884
884
  "dependencies": {
885
885
  "@babel/core": "^7.24.0",
886
886
  "@babel/plugin-transform-class-properties": "^7.23.3",
@@ -889,10 +889,10 @@
889
889
  "@babel/plugin-transform-optional-chaining": "^7.23.4",
890
890
  "@babel/plugin-transform-react-jsx": "^7.23.4",
891
891
  "@babel/preset-typescript": "^7.23.3",
892
- "@forge/api": "3.7.0-next.0",
892
+ "@forge/api": "3.7.1-next.0",
893
893
  "@forge/babel-plugin-transform-ui": "1.1.18",
894
- "@forge/cli-shared": "5.0.0-next.7",
895
- "@forge/lint": "5.1.1-next.7",
894
+ "@forge/cli-shared": "5.0.1-next.3",
895
+ "@forge/lint": "5.2.0-next.4",
896
896
  "@forge/util": "1.4.3",
897
897
  "assert": "^2.1.0",
898
898
  "babel-loader": "^8.3.0",
@@ -931,9 +931,9 @@
931
931
  }
932
932
  },
933
933
  "node_modules/@forge/bundler/node_modules/@forge/api": {
934
- "version": "3.7.0-next.0",
935
- "resolved": "https://registry.npmjs.org/@forge/api/-/api-3.7.0-next.0.tgz",
936
- "integrity": "sha512-aEtkdfY4qd51UbeXhRhVaC1ZzhwkrFep2LCGyw1O0TJr/1pAfVaBWMlxh0OXjMdteUu8vLFw63zd9yjGHZ84qg==",
934
+ "version": "3.7.1-next.0",
935
+ "resolved": "https://registry.npmjs.org/@forge/api/-/api-3.7.1-next.0.tgz",
936
+ "integrity": "sha512-0Md1gPfv6s9Bc3eyO4Ftrk0h8CVmG6YGLjsW/nXBV+NCYQG1txIpcjAb/72ZYaVgVK5UoG39sveDnB0q+1apEQ==",
937
937
  "dependencies": {
938
938
  "@forge/auth": "0.0.5",
939
939
  "@forge/egress": "1.2.13",
@@ -949,11 +949,11 @@
949
949
  "integrity": "sha512-n4AWXkzMA4Pv4nam+dTu7PHgDQtMwaAF2MalOWF323zGvYKS/gZJY+7efJq0DLP783iTfjvYT879EHhCrfvEXA=="
950
950
  },
951
951
  "node_modules/@forge/cli-shared": {
952
- "version": "5.0.0-next.7",
953
- "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-5.0.0-next.7.tgz",
954
- "integrity": "sha512-DuTOmRMr6M+GLTQpq+i3cPMPEH5Lh6mw9mq4FQpm5dxhr5Uw4LLeEolc/1XSm+sIMgBKNHLOCWvs4VgVMcg7yw==",
952
+ "version": "5.0.1-next.3",
953
+ "resolved": "https://registry.npmjs.org/@forge/cli-shared/-/cli-shared-5.0.1-next.3.tgz",
954
+ "integrity": "sha512-Wd7HT8ch43C9OUUaSMFXM/HtMaBrtOBtVdMa/+yXohwdJB/X5+LMkh1c5Og7+ZFXGlUWwHQ4tJp8YrYLJPPLFw==",
955
955
  "dependencies": {
956
- "@forge/manifest": "7.3.0-next.6",
956
+ "@forge/manifest": "7.4.0-next.3",
957
957
  "@forge/util": "1.4.3",
958
958
  "@sentry/node": "7.100.1",
959
959
  "adm-zip": "^0.5.10",
@@ -1004,13 +1004,13 @@
1004
1004
  }
1005
1005
  },
1006
1006
  "node_modules/@forge/lint": {
1007
- "version": "5.1.1-next.7",
1008
- "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-5.1.1-next.7.tgz",
1009
- "integrity": "sha512-J9z33eUjqLf1sY3hloQqamshjxsFmohTlzzHOIzcOzh7AnvhL5+PhcRPmlElwEZNbrx4gnZaE0TLZ2tB5pvItA==",
1007
+ "version": "5.2.0-next.4",
1008
+ "resolved": "https://registry.npmjs.org/@forge/lint/-/lint-5.2.0-next.4.tgz",
1009
+ "integrity": "sha512-/aZ4Ye9cd4RsbGVRe9lqy8VwKiV2ylEQOEZ0xJTYC7NtcWQJZbVgX8J3yn47ewzHqPeGZ8s2p6rSWufKjb6eug==",
1010
1010
  "dependencies": {
1011
- "@forge/cli-shared": "5.0.0-next.7",
1011
+ "@forge/cli-shared": "5.0.1-next.3",
1012
1012
  "@forge/egress": "1.2.13",
1013
- "@forge/manifest": "7.3.0-next.6",
1013
+ "@forge/manifest": "7.4.0-next.3",
1014
1014
  "@typescript-eslint/typescript-estree": "^5.62.0",
1015
1015
  "array.prototype.flatmap": "^1.3.2",
1016
1016
  "atlassian-openapi": "^1.0.18",
@@ -1019,9 +1019,9 @@
1019
1019
  }
1020
1020
  },
1021
1021
  "node_modules/@forge/manifest": {
1022
- "version": "7.3.0-next.6",
1023
- "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-7.3.0-next.6.tgz",
1024
- "integrity": "sha512-Mm90I4iPgribDWUuF0ffwbVZGjB0fbmFmaMnp44SShH8RERAZ5NbnBm4zhB9y55OsEU2ZXZhQ1EUPWzyl/12EA==",
1022
+ "version": "7.4.0-next.3",
1023
+ "resolved": "https://registry.npmjs.org/@forge/manifest/-/manifest-7.4.0-next.3.tgz",
1024
+ "integrity": "sha512-ZwSJrDRPBSIm2Iu2F9G2j1NXxLpDQQ12PEtMb0H2iE4GOhOMndgg3JN6csbYZ24/yBu+hTY8rp4I0GuA3qoBhw==",
1025
1025
  "dependencies": {
1026
1026
  "@forge/util": "1.4.3",
1027
1027
  "@sentry/node": "7.100.1",
@@ -1037,9 +1037,9 @@
1037
1037
  }
1038
1038
  },
1039
1039
  "node_modules/@forge/runtime": {
1040
- "version": "5.8.0",
1041
- "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-5.8.0.tgz",
1042
- "integrity": "sha512-dzpWSHWhzfeajq49spLRDRNVKJQ7crGEj1XZ7evBeyrB+eJsOkorORIH9D++JxkTHiPtVHi2R4Wd2TyTrwdY2g==",
1040
+ "version": "5.8.1-next.0",
1041
+ "resolved": "https://registry.npmjs.org/@forge/runtime/-/runtime-5.8.1-next.0.tgz",
1042
+ "integrity": "sha512-hmHFkJ0aaWVLXoZIVm5Y21pk1mKuSo7bFqj9t+r4vJSArS0x0JVKeTu/OjOMbbo8LGqfXrvSOxPzcdszc7g2+g==",
1043
1043
  "dependencies": {
1044
1044
  "@forge/util": "1.4.3",
1045
1045
  "fp-ts": "^2.16.2",
@@ -1052,15 +1052,15 @@
1052
1052
  }
1053
1053
  },
1054
1054
  "node_modules/@forge/tunnel": {
1055
- "version": "5.2.1-next.9",
1056
- "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-5.2.1-next.9.tgz",
1057
- "integrity": "sha512-yzs/NKgx4/JJIt6NsuYhhq1OnX4C0fDjwIYPakdcKwAenWA8D98t8R6Nj1c5qw6rfKyR6sVCrWlhGCOH9PKrtA==",
1055
+ "version": "5.2.2-next.8",
1056
+ "resolved": "https://registry.npmjs.org/@forge/tunnel/-/tunnel-5.2.2-next.8.tgz",
1057
+ "integrity": "sha512-1Vm2QvlV3je2KSZpR/jaV3fW1Wz7go0xFWex6FEpCac3DmN220GxA27KYF/Szx0PWG2vMgy7BASEQ8f9lpIK+g==",
1058
1058
  "dependencies": {
1059
- "@forge/bundler": "4.16.2-next.8",
1060
- "@forge/cli-shared": "5.0.0-next.7",
1059
+ "@forge/bundler": "4.17.0-next.7",
1060
+ "@forge/cli-shared": "5.0.1-next.3",
1061
1061
  "@forge/csp": "3.2.1",
1062
- "@forge/runtime": "5.8.0",
1063
- "@koterpillar/cloudflared": "^0.5.1",
1062
+ "@forge/runtime": "5.8.1-next.0",
1063
+ "cloudflared": "^0.5.2",
1064
1064
  "express": "^4.18.3",
1065
1065
  "express-intercept": "^1.1.0",
1066
1066
  "http-proxy-middleware": "^2.0.6",
@@ -1224,15 +1224,6 @@
1224
1224
  "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz",
1225
1225
  "integrity": "sha1-nfA7vXxpalxYiFw0qgbaQchUN5Y= sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg=="
1226
1226
  },
1227
- "node_modules/@koterpillar/cloudflared": {
1228
- "version": "0.5.1",
1229
- "resolved": "https://registry.npmjs.org/@koterpillar/cloudflared/-/cloudflared-0.5.1.tgz",
1230
- "integrity": "sha1-4DHkstBAPyFhl5o3PkasyQt0dMk= sha512-hV/a4BZ5+YMYT+PcsUoHBz84REqae4M3Mmt/TzFSDBK7RSsmKCD7w1NArRMj08lyTxXAqiBWZCQTE68CN/LTRA==",
1231
- "hasInstallScript": true,
1232
- "bin": {
1233
- "cloudflared": "lib/cloudflared.js"
1234
- }
1235
- },
1236
1227
  "node_modules/@leichtgewicht/ip-codec": {
1237
1228
  "version": "2.0.4",
1238
1229
  "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz",
@@ -3093,6 +3084,15 @@
3093
3084
  "node": ">=4"
3094
3085
  }
3095
3086
  },
3087
+ "node_modules/cloudflared": {
3088
+ "version": "0.5.2",
3089
+ "resolved": "https://registry.npmjs.org/cloudflared/-/cloudflared-0.5.2.tgz",
3090
+ "integrity": "sha1-VhEyMqQ5vBpmPDSbyA2j0KUPGsE= sha512-drvrnjGDBUTjDvUgXHrMzqu+PiZ2rdYizr86H18oKy3ak+YjZg1T3RsrpJPBnwQl81/LiH6LYSH6MN9TLR0fkA==",
3091
+ "hasInstallScript": true,
3092
+ "bin": {
3093
+ "cloudflared": "lib/cloudflared.js"
3094
+ }
3095
+ },
3096
3096
  "node_modules/code-point-at": {
3097
3097
  "version": "1.1.0",
3098
3098
  "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
@@ -32,5 +32,6 @@ export declare class AnalyticsClientReporter {
32
32
  private _asAttribute;
33
33
  private _getAttributes;
34
34
  private _getContainer;
35
+ static formatValue(value: any): string;
35
36
  }
36
37
  //# sourceMappingURL=analytics-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"analytics-client.d.ts","sourceRoot":"","sources":["../../src/analytics-client/analytics-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI5E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAGxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExD,oBAAY,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;AAW3D,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB;IAGrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAEvC,aAAa,CAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,+BAA+B,GAAG,MAAM,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GACjC,IAAI;IAsBA,aAAa,CAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAClC,CAAC,EAAE,KAAK,GACP,IAAI;IAQA,mBAAmB,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GACjC,IAAI;IAIA,mBAAmB,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAClC,CAAC,CAAC,EAAE,KAAK,GAAG,cAAc,GACzB,IAAI;IAQP,OAAO,CAAC,sBAAsB;IA6B9B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa;CAOtB"}
1
+ {"version":3,"file":"analytics-client.d.ts","sourceRoot":"","sources":["../../src/analytics-client/analytics-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,+BAA+B,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAI5E,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAGxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGxD,oBAAY,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;AAW3D,qBAAa,uBAAuB;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,mBAAmB;IAGrD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuB;IAEvC,aAAa,CAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,+BAA+B,GAAG,MAAM,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GACjC,IAAI;IAsBA,aAAa,CAClB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAClC,CAAC,EAAE,KAAK,GACP,IAAI;IAQA,mBAAmB,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,GACjC,IAAI;IAIA,mBAAmB,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GAAG,+BAA+B,EAC9C,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAClC,CAAC,CAAC,EAAE,KAAK,GAAG,cAAc,GACzB,IAAI;IAQP,OAAO,CAAC,sBAAsB;IA6B9B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,aAAa;WAOP,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM;CAS9C"}
@@ -10,6 +10,7 @@ const uuid_1 = require("uuid");
10
10
  const cli_shared_1 = require("@forge/cli-shared");
11
11
  const unique_machine_id_1 = require("../command-line/unique-machine-id");
12
12
  const errors_1 = require("../command-line/errors");
13
+ const url_1 = require("url");
13
14
  const Identity = (value) => value;
14
15
  function appAidOrUndefined(appAri) {
15
16
  try {
@@ -165,5 +166,14 @@ class AnalyticsClientReporter {
165
166
  ...this._asContainer(attributes.product, 'product', 'product')
166
167
  };
167
168
  }
169
+ static formatValue(value) {
170
+ return value instanceof url_1.URL
171
+ ? value.href.toString()
172
+ : typeof value === 'string'
173
+ ? value
174
+ : value === undefined
175
+ ? 'undefined'
176
+ : JSON.stringify(value);
177
+ }
168
178
  }
169
179
  exports.AnalyticsClientReporter = AnalyticsClientReporter;
@@ -1,7 +1,7 @@
1
1
  import commander, { CommanderError } from 'commander';
2
2
  import { CamelCase } from 'type-fest';
3
3
  import { AnalyticsClientReporter } from '../analytics-client/analytics-client';
4
- import { Logger, CLIDetails, CredentialGetter, PersonalApiCredentialsValidated, ErrorWithAnalytics, ErrorAnalytics } from '@forge/cli-shared';
4
+ import { Logger, CLIDetails, CredentialGetter, PersonalApiCredentialsValidated, ErrorWithAnalytics, ErrorAnalytics, FeatureFlagService } from '@forge/cli-shared';
5
5
  import { PreCommandController } from './controller/pre-command-controller';
6
6
  import * as autocomplete from '../autocomplete/types';
7
7
  import { StubController } from './controller/stubController';
@@ -46,6 +46,7 @@ export declare class Command<Args extends AnyArgs = [], Opts extends AnyOpts = D
46
46
  private readonly cliDetails;
47
47
  private readonly credentialStore;
48
48
  private readonly defaultEnvironmentController;
49
+ private readonly featureFlagService;
49
50
  get verbose(): boolean;
50
51
  private static isError;
51
52
  private static isHelpTriggered;
@@ -59,7 +60,7 @@ export declare class Command<Args extends AnyArgs = [], Opts extends AnyOpts = D
59
60
  private readonly requiresAnalyticsConsent;
60
61
  private readonly requiredOptionFlags;
61
62
  private readonly preconditionFn;
62
- static program(ui: Logger, analyticsClient: AnalyticsClientReporter, preCommandController: PreCommandController, cliDetails: CLIDetails | undefined, credentialStore: CredentialGetter, defaultEnvironmentController: DefaultEnvironmentController): Command<[], DefaultOpts>;
63
+ static program(ui: Logger, analyticsClient: AnalyticsClientReporter, preCommandController: PreCommandController, cliDetails: CLIDetails | undefined, credentialStore: CredentialGetter, defaultEnvironmentController: DefaultEnvironmentController, featureFlagService: FeatureFlagService): Command<[], DefaultOpts>;
63
64
  private constructor();
64
65
  private clone;
65
66
  version(str: string, flags?: string): Command<Args, Opts>;
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/command-line/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/command-line/command.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ class Command {
35
35
  cliDetails;
36
36
  credentialStore;
37
37
  defaultEnvironmentController;
38
+ featureFlagService;
38
39
  get verbose() {
39
40
  return this.cmd.opts().verbose;
40
41
  }
@@ -62,17 +63,18 @@ class Command {
62
63
  requiresAnalyticsConsent;
63
64
  requiredOptionFlags = [];
64
65
  preconditionFn = [];
65
- static program(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController) {
66
- const cmd = new Command(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, {});
66
+ static program(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, featureFlagService) {
67
+ const cmd = new Command(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, featureFlagService, {});
67
68
  return cmd.version(cliDetails?.version ?? 'unknown', '--version').option('--verbose', cli_shared_1.Text.optionVerbose);
68
69
  }
69
- constructor(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, { cmd, analyticsName, requiresAuthentication, requiresAnalyticsConsent, requiredOptionFlags, preconditionFn }) {
70
+ constructor(ui, analyticsClient, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, featureFlagService, { cmd, analyticsName, requiresAuthentication, requiresAnalyticsConsent, requiredOptionFlags, preconditionFn }) {
70
71
  this.ui = ui;
71
72
  this.analyticsClient = analyticsClient;
72
73
  this.preCommandController = preCommandController;
73
74
  this.cliDetails = cliDetails;
74
75
  this.credentialStore = credentialStore;
75
76
  this.defaultEnvironmentController = defaultEnvironmentController;
77
+ this.featureFlagService = featureFlagService;
76
78
  this.cmd = cmd || new commander_1.default.Command();
77
79
  this.analyticsName = analyticsName;
78
80
  this.requiresAuthentication = requiresAuthentication ?? true;
@@ -88,7 +90,7 @@ class Command {
88
90
  this.cmd.configureHelp({ sortSubcommands: true });
89
91
  }
90
92
  clone(overrides) {
91
- return new Command(this.ui, this.analyticsClient, this.preCommandController, this.cliDetails, this.credentialStore, this.defaultEnvironmentController, {
93
+ return new Command(this.ui, this.analyticsClient, this.preCommandController, this.cliDetails, this.credentialStore, this.defaultEnvironmentController, this.featureFlagService, {
92
94
  cmd: this.cmd,
93
95
  analyticsName: this.analyticsName,
94
96
  requiresAuthentication: this.requiresAuthentication,
@@ -107,7 +109,7 @@ class Command {
107
109
  .command(name, opts)
108
110
  .allowUnknownOption(false)
109
111
  .allowExcessArguments(false);
110
- const subCommand = new Command(this.ui, this.analyticsClient, this.preCommandController, this.cliDetails, this.credentialStore, this.defaultEnvironmentController, {
112
+ const subCommand = new Command(this.ui, this.analyticsClient, this.preCommandController, this.cliDetails, this.credentialStore, this.defaultEnvironmentController, this.featureFlagService, {
111
113
  cmd,
112
114
  analyticsName: Command.concatenateNames(this.analyticsName, cmd.name())
113
115
  }).option('--verbose', cli_shared_1.Text.optionVerbose);
@@ -198,9 +200,13 @@ class Command {
198
200
  attributes = {
199
201
  version: this.cliDetails.version,
200
202
  latest: this.cliDetails.latest,
201
- isLatest: this.isLatestVersion()
203
+ isLatest: this.isLatestVersion(),
204
+ cmdOptions: Object.keys(last(args))
202
205
  };
203
206
  }
207
+ if (cmdName === 'tunnel') {
208
+ attributes['isCloudflareTunnel'] = await this.featureFlagService.isCloudflareTunnelEnabled();
209
+ }
204
210
  this.analyticsClient.reportCommandInvoke(analyticsName, cred, attributes);
205
211
  const options = last(args);
206
212
  await (0, sentry_1.setSentryCmdOptFlags)(analyticsName, options);
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/tunnel-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EAGV,+BAA+B,EAC/B,oBAAoB,EAEpB,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EACL,mBAAmB,EAGnB,aAAa,EACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;gBALV,gBAAgB,EAAE,sBAAsB,EACxC,iBAAiB,EAAE,aAAa,EAChC,kBAAkB,EAAE,aAAa,EACjC,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU;IAG5B,GAAG,CAAC,aAAa,EAAE,oBAAoB,EAAE,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBvF,OAAO,CAAC,4BAA4B;IAgBvB,eAAe,CAC1B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,+BAA+B,EACtC,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;CAiBjB"}
1
+ {"version":3,"file":"tunnel-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/tunnel-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EAGV,+BAA+B,EAC/B,oBAAoB,EAEpB,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EACL,mBAAmB,EAGnB,aAAa,EACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,qBAAa,gBAAgB;IAEzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU;gBALV,gBAAgB,EAAE,sBAAsB,EACxC,iBAAiB,EAAE,aAAa,EAChC,kBAAkB,EAAE,aAAa,EACjC,mBAAmB,EAAE,mBAAmB,EACxC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU;IAG5B,GAAG,CAAC,aAAa,EAAE,oBAAoB,EAAE,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBvF,OAAO,CAAC,4BAA4B;IAgBvB,eAAe,CAC1B,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,+BAA+B,EACtC,YAAY,EAAE,OAAO,GACpB,OAAO,CAAC,IAAI,CAAC;CAmBjB"}
@@ -50,7 +50,9 @@ class TunnelController {
50
50
  async runDockerTunnel(tunnelOptions, creds, debugEnabled) {
51
51
  try {
52
52
  const imageDownloadChildProcess = await this.dockerTunnelService.bootstrapDocker();
53
- await this.tunnelView.reportDownloadProgress(imageDownloadChildProcess, this.analyticsService.getImageDownloadReporters(creds));
53
+ if (imageDownloadChildProcess) {
54
+ await this.tunnelView.reportDownloadProgress(imageDownloadChildProcess, this.analyticsService.getImageDownloadReporters(creds));
55
+ }
54
56
  }
55
57
  catch (err) {
56
58
  if (err.code === docker_service_1.DockerErrorCode.NOT_INSTALLED) {
@@ -1 +1 @@
1
- {"version":3,"file":"dependency-injection.d.ts","sourceRoot":"","sources":["../../src/command-line/dependency-injection.ts"],"names":[],"mappings":"AAIA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAGlB,gBAAgB,EAQhB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EAInB,MAAM,mBAAmB,CAAC;AAc3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAML,0BAA0B,EAG3B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AAExG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAC;AAIlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAQtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAI3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAUlE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAE3F,eAAO,MAAM,eAAe,eAAsB,UAAU,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2VvE,CAAC;AAGF,aAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC7D,oBAAY,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"dependency-injection.d.ts","sourceRoot":"","sources":["../../src/command-line/dependency-injection.ts"],"names":[],"mappings":"AAIA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAGlB,gBAAgB,EAQhB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EAInB,MAAM,mBAAmB,CAAC;AAc3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAML,0BAA0B,EAG3B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AAExG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAC;AAIlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAQtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAI3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAUlE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAE3F,eAAO,MAAM,eAAe,eAAsB,UAAU,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4VvE,CAAC;AAGF,aAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC7D,oBAAY,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC"}
@@ -174,7 +174,7 @@ const getDependencies = async (cliDetails) => {
174
174
  const startTunnelCommand = new tunnel_1.StartTunnelCommand(assertiveAppConfigReader, new tunnel_1.LocalDevelopmentServer(localInvocationService, ui, configFile, fileReader), new tunnel_1.TunnelServiceFacade(featureFlagService, ui), new tunnel_1.RegisterTunnelServiceImpl(new tunnel_1.TunnelGraphqlClient(graphQLClient), featureFlagService), functionHost, runtime_1.notImplementedInspector, ui, configFile);
175
175
  const tunnelInteractor = new tunnel_1.TunnelInteractor(ui);
176
176
  const configFilePortFindingService = new port_finding_service_1.ConfigFilePortFindingService(configFile);
177
- const tunnelAnalyticsService = new tunnel_analytics_service_1.TunnelAnalyticsService(analyticsClientReporter, cliDetails);
177
+ const tunnelAnalyticsService = new tunnel_analytics_service_1.TunnelAnalyticsService(analyticsClientReporter, cliDetails, featureFlagService);
178
178
  const nodeTunnelService = new tunnel_service_1.InProcessTunnelService(ui, startTunnelCommand, tunnelInteractor, configFilePortFindingService, cachedConfigService, tunnelAnalyticsService);
179
179
  const tunnelView = new tunnel_view_1.TunnelView(ui);
180
180
  const localTunnelService = new tunnel_service_1.LocalTunnelService(configFilePortFindingService, cachedConfigService);
@@ -184,7 +184,7 @@ const getDependencies = async (cliDetails) => {
184
184
  const stubController = new stubController_1.StubController();
185
185
  const prerequisitesController = new prerequisites_controller_1.PrerequisitesController(ui, featureFlagService, cliDetails);
186
186
  const defaultEnvironmentController = new default_environment_controller_1.DefaultEnvironmentController(ui, credentialStore, cachedConfigService, assertiveAppConfigReader, loginCommand, createEnvironmentCommand, listEnvironmentCommand, getAppOwnerQuery);
187
- cmd = command_1.Command.program(ui, analyticsClientReporter, preCommandController, cliDetails, credentialStore, defaultEnvironmentController);
187
+ cmd = command_1.Command.program(ui, analyticsClientReporter, preCommandController, cliDetails, credentialStore, defaultEnvironmentController, featureFlagService);
188
188
  return {
189
189
  ui,
190
190
  cmd,
@@ -1 +1 @@
1
- {"version":3,"file":"sentry.d.ts","sourceRoot":"","sources":["../../src/command-line/sentry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAMvE,wBAAgB,gBAAgB,CAAC,EAC/B,UAAU,EACV,mBAAmB,EACnB,OAA6B,EAC9B,EAAE;IACD,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC/D,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,yBAAyB,CAAC,CAAC;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;CACvC,QAUA;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iBAGvE;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,iBAO3F"}
1
+ {"version":3,"file":"sentry.d.ts","sourceRoot":"","sources":["../../src/command-line/sentry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAMvE,wBAAgB,gBAAgB,CAAC,EAC/B,UAAU,EACV,mBAAmB,EACnB,OAA6B,EAC9B,EAAE;IACD,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC;IAC/D,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE,yBAAyB,CAAC,CAAC;IAC1E,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;CACvC,QAUA;AAED,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,iBAGvE;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,iBAK3F"}
@@ -4,7 +4,7 @@ exports.setSentryCmdOptFlags = exports.setSentryEnvFlags = exports.initialiseSen
4
4
  const tslib_1 = require("tslib");
5
5
  const Sentry = tslib_1.__importStar(require("@sentry/node"));
6
6
  const cli_shared_1 = require("@forge/cli-shared");
7
- const url_1 = require("url");
7
+ const analytics_client_1 = require("../analytics-client/analytics-client");
8
8
  const SENTRY_DSN = 'https://9829489b1be84a728351c238c6107a33@o55978.ingest.sentry.io/4504449550843904';
9
9
  function initialiseSentry({ cliDetails, cachedConfigService, options = { dsn: SENTRY_DSN } }) {
10
10
  if (!cachedConfigService.getAnalyticsPreferences()) {
@@ -25,8 +25,7 @@ exports.setSentryEnvFlags = setSentryEnvFlags;
25
25
  async function setSentryCmdOptFlags(command, options) {
26
26
  Sentry.setTag('command.name', command);
27
27
  for (const [name, value] of Object.entries(options)) {
28
- const formatVal = value instanceof url_1.URL ? value.href : value;
29
- Sentry.setTag(`flag.${name}`, typeof formatVal === 'string' ? formatVal : JSON.stringify(formatVal));
28
+ Sentry.setTag(`flag.${name}`, analytics_client_1.AnalyticsClientReporter.formatValue(value));
30
29
  }
31
30
  }
32
31
  exports.setSentryCmdOptFlags = setSentryCmdOptFlags;
@@ -1,15 +1,16 @@
1
- import { PersonalApiCredentialsValidated, CLIDetails } from '@forge/cli-shared';
1
+ import { PersonalApiCredentialsValidated, CLIDetails, FeatureFlagService } from '@forge/cli-shared';
2
2
  import { AnalyticsClientReporter } from '../analytics-client/analytics-client';
3
3
  import { DownloadProgressCallbacks } from '../command-line/view/tunnel-view';
4
4
  export declare class TunnelAnalyticsService {
5
5
  private readonly analyticsClientReporter;
6
6
  private readonly cliDetails;
7
- constructor(analyticsClientReporter: AnalyticsClientReporter, cliDetails: CLIDetails | undefined);
7
+ private readonly featureFlagService;
8
+ constructor(analyticsClientReporter: AnalyticsClientReporter, cliDetails: CLIDetails | undefined, featureFlagService: FeatureFlagService);
8
9
  reportDockerVersion(creds: PersonalApiCredentialsValidated, dockerVersion: string | null): void;
9
10
  reportTunnelClosed(creds: PersonalApiCredentialsValidated): void;
10
11
  reportTunnelFailure(creds: PersonalApiCredentialsValidated, errorName: string, attributes: {
11
12
  [key: string]: any;
12
- }): void;
13
+ }): Promise<void>;
13
14
  getImageDownloadReporters(creds: PersonalApiCredentialsValidated): DownloadProgressCallbacks;
14
15
  }
15
16
  //# sourceMappingURL=tunnel-analytics-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-analytics-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-analytics-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,UAAU,EAAsB,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU;gBADV,uBAAuB,EAAE,uBAAuB,EAChD,UAAU,EAAE,UAAU,GAAG,SAAS;IAG9C,mBAAmB,CAAC,KAAK,EAAE,+BAA+B,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAM/F,kBAAkB,CAAC,KAAK,EAAE,+BAA+B,GAAG,IAAI;IAIhE,mBAAmB,CACxB,KAAK,EAAE,+BAA+B,EACtC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;IAgB7B,yBAAyB,CAAC,KAAK,EAAE,+BAA+B,GAAG,yBAAyB;CAOpG"}
1
+ {"version":3,"file":"tunnel-analytics-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-analytics-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,UAAU,EAAsB,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACxH,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAE7E,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;gBAFlB,uBAAuB,EAAE,uBAAuB,EAChD,UAAU,EAAE,UAAU,GAAG,SAAS,EAClC,kBAAkB,EAAE,kBAAkB;IAGlD,mBAAmB,CAAC,KAAK,EAAE,+BAA+B,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAM/F,kBAAkB,CAAC,KAAK,EAAE,+BAA+B,GAAG,IAAI;IAI1D,mBAAmB,CAC9B,KAAK,EAAE,+BAA+B,EACtC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE;IAiB7B,yBAAyB,CAAC,KAAK,EAAE,+BAA+B,GAAG,yBAAyB;CAOpG"}
@@ -5,9 +5,11 @@ const cli_shared_1 = require("@forge/cli-shared");
5
5
  class TunnelAnalyticsService {
6
6
  analyticsClientReporter;
7
7
  cliDetails;
8
- constructor(analyticsClientReporter, cliDetails) {
8
+ featureFlagService;
9
+ constructor(analyticsClientReporter, cliDetails, featureFlagService) {
9
10
  this.analyticsClientReporter = analyticsClientReporter;
10
11
  this.cliDetails = cliDetails;
12
+ this.featureFlagService = featureFlagService;
11
13
  }
12
14
  reportDockerVersion(creds, dockerVersion) {
13
15
  this.analyticsClientReporter.reportSuccess('docker version check', creds, {
@@ -17,12 +19,13 @@ class TunnelAnalyticsService {
17
19
  reportTunnelClosed(creds) {
18
20
  this.analyticsClientReporter.reportSuccess('close tunnel', creds, {});
19
21
  }
20
- reportTunnelFailure(creds, errorName, attributes) {
22
+ async reportTunnelFailure(creds, errorName, attributes) {
21
23
  attributes = {
22
24
  error: errorName,
23
25
  version: this.cliDetails?.version,
24
26
  latest: this.cliDetails?.latest,
25
27
  isLatest: (0, cli_shared_1.isLatestCLIVersion)(this.cliDetails),
28
+ isCloudflareTunnel: await this.featureFlagService.isCloudflareTunnelEnabled(),
26
29
  ...attributes
27
30
  };
28
31
  if (attributes.isUserError === undefined) {
@@ -55,7 +55,7 @@ export declare class DockerTunnelService extends SandboxTunnelServiceBase {
55
55
  private readonly analyticsService;
56
56
  constructor(configFilePortFindingService: ConfigFilePortFindingService, cachedConfigService: CachedConfigService, dockerService: DockerService, analyticsService: TunnelAnalyticsService);
57
57
  run(tunnelOptions: TunnelOptions, creds: PersonalApiCredentialsValidated, debugEnabled: boolean): Promise<void>;
58
- bootstrapDocker(): Promise<ReturnType<typeof spawn>>;
58
+ bootstrapDocker(): Promise<ReturnType<typeof spawn> | undefined>;
59
59
  private validateDockerVersion;
60
60
  private getDockerPortOptions;
61
61
  private formatEnvForDocker;
@@ -1 +1 @@
1
- {"version":3,"file":"tunnel-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tunnel-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-service.ts"],"names":[],"mappings":"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"}
@@ -80,7 +80,7 @@ class InProcessTunnelService extends TunnelServiceBase {
80
80
  await this.tunnelInteractor.handleUserExitEvent(tunnel.stopFunction, monitor);
81
81
  }
82
82
  catch (e) {
83
- this.analyticsService.reportTunnelFailure(creds, e.constructor.name, (0, cli_shared_1.getErrorAttributes)(e));
83
+ await this.analyticsService.reportTunnelFailure(creds, e.constructor.name, (0, cli_shared_1.getErrorAttributes)(e));
84
84
  if (onError) {
85
85
  await onError(e);
86
86
  }
@@ -197,7 +197,7 @@ class DockerTunnelService extends SandboxTunnelServiceBase {
197
197
  exports.IMAGE_NAME
198
198
  ]);
199
199
  docker.on('exit', () => this.analyticsService.reportTunnelClosed(creds));
200
- docker.stderr?.on('data', (error) => {
200
+ docker.stderr?.on('data', async (error) => {
201
201
  const errorMessage = error;
202
202
  let errorJson;
203
203
  try {
@@ -207,7 +207,7 @@ class DockerTunnelService extends SandboxTunnelServiceBase {
207
207
  }
208
208
  if (errorJson && errorJson.__tunnel_error__) {
209
209
  const tunnelErrorDetails = errorJson;
210
- this.analyticsService.reportTunnelFailure(creds, tunnelErrorDetails.name, tunnelErrorDetails.attributes);
210
+ await this.analyticsService.reportTunnelFailure(creds, tunnelErrorDetails.name, tunnelErrorDetails.attributes);
211
211
  }
212
212
  else {
213
213
  process.stderr?.write(errorMessage);
@@ -217,7 +217,9 @@ class DockerTunnelService extends SandboxTunnelServiceBase {
217
217
  }
218
218
  async bootstrapDocker() {
219
219
  await this.dockerService.removeContainer(exports.CONTAINER_NAME);
220
- return this.dockerService.downloadImage(exports.IMAGE_NAME);
220
+ if (!process.env.FORGE_DEV_DOCKER_TUNNEL) {
221
+ return this.dockerService.downloadImage(exports.IMAGE_NAME);
222
+ }
221
223
  }
222
224
  async validateDockerVersion(creds, debugEnabled) {
223
225
  const version = await this.dockerService.getDockerVersion(debugEnabled);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/cli",
3
- "version": "10.0.0-next.11",
3
+ "version": "10.0.1-next.10",
4
4
  "description": "A command line interface for managing Atlassian-hosted apps",
5
5
  "author": "Atlassian",
6
6
  "license": "UNLICENSED",
@@ -18,13 +18,13 @@
18
18
  "postinstall": "node -e \"fs.existsSync('./out/bin/postinstall.js') && require('./out/bin/postinstall.js')\""
19
19
  },
20
20
  "dependencies": {
21
- "@forge/bundler": "4.16.2-next.8",
22
- "@forge/cli-shared": "5.0.0-next.7",
21
+ "@forge/bundler": "4.17.0-next.7",
22
+ "@forge/cli-shared": "5.0.1-next.3",
23
23
  "@forge/egress": "1.2.13",
24
- "@forge/lint": "5.1.1-next.7",
25
- "@forge/manifest": "7.3.0-next.6",
26
- "@forge/runtime": "5.8.0",
27
- "@forge/tunnel": "5.2.1-next.9",
24
+ "@forge/lint": "5.2.0-next.4",
25
+ "@forge/manifest": "7.4.0-next.3",
26
+ "@forge/runtime": "5.8.1-next.0",
27
+ "@forge/tunnel": "5.2.2-next.8",
28
28
  "@forge/util": "1.4.3",
29
29
  "@sentry/node": "7.100.1",
30
30
  "ajv": "^8.12.0",