Skip to content

Commit 81d1c89

Browse files
authored
Merge pull request #5 from oieduardorabelo/master
[feat] add support for Yarn + inheriting exec process
2 parents 8e8013e + ecd2665 commit 81d1c89

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

setup.js

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,33 @@ const devDependencies = require('./devDependencies.json');
88

99
const deleteFile = (fileName) => fs.unlinkSync(path.join(process.cwd(), fileName));
1010
const writeFile = (fileName, data) => fs.writeFileSync(path.join(process.cwd(), fileName), data);
11+
const isYarnAvailable = () => {
12+
try {
13+
execSync('yarnpkg --version', { stdio: 'ignore' });
14+
return true;
15+
} catch (e) {
16+
return false;
17+
}
18+
}
19+
const currPackager = isYarnAvailable ? "yarn" : "npm";
20+
const logInstallingWith = pkg => console.log(`\n📦 Installing dependencies with ${pkg}...\n`);
21+
const execOptions = {
22+
stdio: 'inherit'
23+
}
1124

12-
console.log('🔄 Please wait...');
25+
console.log('\n🔄 Please wait...\n');
1326

1427
packageJson.scripts.start = `${packageJson.scripts.start} --config ../../../../rn-cli.config.js`;
1528
packageJson.jest = Object.assign(packageJson.jest, jestJson);
1629
writeFile('package.json', JSON.stringify(packageJson, null, 2));
1730

18-
execSync(`npm i ${devDependencies.join(' ')} --save-dev --save-exact`);
31+
logInstallingWith(currPackager);
32+
33+
if (isYarnAvailable) {
34+
execSync(`yarn add ${devDependencies.join(' ')} --dev --exact`, execOptions);
35+
} else {
36+
execSync(`npm i ${devDependencies.join(' ')} --save-dev --save-exact`, execOptions);
37+
}
1938

2039
deleteFile('App.js');
2140
deleteFile('__tests__/App.js');
@@ -26,4 +45,4 @@ deleteFile('README.md');
2645
deleteFile('LICENSE');
2746
deleteFile('setup.js');
2847

29-
console.log('✅ Setup completed! You can now start with: npm start');
48+
console.log(`\n✅ Setup completed! You can now start with: ${currPackager} start\n`);

0 commit comments

Comments
 (0)