@balena/open-balena-api 42.2.0-build-kyle-no-systemd-015e305236f231550e442f1b778690ea19bd2abc-1 → 42.2.0-build-aethernet-authorizedkeys-a313a1a68633db2bdfea2bfa67736a57fe624c18-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.
- package/dist/features/ci-cd/models/release-additions.js +19 -3
- package/dist/features/ci-cd/models/release-additions.js.map +1 -1
- package/dist/features/devices/models/device-additions.js +201 -183
- package/dist/features/devices/models/device-additions.js.map +1 -1
- package/dist/features/os-config/index.js +9 -2
- package/dist/features/os-config/index.js.map +1 -1
- package/package.json +6 -6
@@ -45,7 +45,11 @@ export const addToModel = (abstractSql) => {
|
|
45
45
|
fieldName: 'semver',
|
46
46
|
dataType: 'Short Text',
|
47
47
|
required: true,
|
48
|
-
computed:
|
48
|
+
computed: {
|
49
|
+
parallel: 'SAFE',
|
50
|
+
volatility: 'IMMUTABLE',
|
51
|
+
definition: semverField,
|
52
|
+
},
|
49
53
|
});
|
50
54
|
const createdAtTimestampNode = [
|
51
55
|
'Cast',
|
@@ -90,12 +94,21 @@ export const addToModel = (abstractSql) => {
|
|
90
94
|
fieldName: 'raw version',
|
91
95
|
dataType: 'Short Text',
|
92
96
|
required: true,
|
93
|
-
computed:
|
97
|
+
computed: {
|
98
|
+
parallel: 'SAFE',
|
99
|
+
volatility: 'IMMUTABLE',
|
100
|
+
definition: rawVersionField,
|
101
|
+
},
|
94
102
|
}, {
|
95
103
|
fieldName: 'version',
|
96
104
|
dataType: 'JSON',
|
97
105
|
required: true,
|
98
|
-
computed:
|
106
|
+
computed: {
|
107
|
+
parallel: 'SAFE',
|
108
|
+
volatility: 'IMMUTABLE',
|
109
|
+
definition: [
|
110
|
+
'Cast',
|
111
|
+
oneLineTrimSqlConcat `{
|
99
112
|
"raw": "${rawVersionField}",
|
100
113
|
"major": ${majorField},
|
101
114
|
"minor": ${minorField},
|
@@ -104,6 +117,9 @@ export const addToModel = (abstractSql) => {
|
|
104
117
|
"build": [${joinTextParts(',', [hasBuild, splitStringParts(buildField)], [hasPositiveRevisionNotInBuild, oneLineTrimSqlConcat `"${revN}"`], [hasVariant, oneLineTrimSqlConcat `"${variantField}"`])}],
|
105
118
|
"version": "${versionCoreAndPrerelease}"
|
106
119
|
}`,
|
120
|
+
'JSON',
|
121
|
+
],
|
122
|
+
},
|
107
123
|
});
|
108
124
|
};
|
109
125
|
//# sourceMappingURL=release-additions.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"release-additions.js","sourceRoot":"","sources":["../../../../src/features/ci-cd/models/release-additions.ts"],"names":[],"mappings":"AAQA,OAAO,EACN,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,GAChB,MAAM,gCAAgC,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,WAA6B,EAAE,EAAE;IAC3D,MAAM,CACL,aAAa,EACb,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,UAAU,EACV,YAAY,EACZ,GAAG;QACH,UAAU;QACV,cAAc;QACd,cAAc;QACd,cAAc;QACd,mBAAmB;QACnB,cAAc;QACd,SAAS;KACT,CAAC,GAAG,CAAC,CAAC,KAAK,EAAa,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9C,MAAM,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAuB;QACjE,eAAe;QACf,UAAU;QACV,YAAY;KACZ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAkB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,oBAAoB,CAAA,MAAM,aAAa,EAAE,CAAC;IAEvD,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACzC,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,oBAAoB,CAAA,GAAG,UAAU,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;IACpF,MAAM,WAAW,GAAG,oBAAoB,CAAA,GAAG,WAAW,GAAG;QACxD,MAAM;QACN;YACC,MAAM;YACN,CAAC,MAAM,EAAE,aAAa,EAAE,oBAAoB,CAAA,IAAI,eAAe,EAAE,CAAC;YAClE,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,MAAM;KACN,GAAG;QACH,MAAM;QACN;YACC,MAAM;YACN,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAA,IAAI,UAAU,EAAE,CAAC;YACxD,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,MAAM;KACN,EAAE,CAAC;IACJ,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACzC,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,WAAW;
|
1
|
+
{"version":3,"file":"release-additions.js","sourceRoot":"","sources":["../../../../src/features/ci-cd/models/release-additions.ts"],"names":[],"mappings":"AAQA,OAAO,EACN,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,GAChB,MAAM,gCAAgC,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,WAA6B,EAAE,EAAE;IAC3D,MAAM,CACL,aAAa,EACb,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,UAAU,EACV,YAAY,EACZ,GAAG;QACH,UAAU;QACV,cAAc;QACd,cAAc;QACd,cAAc;QACd,mBAAmB;QACnB,cAAc;QACd,SAAS;KACT,CAAC,GAAG,CAAC,CAAC,KAAK,EAAa,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IAE9C,MAAM,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAuB;QACjE,eAAe;QACf,UAAU;QACV,YAAY;KACZ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAkB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,oBAAoB,CAAA,MAAM,aAAa,EAAE,CAAC;IAEvD,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACzC,SAAS,EAAE,UAAU;QACrB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,oBAAoB,CAAA,GAAG,UAAU,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;IACpF,MAAM,WAAW,GAAG,oBAAoB,CAAA,GAAG,WAAW,GAAG;QACxD,MAAM;QACN;YACC,MAAM;YACN,CAAC,MAAM,EAAE,aAAa,EAAE,oBAAoB,CAAA,IAAI,eAAe,EAAE,CAAC;YAClE,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,MAAM;KACN,GAAG;QACH,MAAM;QACN;YACC,MAAM;YACN,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAA,IAAI,UAAU,EAAE,CAAC;YACxD,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,MAAM;KACN,EAAE,CAAC;IACJ,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACzC,SAAS,EAAE,QAAQ;QACnB,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE;YACT,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE,WAAW;SACvB;KACD,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAa;QACxC,MAAM;QACN;YACC,OAAO;YACP,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SACzE;QACD,MAAM;KACN,CAAC;IAEF,MAAM,wBAAwB,GAAG,oBAAoB,CAAA,GAAG,WAAW,GAAG,sBAAsB,CAC3F,GAAG,EACH,GAAG,EACH,CAAC,aAAa,EAAE,eAAe,CAAC,EAChC,CAAC,OAAO,EAAE,sBAAsB,CAAC,CACjC,EAAE,CAAC;IAEJ,MAAM,6BAA6B,GAAqB;QACvD,KAAK;QACL,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7C;YACC,KAAK;YACL;gBACC,MAAM;gBACN,oBAAoB,CAAA,IAAI,UAAU,GAAG;gBACrC,oBAAoB,CAAA,KAAK,IAAI,IAAI;aACjC;SACD;KACD,CAAC;IAEF,MAAM,eAAe,GAAG,oBAAoB,CAAA,GAAG,wBAAwB,GAAG;QACzE,MAAM;QACN;YACC,MAAM;YACN;gBACC,MAAM;gBACN;oBACC,IAAI;oBACJ,QAAQ;oBACR,CAAC,aAAa,EAAE,aAAa,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;oBAC7C,UAAU;iBACV;gBACD,CAAC,cAAc,EAAE,GAAG,CAAC;aACrB;YACD,CAAC,MAAM,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;SAC9B;QACD,MAAM;KACN,GAAG,aAAa,CAChB,GAAG,EACH,CAAC,QAAQ,EAAE,UAAU,CAAC,EACtB,CAAC,6BAA6B,EAAE,IAAI,CAAC,EACrC,CAAC,UAAU,EAAE,YAAY,CAAC,CAC1B,EAAE,CAAC;IAEJ,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CACxC;QACC,SAAS,EAAE,aAAa;QACxB,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE;YACT,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE,eAAe;SAC3B;KACD,EACD;QACC,SAAS,EAAE,SAAS;QACpB,QAAQ,EAAE,MAAM;QAChB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE;YACT,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,WAAW;YACvB,UAAU,EAAE;gBACX,MAAM;gBACN,oBAAoB,CAAA;aACZ,eAAe;cACd,UAAU;cACV,UAAU;cACV,UAAU;oBACJ,aAAa,CAC7B,GAAG,EACH,CAAC,aAAa,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC,EAClD,CAAC,OAAO,EAAE,sBAAsB,CAAC,CACjC;eACW,aAAa,CACxB,GAAG,EACH,CAAC,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,EACxC,CAAC,6BAA6B,EAAE,oBAAoB,CAAA,IAAI,IAAI,GAAG,CAAC,EAChE,CAAC,UAAU,EAAE,oBAAoB,CAAA,IAAI,YAAY,GAAG,CAAC,CACrD;iBACa,wBAAwB;IACrC;gBACC,MAAM;aACN;SACD;KACD,CACD,CAAC;AACH,CAAC,CAAC"}
|
@@ -157,47 +157,142 @@ export const addToModel = (abstractSql) => {
|
|
157
157
|
abstractSql.tables['device'].fields.push({
|
158
158
|
fieldName: 'overall status',
|
159
159
|
dataType: 'Short Text',
|
160
|
-
computed:
|
161
|
-
|
162
|
-
'
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
'When',
|
160
|
+
computed: {
|
161
|
+
parallel: 'SAFE',
|
162
|
+
volatility: 'STABLE',
|
163
|
+
definition: [
|
164
|
+
// TODO: should use `is managed by-service instance` with timeout for informing online/offline
|
165
|
+
'Case',
|
166
|
+
['When', isInactive, ['EmbeddedText', 'inactive']],
|
167
|
+
['When', isPostProvisioning, ['EmbeddedText', 'post-provisioning']],
|
168
|
+
['When', isPreProvisioning, ['EmbeddedText', 'configuring']],
|
169
|
+
['When', isOverallOffline, ['EmbeddedText', 'disconnected']],
|
169
170
|
[
|
170
|
-
'
|
171
|
+
'When',
|
171
172
|
[
|
172
|
-
'
|
173
|
-
[
|
174
|
-
|
175
|
-
|
173
|
+
'And',
|
174
|
+
[
|
175
|
+
'In',
|
176
|
+
['ReferencedField', 'device', 'api heartbeat state'],
|
177
|
+
['EmbeddedText', 'online'],
|
178
|
+
['EmbeddedText', 'timeout'],
|
179
|
+
],
|
180
|
+
['Exists', ['ReferencedField', 'device', 'download progress']],
|
181
|
+
[
|
182
|
+
'Equals',
|
183
|
+
['ReferencedField', 'device', 'status'],
|
184
|
+
['EmbeddedText', 'Downloading'],
|
185
|
+
],
|
176
186
|
],
|
177
|
-
['
|
187
|
+
['EmbeddedText', 'updating'],
|
188
|
+
],
|
189
|
+
[
|
190
|
+
'When',
|
191
|
+
['Exists', ['ReferencedField', 'device', 'provisioning progress']],
|
192
|
+
['EmbeddedText', 'configuring'],
|
193
|
+
],
|
194
|
+
[
|
195
|
+
'When',
|
178
196
|
[
|
179
|
-
'
|
180
|
-
[
|
181
|
-
|
197
|
+
'And',
|
198
|
+
[
|
199
|
+
'In',
|
200
|
+
['ReferencedField', 'device', 'api heartbeat state'],
|
201
|
+
['EmbeddedText', 'online'],
|
202
|
+
['EmbeddedText', 'timeout'],
|
203
|
+
],
|
204
|
+
[
|
205
|
+
'Exists',
|
206
|
+
[
|
207
|
+
'SelectQuery',
|
208
|
+
['Select', []],
|
209
|
+
['From', ['Alias', ['Table', 'image install'], 'ii']],
|
210
|
+
[
|
211
|
+
'Where',
|
212
|
+
[
|
213
|
+
'And',
|
214
|
+
[
|
215
|
+
'Equals',
|
216
|
+
['ReferencedField', 'ii', 'device'],
|
217
|
+
['ReferencedField', 'device', 'id'],
|
218
|
+
],
|
219
|
+
['Exists', ['ReferencedField', 'ii', 'download progress']],
|
220
|
+
[
|
221
|
+
'Equals',
|
222
|
+
['ReferencedField', 'ii', 'status'],
|
223
|
+
['EmbeddedText', 'Downloading'],
|
224
|
+
],
|
225
|
+
],
|
226
|
+
],
|
227
|
+
],
|
228
|
+
],
|
182
229
|
],
|
230
|
+
['EmbeddedText', 'updating'],
|
183
231
|
],
|
184
|
-
[
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
['EmbeddedText', '
|
232
|
+
[
|
233
|
+
'When',
|
234
|
+
hasPartialConnectivity,
|
235
|
+
['EmbeddedText', 'reduced-functionality'],
|
236
|
+
],
|
237
|
+
['Else', ['EmbeddedText', 'operational']],
|
190
238
|
],
|
191
|
-
|
192
|
-
|
239
|
+
},
|
240
|
+
});
|
241
|
+
abstractSql.tables['device'].fields.push({
|
242
|
+
fieldName: 'overall progress',
|
243
|
+
dataType: 'Integer',
|
244
|
+
computed: {
|
245
|
+
parallel: 'SAFE',
|
246
|
+
volatility: 'STABLE',
|
247
|
+
definition: [
|
248
|
+
'Case',
|
193
249
|
[
|
194
|
-
'
|
250
|
+
'When',
|
251
|
+
isInactive,
|
252
|
+
// If the device is inactive then we return null progress as we have no more info
|
253
|
+
['Null'],
|
254
|
+
],
|
255
|
+
[
|
256
|
+
'When',
|
257
|
+
isPostProvisioning,
|
258
|
+
// If the device is in a post provisioning state then we return the provisioning progress
|
259
|
+
['ReferencedField', 'device', 'provisioning progress'],
|
260
|
+
],
|
261
|
+
[
|
262
|
+
'When',
|
263
|
+
isPreProvisioning,
|
264
|
+
// If the device is offline and has always been offline we return the provisioning progress
|
265
|
+
['ReferencedField', 'device', 'provisioning progress'],
|
266
|
+
],
|
267
|
+
[
|
268
|
+
'When',
|
269
|
+
isOverallOffline,
|
270
|
+
// Otherwise if the device is offline but has previously been online we return no info
|
271
|
+
['Null'],
|
272
|
+
],
|
273
|
+
[
|
274
|
+
'When',
|
195
275
|
[
|
196
|
-
'
|
197
|
-
['ReferencedField', 'device', '
|
198
|
-
[
|
199
|
-
|
276
|
+
'And',
|
277
|
+
['Exists', ['ReferencedField', 'device', 'download progress']],
|
278
|
+
[
|
279
|
+
'Equals',
|
280
|
+
['ReferencedField', 'device', 'status'],
|
281
|
+
['EmbeddedText', 'Downloading'],
|
282
|
+
],
|
200
283
|
],
|
284
|
+
// If the device itself is downloading then we return its download progress in isolation (ignoring image installs)
|
285
|
+
['ReferencedField', 'device', 'download progress'],
|
286
|
+
],
|
287
|
+
[
|
288
|
+
'When',
|
289
|
+
['Exists', ['ReferencedField', 'device', 'provisioning progress']],
|
290
|
+
['ReferencedField', 'device', 'provisioning progress'],
|
291
|
+
],
|
292
|
+
[
|
293
|
+
// If there are any image installs in the 'downloading' status then we return the average download progress of all image installs
|
294
|
+
// that are either for the current release or in the 'downloading' status
|
295
|
+
'When',
|
201
296
|
[
|
202
297
|
'Exists',
|
203
298
|
[
|
@@ -223,164 +318,83 @@ export const addToModel = (abstractSql) => {
|
|
223
318
|
],
|
224
319
|
],
|
225
320
|
],
|
226
|
-
],
|
227
|
-
['EmbeddedText', 'updating'],
|
228
|
-
],
|
229
|
-
[
|
230
|
-
'When',
|
231
|
-
hasPartialConnectivity,
|
232
|
-
['EmbeddedText', 'reduced-functionality'],
|
233
|
-
],
|
234
|
-
['Else', ['EmbeddedText', 'operational']],
|
235
|
-
],
|
236
|
-
});
|
237
|
-
abstractSql.tables['device'].fields.push({
|
238
|
-
fieldName: 'overall progress',
|
239
|
-
dataType: 'Integer',
|
240
|
-
computed: [
|
241
|
-
'Case',
|
242
|
-
[
|
243
|
-
'When',
|
244
|
-
isInactive,
|
245
|
-
// If the device is inactive then we return null progress as we have no more info
|
246
|
-
['Null'],
|
247
|
-
],
|
248
|
-
[
|
249
|
-
'When',
|
250
|
-
isPostProvisioning,
|
251
|
-
// If the device is in a post provisioning state then we return the provisioning progress
|
252
|
-
['ReferencedField', 'device', 'provisioning progress'],
|
253
|
-
],
|
254
|
-
[
|
255
|
-
'When',
|
256
|
-
isPreProvisioning,
|
257
|
-
// If the device is offline and has always been offline we return the provisioning progress
|
258
|
-
['ReferencedField', 'device', 'provisioning progress'],
|
259
|
-
],
|
260
|
-
[
|
261
|
-
'When',
|
262
|
-
isOverallOffline,
|
263
|
-
// Otherwise if the device is offline but has previously been online we return no info
|
264
|
-
['Null'],
|
265
|
-
],
|
266
|
-
[
|
267
|
-
'When',
|
268
|
-
[
|
269
|
-
'And',
|
270
|
-
['Exists', ['ReferencedField', 'device', 'download progress']],
|
271
|
-
[
|
272
|
-
'Equals',
|
273
|
-
['ReferencedField', 'device', 'status'],
|
274
|
-
['EmbeddedText', 'Downloading'],
|
275
|
-
],
|
276
|
-
],
|
277
|
-
// If the device itself is downloading then we return its download progress in isolation (ignoring image installs)
|
278
|
-
['ReferencedField', 'device', 'download progress'],
|
279
|
-
],
|
280
|
-
[
|
281
|
-
'When',
|
282
|
-
['Exists', ['ReferencedField', 'device', 'provisioning progress']],
|
283
|
-
['ReferencedField', 'device', 'provisioning progress'],
|
284
|
-
],
|
285
|
-
[
|
286
|
-
// If there are any image installs in the 'downloading' status then we return the average download progress of all image installs
|
287
|
-
// that are either for the current release or in the 'downloading' status
|
288
|
-
'When',
|
289
|
-
[
|
290
|
-
'Exists',
|
291
321
|
[
|
292
322
|
'SelectQuery',
|
293
|
-
['Select', []],
|
294
|
-
['From', ['Alias', ['Table', 'image install'], 'ii']],
|
295
|
-
[
|
296
|
-
'Where',
|
297
|
-
[
|
298
|
-
'And',
|
299
|
-
[
|
300
|
-
'Equals',
|
301
|
-
['ReferencedField', 'ii', 'device'],
|
302
|
-
['ReferencedField', 'device', 'id'],
|
303
|
-
],
|
304
|
-
['Exists', ['ReferencedField', 'ii', 'download progress']],
|
305
|
-
[
|
306
|
-
'Equals',
|
307
|
-
['ReferencedField', 'ii', 'status'],
|
308
|
-
['EmbeddedText', 'Downloading'],
|
309
|
-
],
|
310
|
-
],
|
311
|
-
],
|
312
|
-
],
|
313
|
-
],
|
314
|
-
[
|
315
|
-
'SelectQuery',
|
316
|
-
[
|
317
|
-
'Select',
|
318
323
|
[
|
324
|
+
'Select',
|
319
325
|
[
|
320
|
-
// W/o the Cast, Round(Average()) will return values of the Numeric DB type,
|
321
|
-
// and node-pg will convert that to a string, since it can't represent it
|
322
|
-
// with the same accuracy otherwise (might have too many decimals or be greater than a big int).
|
323
|
-
'Cast',
|
324
326
|
[
|
325
|
-
|
327
|
+
// W/o the Cast, Round(Average()) will return values of the Numeric DB type,
|
328
|
+
// and node-pg will convert that to a string, since it can't represent it
|
329
|
+
// with the same accuracy otherwise (might have too many decimals or be greater than a big int).
|
330
|
+
'Cast',
|
326
331
|
[
|
327
|
-
'
|
332
|
+
'Round',
|
328
333
|
[
|
329
|
-
'
|
330
|
-
[
|
331
|
-
|
334
|
+
'Average',
|
335
|
+
[
|
336
|
+
'Coalesce',
|
337
|
+
['ReferencedField', 'ii', 'download progress'],
|
338
|
+
['Number', 100],
|
339
|
+
],
|
332
340
|
],
|
333
341
|
],
|
342
|
+
'Integer',
|
334
343
|
],
|
335
|
-
'Integer',
|
336
344
|
],
|
337
345
|
],
|
338
|
-
|
339
|
-
['From', ['Alias', ['Table', 'image install'], 'ii']],
|
340
|
-
[
|
341
|
-
'Where',
|
346
|
+
['From', ['Alias', ['Table', 'image install'], 'ii']],
|
342
347
|
[
|
343
|
-
'
|
344
|
-
[
|
345
|
-
'Equals',
|
346
|
-
['ReferencedField', 'ii', 'device'],
|
347
|
-
['ReferencedField', 'device', 'id'],
|
348
|
-
],
|
349
|
-
[
|
350
|
-
'NotEquals',
|
351
|
-
['ReferencedField', 'ii', 'status'],
|
352
|
-
['EmbeddedText', 'deleted'],
|
353
|
-
],
|
348
|
+
'Where',
|
354
349
|
[
|
355
|
-
'
|
350
|
+
'And',
|
356
351
|
[
|
357
352
|
'Equals',
|
353
|
+
['ReferencedField', 'ii', 'device'],
|
354
|
+
['ReferencedField', 'device', 'id'],
|
355
|
+
],
|
356
|
+
[
|
357
|
+
'NotEquals',
|
358
358
|
['ReferencedField', 'ii', 'status'],
|
359
|
-
['EmbeddedText', '
|
359
|
+
['EmbeddedText', 'deleted'],
|
360
360
|
],
|
361
361
|
[
|
362
|
-
'
|
363
|
-
[
|
362
|
+
'Or',
|
363
|
+
[
|
364
|
+
'Equals',
|
365
|
+
['ReferencedField', 'ii', 'status'],
|
366
|
+
['EmbeddedText', 'Downloading'],
|
367
|
+
],
|
364
368
|
[
|
365
|
-
'
|
366
|
-
['ReferencedField', '
|
369
|
+
'Equals',
|
370
|
+
['ReferencedField', 'ii', 'is provided by-release'],
|
367
371
|
[
|
368
|
-
'
|
369
|
-
[
|
370
|
-
'Select',
|
371
|
-
[['ReferencedField', 'a', 'should be running-release']],
|
372
|
-
],
|
373
|
-
['From', ['Alias', ['Table', 'application'], 'a']],
|
372
|
+
'Coalesce',
|
373
|
+
['ReferencedField', 'device', 'is pinned on-release'],
|
374
374
|
[
|
375
|
-
'
|
375
|
+
'SelectQuery',
|
376
|
+
[
|
377
|
+
'Select',
|
378
|
+
[
|
379
|
+
[
|
380
|
+
'ReferencedField',
|
381
|
+
'a',
|
382
|
+
'should be running-release',
|
383
|
+
],
|
384
|
+
],
|
385
|
+
],
|
386
|
+
['From', ['Alias', ['Table', 'application'], 'a']],
|
376
387
|
[
|
377
|
-
'
|
388
|
+
'Where',
|
378
389
|
[
|
379
|
-
'
|
380
|
-
|
381
|
-
|
390
|
+
'Equals',
|
391
|
+
[
|
392
|
+
'ReferencedField',
|
393
|
+
'device',
|
394
|
+
'belongs to-application',
|
395
|
+
],
|
396
|
+
['ReferencedField', 'a', 'id'],
|
382
397
|
],
|
383
|
-
['ReferencedField', 'a', 'id'],
|
384
398
|
],
|
385
399
|
],
|
386
400
|
],
|
@@ -390,37 +404,41 @@ export const addToModel = (abstractSql) => {
|
|
390
404
|
],
|
391
405
|
],
|
392
406
|
],
|
407
|
+
// And if we haven't found any download progress yet then the default ELSE returns null
|
393
408
|
],
|
394
|
-
|
395
|
-
],
|
409
|
+
},
|
396
410
|
});
|
397
411
|
const deviceShouldBeRunningReleaseField = abstractSql.tables['device'].fields.find((f) => f.fieldName === 'should be running-release');
|
398
412
|
if (deviceShouldBeRunningReleaseField == null) {
|
399
413
|
throw new Error("Could not find 'should be running-release' field in device model");
|
400
414
|
}
|
401
|
-
deviceShouldBeRunningReleaseField.computed =
|
402
|
-
'
|
403
|
-
|
404
|
-
|
405
|
-
|
406
|
-
['ReferencedField', 'device', 'is pinned on-release'],
|
407
|
-
],
|
408
|
-
[
|
409
|
-
'Else',
|
415
|
+
deviceShouldBeRunningReleaseField.computed = {
|
416
|
+
parallel: 'SAFE',
|
417
|
+
volatility: 'STABLE',
|
418
|
+
definition: [
|
419
|
+
'Case',
|
410
420
|
[
|
411
|
-
'
|
412
|
-
['
|
413
|
-
['
|
421
|
+
'When',
|
422
|
+
['Exists', ['ReferencedField', 'device', 'is pinned on-release']],
|
423
|
+
['ReferencedField', 'device', 'is pinned on-release'],
|
424
|
+
],
|
425
|
+
[
|
426
|
+
'Else',
|
414
427
|
[
|
415
|
-
'
|
428
|
+
'SelectQuery',
|
429
|
+
['Select', [['ReferencedField', 'a', 'should be running-release']]],
|
430
|
+
['From', ['Alias', ['Table', 'application'], 'a']],
|
416
431
|
[
|
417
|
-
'
|
418
|
-
[
|
419
|
-
|
432
|
+
'Where',
|
433
|
+
[
|
434
|
+
'Equals',
|
435
|
+
['ReferencedField', 'a', 'id'],
|
436
|
+
['ReferencedField', 'device', 'belongs to-application'],
|
437
|
+
],
|
420
438
|
],
|
421
439
|
],
|
422
440
|
],
|
423
441
|
],
|
424
|
-
|
442
|
+
};
|
425
443
|
};
|
426
444
|
//# sourceMappingURL=device-additions.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"device-additions.js","sourceRoot":"","sources":["../../../../src/features/devices/models/device-additions.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"device-additions.js","sourceRoot":"","sources":["../../../../src/features/devices/models/device-additions.ts"],"names":[],"mappings":"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"}
|
@@ -22,9 +22,16 @@ const config = {
|
|
22
22
|
},
|
23
23
|
};
|
24
24
|
export const setup = (app) => {
|
25
|
-
app.get('/os/v1/config/', (
|
25
|
+
app.get('/os/v1/config/', (req, res) => {
|
26
|
+
// Clear SSH authorized keys if authorization header is present
|
27
|
+
// This mechanism is an heuristic to determine balenaOS version >= 6.1.0
|
28
|
+
// If it is, it can use a temporary JIT SSH key and don't require this one to to be set
|
29
|
+
// We can't completely remove `ssh` from the services otherwise it won't pass schema verification done by `os-config`
|
30
|
+
const servicesOverride = req.headers.authorization
|
31
|
+
? { ...services, ssh: { authorized_keys: '' } }
|
32
|
+
: services;
|
26
33
|
res.json({
|
27
|
-
services,
|
34
|
+
services: servicesOverride,
|
28
35
|
// Older os-configs don't know how to handle the config field, but
|
29
36
|
// luckily serde-rs ignores unknown fields by default.
|
30
37
|
config,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/os-config/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,wBAAwB,EACxB,4BAA4B,EAC5B,iCAAiC,EACjC,SAAS,GACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,4BAA4B;AAC5B,MAAM,QAAQ,GAAG;IAChB,OAAO,EAAE;QACR,MAAM,EAAE,4BAA4B;QACpC,EAAE,EAAE,SAAS,CAAC,wBAAwB,CAAC;KACvC;IACD,GAAG,EAAE;QACJ,eAAe,EAAE,iCAAiC;KAClD;CACD,CAAC;AAEF,0FAA0F;AAC1F,EAAE;AACF,iDAAiD;AACjD,oFAAoF;AACpF,wCAAwC;AACxC,gFAAgF;AAChF,MAAM,MAAM,GAAG;IACd,SAAS,EAAE;QACV,GAAG,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,YAAY,EAAE,WAAW,SAAS,EAAE,EAAE,CAAC;KAClE;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAgB,EAAE,EAAE;IACzC,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/features/os-config/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACN,wBAAwB,EACxB,4BAA4B,EAC5B,iCAAiC,EACjC,SAAS,GACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,4BAA4B;AAC5B,MAAM,QAAQ,GAAG;IAChB,OAAO,EAAE;QACR,MAAM,EAAE,4BAA4B;QACpC,EAAE,EAAE,SAAS,CAAC,wBAAwB,CAAC;KACvC;IACD,GAAG,EAAE;QACJ,eAAe,EAAE,iCAAiC;KAClD;CACD,CAAC;AAEF,0FAA0F;AAC1F,EAAE;AACF,iDAAiD;AACjD,oFAAoF;AACpF,wCAAwC;AACxC,gFAAgF;AAChF,MAAM,MAAM,GAAG;IACd,SAAS,EAAE;QACV,GAAG,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,YAAY,EAAE,WAAW,SAAS,EAAE,EAAE,CAAC;KAClE;CACD,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAgB,EAAE,EAAE;IACzC,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACtC,+DAA+D;QAC/D,wEAAwE;QACxE,uFAAuF;QACvF,qHAAqH;QACrH,MAAM,gBAAgB,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa;YACjD,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE;YAC/C,CAAC,CAAC,QAAQ,CAAC;QAEZ,GAAG,CAAC,IAAI,CAAC;YACR,QAAQ,EAAE,gBAAgB;YAC1B,kEAAkE;YAClE,sDAAsD;YACtD,MAAM;YACN,oGAAoG;YACpG,cAAc,EAAE,OAAO;SACvB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@balena/open-balena-api",
|
3
3
|
"description": "Internet of things, Made Simple",
|
4
|
-
"version": "42.2.0-build-
|
4
|
+
"version": "42.2.0-build-aethernet-authorizedkeys-a313a1a68633db2bdfea2bfa67736a57fe624c18-1",
|
5
5
|
"license": "AGPL-3.0",
|
6
6
|
"repository": {
|
7
7
|
"type": "git",
|
@@ -50,7 +50,7 @@
|
|
50
50
|
"@balena/env-parsing": "^1.2.5",
|
51
51
|
"@balena/es-version": "^1.0.3",
|
52
52
|
"@balena/node-metrics-gatherer": "^6.0.3",
|
53
|
-
"@balena/pinejs": "^23.
|
53
|
+
"@balena/pinejs": "^23.1.0",
|
54
54
|
"@balena/pinejs-webresource-cloudfront": "^2.0.0",
|
55
55
|
"@balena/pinejs-webresource-s3": "^2.1.7",
|
56
56
|
"@opentelemetry/api": "^1.9.0",
|
@@ -75,7 +75,7 @@
|
|
75
75
|
"@types/memoizee": "^0.4.12",
|
76
76
|
"@types/morgan": "^1.9.10",
|
77
77
|
"@types/ndjson": "^2.0.4",
|
78
|
-
"@types/node": "^
|
78
|
+
"@types/node": "^24.2.1",
|
79
79
|
"@types/node-schedule": "^2.1.8",
|
80
80
|
"@types/on-finished": "^2.3.5",
|
81
81
|
"@types/passport-jwt": "^4.0.1",
|
@@ -161,8 +161,8 @@
|
|
161
161
|
"supertest": "^7.1.4"
|
162
162
|
},
|
163
163
|
"engines": {
|
164
|
-
"node": "^
|
165
|
-
"npm": "^11.
|
164
|
+
"node": "^24.5.0",
|
165
|
+
"npm": "^11.5.2"
|
166
166
|
},
|
167
167
|
"mocha": {
|
168
168
|
"reporter": "spec",
|
@@ -174,6 +174,6 @@
|
|
174
174
|
"import": "@swc-node/register/esm-register"
|
175
175
|
},
|
176
176
|
"versionist": {
|
177
|
-
"publishedAt": "2025-08-
|
177
|
+
"publishedAt": "2025-08-13T14:53:13.893Z"
|
178
178
|
}
|
179
179
|
}
|