Skip to content

Commit e1d37e2

Browse files
committed
Automatically bump swagger version
1 parent 8d0307f commit e1d37e2

File tree

4 files changed

+511
-543
lines changed

4 files changed

+511
-543
lines changed

js/bump-swagger.js

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
const fs = require('fs')
2+
const path = require('path')
3+
const fromString = require('from2-string')
4+
const pump = require('pump')
5+
const split = require('split2')
6+
const pt = require('parallel-transform')
7+
8+
const yamlPath = path.resolve(__dirname, '..', 'swagger.yml')
9+
10+
const swaggerYaml = fs.readFileSync(yamlPath, 'utf8')
11+
const yamlStream = fromString(swaggerYaml)
12+
const writeStream = fs.createWriteStream(yamlPath)
13+
14+
const newVersion = require('../package.json').version
15+
let oldVersion
16+
let didBumpVersion = false
17+
18+
const splitString = 'version:'
19+
20+
function transform (chunk, cb) {
21+
if (!didBumpVersion) {
22+
if (chunk.includes(splitString)) {
23+
const parts = chunk.split(splitString)
24+
oldVersion = parts[1]
25+
parts[1] = ' ' + newVersion
26+
chunk = parts.join(splitString)
27+
didBumpVersion = true
28+
}
29+
}
30+
31+
chunk = chunk + '\n'
32+
return cb(null, chunk)
33+
}
34+
35+
pump(yamlStream, split(), pt(5, transform), writeStream, (err) => {
36+
if (err) throw err
37+
if (!didBumpVersion) throw new Error('error bumping swagger.yaml version: couldnt find version string ')
38+
console.log('bumped swagger.yml from ' + oldVersion + ' to ' + newVersion)
39+
})

0 commit comments

Comments
 (0)