29 lines
		
	
	
		
			887 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			29 lines
		
	
	
		
			887 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
|  | 
 | ||
|  | const fs = require('fs'); | ||
|  | const latest = JSON.parse(fs.readFileSync('/tmp/latest.log', 'utf8')); | ||
|  | const current = JSON.parse(fs.readFileSync('/tmp/current.log', 'utf8')); | ||
|  | 
 | ||
|  | let failed = false; | ||
|  | for (let commit in latest) { | ||
|  |   if (typeof latest[commit] === 'object') { | ||
|  |     for (let compressionType in latest[commit]) { | ||
|  |       if (typeof latest[commit][compressionType] === 'object') { | ||
|  |         for (let file in latest[commit][compressionType]) { | ||
|  |           const name = `${compressionType}/${file}`; | ||
|  |           const number = latest[commit][compressionType][file]; | ||
|  |           if (current[name] - number > number / 100) { | ||
|  |             console.log(`Commit ${commit} ${compressionType} ${file} increase from ${number} to ${current[name]}`); | ||
|  |             failed = true; | ||
|  |           } | ||
|  |         } | ||
|  |       } | ||
|  |     } | ||
|  |   } | ||
|  | } | ||
|  | 
 | ||
|  | if (failed) { | ||
|  |   process.exit(1); | ||
|  | } else { | ||
|  |   console.log(`Payload size 1% check okay`); | ||
|  | } |