@hexonet/semantic-release-whmcs 4.0.2 → 4.0.3
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/.github/workflows/pull-request.yml +7 -7
- package/.github/workflows/push.yml +7 -7
- package/HISTORY.md +7 -0
- package/README.md +1 -0
- package/coverage/coverage-final.json +8 -8
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +19 -19
- package/coverage/lib/definitions/errors.js.html +1 -1
- package/coverage/lib/definitions/index.html +1 -1
- package/coverage/lib/delete-marketplace-version.js.html +93 -150
- package/coverage/lib/get-error.js.html +1 -1
- package/coverage/lib/get-github-releases.js.html +15 -21
- package/coverage/lib/index.html +45 -45
- package/coverage/lib/publish.js.html +81 -204
- package/coverage/lib/puppet.js.html +208 -55
- package/coverage/lib/resolve-config.js.html +13 -10
- package/coverage/lib/scrape-marketplace-versions.js.html +32 -134
- package/coverage/lib/set-compatible-versions.js.html +64 -142
- package/coverage/lib/verify.js.html +9 -6
- package/coverage/sort-arrow-sprite.png +0 -0
- package/lib/delete-marketplace-version.js +59 -78
- package/lib/get-github-releases.js +9 -11
- package/lib/publish.js +76 -117
- package/lib/puppet.js +79 -28
- package/lib/resolve-config.js +9 -8
- package/lib/scrape-marketplace-versions.js +27 -61
- package/lib/set-compatible-versions.js +53 -79
- package/lib/verify.js +4 -3
- package/package.json +5 -5
@@ -23,9 +23,9 @@
|
|
23
23
|
<div class='clearfix'>
|
24
24
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
26
|
-
<span class="strong">
|
26
|
+
<span class="strong">87.5% </span>
|
27
27
|
<span class="quiet">Statements</span>
|
28
|
-
<span class='fraction'>
|
28
|
+
<span class='fraction'>42/48</span>
|
29
29
|
</div>
|
30
30
|
|
31
31
|
|
@@ -44,9 +44,9 @@
|
|
44
44
|
|
45
45
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
47
|
-
<span class="strong">
|
47
|
+
<span class="strong">87.5% </span>
|
48
48
|
<span class="quiet">Lines</span>
|
49
|
-
<span class='fraction'>
|
49
|
+
<span class='fraction'>42/48</span>
|
50
50
|
</div>
|
51
51
|
|
52
52
|
|
@@ -149,26 +149,7 @@
|
|
149
149
|
<a name='L84'></a><a href='#L84'>84</a>
|
150
150
|
<a name='L85'></a><a href='#L85'>85</a>
|
151
151
|
<a name='L86'></a><a href='#L86'>86</a>
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
167
|
-
<a name='L102'></a><a href='#L102'>102</a>
|
168
|
-
<a name='L103'></a><a href='#L103'>103</a>
|
169
|
-
<a name='L104'></a><a href='#L104'>104</a>
|
170
|
-
<a name='L105'></a><a href='#L105'>105</a>
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
152
|
+
<a name='L87'></a><a href='#L87'>87</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
172
153
|
<span class="cline-any cline-yes">1x</span>
|
173
154
|
<span class="cline-any cline-yes">1x</span>
|
174
155
|
<span class="cline-any cline-neutral"> </span>
|
@@ -179,85 +160,69 @@
|
|
179
160
|
<span class="cline-any cline-neutral"> </span>
|
180
161
|
<span class="cline-any cline-neutral"> </span>
|
181
162
|
<span class="cline-any cline-neutral"> </span>
|
163
|
+
<span class="cline-any cline-neutral"> </span>
|
164
|
+
<span class="cline-any cline-yes">1x</span>
|
182
165
|
<span class="cline-any cline-yes">1x</span>
|
183
166
|
<span class="cline-any cline-neutral"> </span>
|
184
167
|
<span class="cline-any cline-yes">1x</span>
|
185
|
-
<span class="cline-any cline-
|
168
|
+
<span class="cline-any cline-yes">1x</span>
|
186
169
|
<span class="cline-any cline-no"> </span>
|
187
170
|
<span class="cline-any cline-no"> </span>
|
188
171
|
<span class="cline-any cline-neutral"> </span>
|
189
172
|
<span class="cline-any cline-neutral"> </span>
|
190
173
|
<span class="cline-any cline-yes">1x</span>
|
191
|
-
<span class="cline-any cline-yes">1x</span>
|
192
|
-
<span class="cline-any cline-yes">1x</span>
|
193
174
|
<span class="cline-any cline-neutral"> </span>
|
194
175
|
<span class="cline-any cline-yes">1x</span>
|
195
176
|
<span class="cline-any cline-yes">1x</span>
|
196
|
-
<span class="cline-any cline-neutral"> </span>
|
197
|
-
<span class="cline-any cline-yes">1x</span>
|
198
177
|
<span class="cline-any cline-yes">1x</span>
|
178
|
+
<span class="cline-any cline-no"> </span>
|
199
179
|
<span class="cline-any cline-neutral"> </span>
|
200
180
|
<span class="cline-any cline-neutral"> </span>
|
201
181
|
<span class="cline-any cline-yes">1x</span>
|
202
|
-
<span class="cline-any cline-yes">1x</span>
|
203
182
|
<span class="cline-any cline-neutral"> </span>
|
204
|
-
<span class="cline-any cline-yes">1x</span>
|
205
|
-
<span class="cline-any cline-yes">1x</span>
|
206
183
|
<span class="cline-any cline-neutral"> </span>
|
207
184
|
<span class="cline-any cline-yes">1x</span>
|
208
|
-
<span class="cline-any cline-
|
209
|
-
<span class="cline-any cline-yes">1x</span>
|
210
|
-
<span class="cline-any cline-yes">1x</span>
|
211
|
-
<span class="cline-any cline-yes">1x</span>
|
212
|
-
<span class="cline-any cline-yes">1x</span>
|
213
|
-
<span class="cline-any cline-yes">1x</span>
|
214
|
-
<span class="cline-any cline-yes">1x</span>
|
215
|
-
<span class="cline-any cline-yes">1x</span>
|
185
|
+
<span class="cline-any cline-neutral"> </span>
|
216
186
|
<span class="cline-any cline-yes">1x</span>
|
217
187
|
<span class="cline-any cline-yes">1x</span>
|
218
188
|
<span class="cline-any cline-yes">1x</span>
|
219
189
|
<span class="cline-any cline-neutral"> </span>
|
220
|
-
<span class="cline-any cline-no"> </span>
|
221
|
-
<span class="cline-any cline-no"> </span>
|
222
|
-
<span class="cline-any cline-no"> </span>
|
223
190
|
<span class="cline-any cline-neutral"> </span>
|
224
|
-
<span class="cline-any cline-yes">1x</span>
|
225
|
-
<span class="cline-any cline-yes">1x</span>
|
226
|
-
<span class="cline-any cline-yes">1x</span>
|
227
|
-
<span class="cline-any cline-no"> </span>
|
228
191
|
<span class="cline-any cline-neutral"> </span>
|
229
192
|
<span class="cline-any cline-neutral"> </span>
|
230
|
-
<span class="cline-any cline-yes">1x</span>
|
231
|
-
<span class="cline-any cline-yes">1x</span>
|
232
|
-
<span class="cline-any cline-yes">1x</span>
|
233
193
|
<span class="cline-any cline-neutral"> </span>
|
234
194
|
<span class="cline-any cline-neutral"> </span>
|
235
|
-
<span class="cline-any cline-
|
236
|
-
<span class="cline-any cline-yes">1x</span>
|
237
|
-
<span class="cline-any cline-yes">1x</span>
|
238
|
-
<span class="cline-any cline-yes">1x</span>
|
195
|
+
<span class="cline-any cline-neutral"> </span>
|
239
196
|
<span class="cline-any cline-neutral"> </span>
|
240
197
|
<span class="cline-any cline-neutral"> </span>
|
241
198
|
<span class="cline-any cline-yes">1x</span>
|
242
199
|
<span class="cline-any cline-yes">1x</span>
|
243
|
-
<span class="cline-any cline-yes">
|
244
|
-
<span class="cline-any cline-yes">
|
245
|
-
<span class="cline-any cline-yes">
|
246
|
-
<span class="cline-any cline-yes">
|
200
|
+
<span class="cline-any cline-yes">3x</span>
|
201
|
+
<span class="cline-any cline-yes">3x</span>
|
202
|
+
<span class="cline-any cline-yes">2x</span>
|
203
|
+
<span class="cline-any cline-yes">2x</span>
|
204
|
+
<span class="cline-any cline-yes">2x</span>
|
205
|
+
<span class="cline-any cline-yes">2x</span>
|
206
|
+
<span class="cline-any cline-yes">2x</span>
|
207
|
+
<span class="cline-any cline-yes">2x</span>
|
208
|
+
<span class="cline-any cline-yes">2x</span>
|
209
|
+
<span class="cline-any cline-yes">2x</span>
|
210
|
+
<span class="cline-any cline-yes">2x</span>
|
211
|
+
<span class="cline-any cline-yes">2x</span>
|
212
|
+
<span class="cline-any cline-neutral"> </span>
|
213
|
+
<span class="cline-any cline-yes">2x</span>
|
214
|
+
<span class="cline-any cline-yes">2x</span>
|
215
|
+
<span class="cline-any cline-yes">2x</span>
|
216
|
+
<span class="cline-any cline-yes">2x</span>
|
217
|
+
<span class="cline-any cline-yes">2x</span>
|
218
|
+
<span class="cline-any cline-yes">2x</span>
|
219
|
+
<span class="cline-any cline-yes">2x</span>
|
220
|
+
<span class="cline-any cline-yes">2x</span>
|
247
221
|
<span class="cline-any cline-neutral"> </span>
|
248
222
|
<span class="cline-any cline-neutral"> </span>
|
249
|
-
<span class="cline-any cline-yes">1x</span>
|
250
|
-
<span class="cline-any cline-yes">1x</span>
|
251
|
-
<span class="cline-any cline-yes">1x</span>
|
252
|
-
<span class="cline-any cline-yes">1x</span>
|
253
|
-
<span class="cline-any cline-yes">1x</span>
|
254
|
-
<span class="cline-any cline-yes">1x</span>
|
255
|
-
<span class="cline-any cline-yes">1x</span>
|
256
223
|
<span class="cline-any cline-neutral"> </span>
|
257
|
-
<span class="cline-any cline-yes">1x</span>
|
258
|
-
<span class="cline-any cline-yes">1x</span>
|
259
|
-
<span class="cline-any cline-yes">1x</span>
|
260
224
|
<span class="cline-any cline-neutral"> </span>
|
225
|
+
<span class="cline-any cline-yes">1x</span>
|
261
226
|
<span class="cline-any cline-no"> </span>
|
262
227
|
<span class="cline-any cline-no"> </span>
|
263
228
|
<span class="cline-any cline-no"> </span>
|
@@ -266,116 +231,94 @@
|
|
266
231
|
<span class="cline-any cline-neutral"> </span>
|
267
232
|
<span class="cline-any cline-yes">1x</span>
|
268
233
|
<span class="cline-any cline-yes">1x</span>
|
269
|
-
<span class="cline-any cline-no"> </span>
|
270
|
-
<span class="cline-any cline-neutral"> </span>
|
271
|
-
<span class="cline-any cline-yes">1x</span>
|
272
234
|
<span class="cline-any cline-neutral"> </span>
|
273
235
|
<span class="cline-any cline-neutral"> </span>
|
274
236
|
<span class="cline-any cline-neutral"> </span>
|
275
237
|
<span class="cline-any cline-neutral"> </span>
|
276
238
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">const debug = require('debug')('semantic-release:whmcs')
|
277
|
-
const resolveConfig = require('./resolve-config')
|
278
239
|
const puppet = require('./puppet')
|
240
|
+
const path = require('path')
|
279
241
|
|
280
242
|
/**
|
281
243
|
* A method to publish the module update on whmcs market place
|
282
244
|
*/
|
283
245
|
module.exports = async (pluginConfig, context) => {
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
246
|
+
// if (!context.logger) {
|
247
|
+
// context.logger = console;
|
248
|
+
// }
|
249
|
+
|
250
|
+
const sep = '+++++++++++++++++++++++++++++++++++++++++++++++++++'
|
251
|
+
const out = `\n${sep}\n${path.basename(__filename)}\n${sep}\n`
|
288
252
|
|
253
|
+
const { version } = context
|
289
254
|
<span class="missing-if-branch" title="if path not taken" >I</span>if (!version || !version.length) {
|
290
|
-
<span class="cstat-no" title="statement not covered" > debug(
|
291
|
-
<span class="cstat-no" title="statement not covered" > logger.error('WHMCS Marketplace deleting product version failed. No input data available.')</span>
|
255
|
+
<span class="cstat-no" title="statement not covered" > debug(`${out}Deleting product version failed. No input data available.`)</span>
|
292
256
|
<span class="cstat-no" title="statement not covered" > return false</span>
|
293
257
|
}
|
294
258
|
|
295
|
-
|
296
|
-
const { whmcsLOGIN, whmcsPASSWORD, whmcsPRODUCTID, withHEAD, DEBUG } = resolveConfig(context)
|
297
|
-
const { gotoOpts, navOpts, selectorOpts, page } = await puppet(withHEAD, DEBUG, logger)
|
259
|
+
debug(`${out}Delete Version: ${version}`)
|
298
260
|
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
261
|
+
const püppi = await puppet(context)
|
262
|
+
const result = await püppi.login()
|
263
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!result) {
|
264
|
+
<span class="cstat-no" title="statement not covered" > return result</span>
|
265
|
+
}
|
266
|
+
const { page, navOpts, gotoOpts, selectorOpts, productid, urlbase } =
|
267
|
+
püppi.config
|
304
268
|
|
305
269
|
// strip markdown links from notes as not allowed to keep
|
306
|
-
const wmbase = 'https://marketplace.whmcs.com'
|
307
|
-
let url = `${wmbase}/user/login`
|
308
|
-
|
309
270
|
try {
|
271
|
+
// navigate to product administration
|
272
|
+
const url = `${urlbase}/product/${productid}/edit#versions`
|
310
273
|
await page.goto(url, gotoOpts)
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
await page.
|
316
|
-
await page.type('#password', whmcsPASSWORD)
|
317
|
-
debug('WHMCS Marketplace credentials entered')
|
318
|
-
const nav = page.waitForNavigation(navOpts)
|
319
|
-
await page.hover(selector)
|
320
|
-
await page.click(selector)
|
321
|
-
await nav
|
322
|
-
debug('Login form successfully submitted.')
|
323
|
-
logger.log('WHMCS Marketplace Login Form successfully submitted.')
|
324
|
-
} catch (error) {
|
325
|
-
<span class="cstat-no" title="statement not covered" > debug('WHMCS Marketplace login failed.', error.message)</span>
|
326
|
-
<span class="cstat-no" title="statement not covered" > logger.error('WHMCS Marketplace login failed.', error.message)</span>
|
327
|
-
<span class="cstat-no" title="statement not covered" > success = false</span>
|
328
|
-
}
|
329
|
-
<span class="missing-if-branch" title="else path not taken" >E</span>if (success) {
|
330
|
-
try {
|
331
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!parseInt(whmcsPRODUCTID, 10)) {
|
332
|
-
<span class="cstat-no" title="statement not covered" > return false</span>
|
333
|
-
}
|
334
|
-
// open versions tab
|
335
|
-
url = `${wmbase}/product/${whmcsPRODUCTID}/edit#versions`
|
336
|
-
await page.goto(url, gotoOpts)
|
337
|
-
debug('product page loaded at %s', url)
|
274
|
+
debug('product page loaded at %s', url)
|
275
|
+
// open versions tab (instead of doing it via url)
|
276
|
+
// let selector = '#nav-tabs li a[href="#versions"]';
|
277
|
+
// await page.waitForSelector(selector, selectorOpts);
|
278
|
+
// await page.click(selector);
|
338
279
|
|
339
|
-
|
340
|
-
|
341
|
-
|
280
|
+
// delete version
|
281
|
+
// xpath improvements / changes with v16.1.0
|
282
|
+
// -> https://github.com/puppeteer/puppeteer/pull/8730
|
283
|
+
// https://github.com/puppeteer/puppeteer/blob/d1681ec06b7c3db4b51c20b17b3339f852efbd4d/test/src/queryhandler.spec.ts
|
284
|
+
let elements = []
|
285
|
+
do {
|
286
|
+
const xpath = `xpath/.//td[contains(., "Version ${version}")]/following-sibling::td/a[contains(@class, "btn-styled-red")]`
|
287
|
+
await page.waitForSelector(xpath, selectorOpts)
|
342
288
|
debug('XPath found.')
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
<span class="cstat-no" title="statement not covered" > debug('
|
367
|
-
<span class="cstat-no" title="statement not covered" >
|
368
|
-
<span class="cstat-no" title="statement not covered" >
|
289
|
+
const nav = page.waitForNavigation(navOpts)
|
290
|
+
elements = await page.$$(xpath)
|
291
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (elements.length) {
|
292
|
+
debug('Delete Button - click.')
|
293
|
+
await elements[0].hover()
|
294
|
+
await elements[0].click()
|
295
|
+
debug('Delete Button - clicked.')
|
296
|
+
await nav
|
297
|
+
debug('Navigation finished.')
|
298
|
+
// confirm deletion
|
299
|
+
const selector = 'button.btn-styled-red'
|
300
|
+
await page.waitForSelector(selector, selectorOpts)
|
301
|
+
debug('deletion confirmation button available')
|
302
|
+
debug('click confirmation button')
|
303
|
+
await page.clickAndNavigate(selector)
|
304
|
+
debug('clicked confirmation button')
|
305
|
+
await nav
|
306
|
+
debug('WHMCS Marketplace deleting product version succeeded.')
|
307
|
+
}
|
308
|
+
} while (elements.length)
|
309
|
+
} catch (error) {
|
310
|
+
// while loop and having all versions deleted
|
311
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!/waiting for selector `.\/\//i.test(error.message)) {
|
312
|
+
<span class="cstat-no" title="statement not covered" > debug('Deleting product version failed.', error.message)</span>
|
313
|
+
<span class="cstat-no" title="statement not covered" > await page.browser().close()</span>
|
314
|
+
<span class="cstat-no" title="statement not covered" > return false</span>
|
369
315
|
}
|
370
316
|
}
|
371
317
|
|
372
318
|
await page.browser().close()
|
373
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (!success) {
|
374
|
-
<span class="cstat-no" title="statement not covered" > return false</span>
|
375
|
-
}
|
376
319
|
return {
|
377
320
|
name: 'WHMCS Marketplace Product Version',
|
378
|
-
url: `${
|
321
|
+
url: `${urlbase}/product/${productid}`
|
379
322
|
}
|
380
323
|
}
|
381
324
|
</pre></td></tr></table></pre>
|
@@ -385,7 +328,7 @@ module.exports = async (pluginConfig, context) => {
|
|
385
328
|
<div class='footer quiet pad2 space-top1 center small'>
|
386
329
|
Code coverage generated by
|
387
330
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
388
|
-
at
|
331
|
+
at 2022-08-09T11:01:27.229Z
|
389
332
|
</div>
|
390
333
|
<script src="../prettify.js"></script>
|
391
334
|
<script>
|
@@ -91,7 +91,7 @@ module.exports = (code) => {
|
|
91
91
|
<div class='footer quiet pad2 space-top1 center small'>
|
92
92
|
Code coverage generated by
|
93
93
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
94
|
-
at
|
94
|
+
at 2022-08-09T11:01:27.229Z
|
95
95
|
</div>
|
96
96
|
<script src="../prettify.js"></script>
|
97
97
|
<script>
|
@@ -25,7 +25,7 @@
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
26
26
|
<span class="strong">0% </span>
|
27
27
|
<span class="quiet">Statements</span>
|
28
|
-
<span class='fraction'>0/
|
28
|
+
<span class='fraction'>0/17</span>
|
29
29
|
</div>
|
30
30
|
|
31
31
|
|
@@ -46,7 +46,7 @@
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
47
47
|
<span class="strong">0% </span>
|
48
48
|
<span class="quiet">Lines</span>
|
49
|
-
<span class='fraction'>0/
|
49
|
+
<span class='fraction'>0/17</span>
|
50
50
|
</div>
|
51
51
|
|
52
52
|
|
@@ -96,9 +96,7 @@
|
|
96
96
|
<a name='L31'></a><a href='#L31'>31</a>
|
97
97
|
<a name='L32'></a><a href='#L32'>32</a>
|
98
98
|
<a name='L33'></a><a href='#L33'>33</a>
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
99
|
+
<a name='L34'></a><a href='#L34'>34</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
102
100
|
<span class="cline-any cline-no"> </span>
|
103
101
|
<span class="cline-any cline-no"> </span>
|
104
102
|
<span class="cline-any cline-neutral"> </span>
|
@@ -109,23 +107,21 @@
|
|
109
107
|
<span class="cline-any cline-neutral"> </span>
|
110
108
|
<span class="cline-any cline-neutral"> </span>
|
111
109
|
<span class="cline-any cline-no"> </span>
|
112
|
-
<span class="cline-any cline-neutral"> </span>
|
113
|
-
<span class="cline-any cline-neutral"> </span>
|
114
110
|
<span class="cline-any cline-no"> </span>
|
115
111
|
<span class="cline-any cline-neutral"> </span>
|
116
112
|
<span class="cline-any cline-no"> </span>
|
117
|
-
<span class="cline-any cline-no"> </span>
|
118
113
|
<span class="cline-any cline-neutral"> </span>
|
119
114
|
<span class="cline-any cline-no"> </span>
|
120
115
|
<span class="cline-any cline-neutral"> </span>
|
121
|
-
<span class="cline-any cline-no"> </span>
|
122
116
|
<span class="cline-any cline-neutral"> </span>
|
117
|
+
<span class="cline-any cline-no"> </span>
|
123
118
|
<span class="cline-any cline-neutral"> </span>
|
124
119
|
<span class="cline-any cline-no"> </span>
|
125
120
|
<span class="cline-any cline-no"> </span>
|
126
121
|
<span class="cline-any cline-no"> </span>
|
127
122
|
<span class="cline-any cline-no"> </span>
|
128
123
|
<span class="cline-any cline-no"> </span>
|
124
|
+
<span class="cline-any cline-neutral"> </span>
|
129
125
|
<span class="cline-any cline-no"> </span>
|
130
126
|
<span class="cline-any cline-no"> </span>
|
131
127
|
<span class="cline-any cline-neutral"> </span>
|
@@ -144,27 +140,25 @@ const GitHub = <span class="cstat-no" title="statement not covered" >require('gi
|
|
144
140
|
* A method to get releases from github repository
|
145
141
|
*/
|
146
142
|
<span class="cstat-no" title="statement not covered" >module.exports = <span class="fstat-no" title="function not covered" >as</span>ync (pluginConfig, context) => {</span>
|
147
|
-
const {
|
148
|
-
logger
|
149
|
-
} = <span class="cstat-no" title="statement not covered" >context</span>
|
150
|
-
|
151
143
|
<span class="cstat-no" title="statement not covered" > debug('Getting releases from GitHub')</span>
|
152
|
-
<span class="cstat-no" title="statement not covered" > logger.log('Getting releases from GitHub')</span>
|
153
144
|
|
154
|
-
const {
|
145
|
+
const { ghrepo, ghtoken } = <span class="cstat-no" title="statement not covered" >resolveConfig(context)</span>
|
155
146
|
|
156
147
|
const gh = <span class="cstat-no" title="statement not covered" >new GitHub({</span>
|
157
|
-
token:
|
148
|
+
token: ghtoken
|
158
149
|
})
|
159
|
-
<span class="cstat-no" title="statement not covered" > if (
|
160
|
-
|
150
|
+
<span class="cstat-no" title="statement not covered" > if (ghrepo) {</span>
|
151
|
+
// optional by default false
|
152
|
+
const repo = <span class="cstat-no" title="statement not covered" >ghrepo.split('/')</span>
|
161
153
|
const githubReleases = <span class="cstat-no" title="statement not covered" >await gh.getRepo(repo[0], repo[1]).listReleases()</span>
|
162
154
|
<span class="cstat-no" title="statement not covered" > if (githubReleases.status === 200) {</span>
|
163
|
-
<span class="cstat-no" title="statement not covered" > githubReleases.data.forEach(<span class="fstat-no" title="function not covered" >r
|
155
|
+
<span class="cstat-no" title="statement not covered" > githubReleases.data.forEach(<span class="fstat-no" title="function not covered" >(r</span>) =></span>
|
156
|
+
<span class="cstat-no" title="statement not covered" > debug(`Detected GitHub release ${r.name.substring(1)}`)</span>
|
157
|
+
)
|
164
158
|
<span class="cstat-no" title="statement not covered" > githubReleases.data.reverse()</span>
|
165
159
|
<span class="cstat-no" title="statement not covered" > return githubReleases.data</span>
|
166
160
|
}
|
167
|
-
<span class="cstat-no" title="statement not covered" >
|
161
|
+
<span class="cstat-no" title="statement not covered" > debug('Failed to get releases from GitHub')</span>
|
168
162
|
}
|
169
163
|
<span class="cstat-no" title="statement not covered" > return false</span>
|
170
164
|
}
|
@@ -175,7 +169,7 @@ const GitHub = <span class="cstat-no" title="statement not covered" >require('gi
|
|
175
169
|
<div class='footer quiet pad2 space-top1 center small'>
|
176
170
|
Code coverage generated by
|
177
171
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
178
|
-
at
|
172
|
+
at 2022-08-09T11:01:27.229Z
|
179
173
|
</div>
|
180
174
|
<script src="../prettify.js"></script>
|
181
175
|
<script>
|