1 | var path = require('path');
|
2 | var exec = require('child_process').exec;
|
3 |
|
4 | var linkToPrivateRepo = (process.argv[2] && process.argv[2].indexOf('pr') === 0);
|
5 |
|
6 | var servicePackages = [
|
7 | 'computeManagement',
|
8 | 'gallery',
|
9 | 'management',
|
10 | 'monitoring',
|
11 | 'networkManagement',
|
12 | 'resourceManagement',
|
13 | 'scheduler',
|
14 | 'schedulerManagement',
|
15 | 'serviceBusManagement',
|
16 | 'sqlManagement',
|
17 | 'storageManagement',
|
18 | 'subscriptionManagement',
|
19 | 'webSiteManagement',
|
20 | 'authorizationManagement',
|
21 | 'extra',
|
22 | 'hdinsight',
|
23 | 'apiAppManagement'
|
24 | ];
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
31 |
|
32 | var root = '../' + (linkToPrivateRepo ? 'azure-sdk-for-node-pr' : 'azure-sdk-for-node');
|
33 |
|
34 | var packagesToLink = [ 'lib/common' ].concat(servicePackages.map(function (p) { return 'lib/services/' + p; })).concat('');
|
35 |
|
36 | var commands = packagesToLink.map(function (path) {
|
37 | return 'npm link ' + root + '/' + path;
|
38 | });
|
39 |
|
40 | function executeCmds(cmds) {
|
41 | if (cmds.length > 0) {
|
42 | var current = cmds.shift();
|
43 | cwd = path.join(__dirname, '/../');
|
44 |
|
45 | exec(current, { cwd: cwd }, function (err, stdout, stderr) {
|
46 | if (stdout) {
|
47 | console.log(stdout);
|
48 | }
|
49 | if (stderr) {
|
50 | console.log(stderr);
|
51 | }
|
52 |
|
53 | if (err) {
|
54 | console.log(err);
|
55 | } else {
|
56 | executeCmds(cmds);
|
57 | }
|
58 | });
|
59 | }
|
60 | }
|
61 |
|
62 | executeCmds(commands);
|