mirror of
				https://github.com/strapi/strapi.git
				synced 2025-10-31 18:08:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
		
			830 B
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			830 B
		
	
	
	
		
			JavaScript
		
	
	
		
			Executable File
		
	
	
	
	
| 'use strict';
 | |
| 
 | |
| const { join } = require('path');
 | |
| const { promisify } = require('util');
 | |
| const execa = require('execa');
 | |
| const fs = require('fs-extra');
 | |
| const glob = promisify(require('glob').glob);
 | |
| 
 | |
| async function run() {
 | |
|   const packageDirs = await glob('packages/**/*', { ignore: '**/node_modules/**' });
 | |
| 
 | |
|   console.log('Linking all packages');
 | |
| 
 | |
|   const packages = packageDirs
 | |
|     .filter((dir) => fs.pathExistsSync(join(dir, 'package.json')))
 | |
|     .map((dir) => {
 | |
|       return {
 | |
|         dir,
 | |
|         pkgJSON: fs.readJSONSync(join(dir, 'package.json')),
 | |
|       };
 | |
|     });
 | |
| 
 | |
|   await Promise.all(packages.map(({ dir }) => execa('yarn', ['link'], { cwd: dir })));
 | |
| 
 | |
|   const packageNames = packages.map((p) => p.pkgJSON.name).join(' ');
 | |
|   console.log(`Package names: \n ${packageNames}\n`);
 | |
| }
 | |
| 
 | |
| run().catch((err) => console.error(err));
 | 
