mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 01:34:27 +00:00 
			
		
		
		
	`make go-licenses` will generate `assets/go-licenses.json` which is then included in the webpack build. This step depends on both go and node being present, so unfortunately, I could not automate the generation by hooking it up to `tidy` as that target is triggered on CI where we do not have a docker image with both go an node. It should be ran from time to time, ideally after each go mod update.
		
			
				
	
	
		
			31 lines
		
	
	
		
			804 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			804 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
#!/usr/bin/env node
 | 
						|
import fastGlob from 'fast-glob';
 | 
						|
import {fileURLToPath} from 'url';
 | 
						|
import {readFileSync, writeFileSync} from 'fs';
 | 
						|
import wrapAnsi from 'wrap-ansi';
 | 
						|
import {join, dirname} from 'path';
 | 
						|
 | 
						|
const base = process.argv[2];
 | 
						|
const out = process.argv[3];
 | 
						|
 | 
						|
function exit(err) {
 | 
						|
  if (err) console.error(err);
 | 
						|
  process.exit(err ? 1 : 0);
 | 
						|
}
 | 
						|
 | 
						|
async function main() {
 | 
						|
  const data = fastGlob.sync('**/*', {
 | 
						|
    cwd: fileURLToPath(new URL(`../${base}`, import.meta.url)),
 | 
						|
  }).filter((path) => {
 | 
						|
    return /\/((UN)?LICEN(S|C)E|COPYING|NOTICE)/i.test(path);
 | 
						|
  }).sort().map((path) => {
 | 
						|
    return {
 | 
						|
      name: dirname(path),
 | 
						|
      body: wrapAnsi(readFileSync(join(base, path), 'utf8') || '', 80)
 | 
						|
    };
 | 
						|
  });
 | 
						|
  writeFileSync(out, JSON.stringify(data, null, 2));
 | 
						|
}
 | 
						|
 | 
						|
main().then(exit).catch(exit);
 |