mirror of
				https://github.com/strapi/strapi.git
				synced 2025-10-31 18:08:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			61 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| const { execSync } = require('child_process');
 | |
| const execa = require('execa');
 | |
| const hasYarn = require('./has-yarn');
 | |
| const logger = require('./logger');
 | |
| 
 | |
| /**
 | |
|  * @param  {string} path Path to directory (frontend, backend)
 | |
|  */
 | |
| function runInstall(path) {
 | |
|   if (hasYarn()) {
 | |
|     return execa('yarn', ['install'], {
 | |
|       cwd: path,
 | |
|       stdin: 'ignore',
 | |
|     });
 | |
|   }
 | |
| 
 | |
|   return execa('npm', ['install'], { cwd: path, stdin: 'ignore' });
 | |
| }
 | |
| 
 | |
| function runApp(rootPath) {
 | |
|   if (hasYarn()) {
 | |
|     return execa('yarn', ['develop'], {
 | |
|       stdio: 'inherit',
 | |
|       cwd: rootPath,
 | |
|     });
 | |
|   } else {
 | |
|     return execa('npm', ['run', 'develop'], {
 | |
|       stdio: 'inherit',
 | |
|       cwd: rootPath,
 | |
|     });
 | |
|   }
 | |
| }
 | |
| 
 | |
| async function initGit(rootPath) {
 | |
|   try {
 | |
|     await execa('git', ['init'], {
 | |
|       cwd: rootPath,
 | |
|     });
 | |
|   } catch (err) {
 | |
|     logger.warn(`Could not initialize a git repository`);
 | |
|   }
 | |
| 
 | |
|   try {
 | |
|     await execa(`git`, [`add`, `-A`], { cwd: rootPath });
 | |
| 
 | |
|     execSync(`git commit -m "Create Strapi starter project"`, {
 | |
|       cwd: rootPath,
 | |
|     });
 | |
|   } catch (err) {
 | |
|     logger.warn(`Could not create initial git commit`);
 | |
|   }
 | |
| }
 | |
| 
 | |
| module.exports = {
 | |
|   runInstall,
 | |
|   runApp,
 | |
|   initGit,
 | |
| };
 | 
