From e7bff5b41c4304196a813a9e677e6ddd3d7a6fd7 Mon Sep 17 00:00:00 2001 From: Timo Hocker Date: Wed, 13 May 2020 16:07:46 +0200 Subject: [PATCH] adapt jenkins.js --- jenkins.js | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) diff --git a/jenkins.js b/jenkins.js index c2fb836..0cd1194 100644 --- a/jenkins.js +++ b/jenkins.js @@ -1,6 +1,5 @@ -/* eslint-disable no-process-exit */ -/* eslint-disable no-console */ -/* eslint-disable no-sync */ +/* eslint-disable */ + 'use strict'; const fs = require ('fs'); @@ -16,12 +15,33 @@ child_process.execSync ('yarn lint', { stdio: 'inherit' }); child_process.execSync ('yarn test', { stdio: 'inherit' }); child_process.execSync ('yarn compile', { stdio: 'inherit' }); -child_process.exec ('git log -1 | grep \'\\[no publish\\]\'') - .addListener ('exit', (code) => { - if (code === 0) { - console.log ('build not marked for deployment'); - process.exit (1); - } - else { child_process.execSync ('yarn publish --access public'); } - }); +if (typeof pkg.description === 'undefined' || pkg.description === '') { + console.log ('description undefined'); + process.exit (1); +} +if (typeof pkg.repository === 'undefined') { + console.log ('repository undefined'); + process.exit (1); +} + +function major (version) { + return version.replace (/\.[0-9]+$/ui, ''); +} + +if (fs.existsSync ('README.md')) { + const readme = fs.readFileSync ('README.md', 'utf-8'); + const version = (/version: ([0-9.]+)/ui).exec (readme); + if ( + version === null + || major (version[1]) !== major (pkg.version) + ) { + console.log ('readme version does not match package version'); + process.exit (1); + } + else { child_process.execSync ('yarn publish --access public'); } +} +else { + console.log ('readme does not exist'); + process.exit (1); +}