Skip to content

Commit a07f836

Browse files
hanslKeen Yee Liau
authored and
Keen Yee Liau
committed
build: add JSON Schema .d.ts and .js files to build output
1 parent defe0cc commit a07f836

File tree

1 file changed

+35
-3
lines changed

1 file changed

+35
-3
lines changed

scripts/build.ts

+35-3
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@ function _copy(from: string, to: string) {
8888
_mkdirp(path.dirname(to));
8989
}
9090

91+
// Error out if destination already exists.
92+
if (fs.existsSync(to)) {
93+
throw new Error(`Path ${to} already exist...`);
94+
}
95+
9196
from = path.relative(process.cwd(), from);
9297
to = path.relative(process.cwd(), to);
9398

@@ -161,13 +166,17 @@ function _sortPackages() {
161166
}
162167

163168
function _exec(command: string, args: string[], opts: { cwd?: string }, logger: logging.Logger) {
164-
const { status, error, stderr } = child_process.spawnSync(command, args, { ...opts });
169+
const { status, error, stderr, stdout } = child_process.spawnSync(command, args, {
170+
stdio: 'inherit',
171+
...opts,
172+
});
165173

166174
if (status != 0) {
167175
logger.error(`Command failed: ${command} ${args.map(x => JSON.stringify(x)).join(', ')}`);
168176
if (error) {
169177
logger.error('Error: ' + (error ? error.message : 'undefined'));
170178
} else {
179+
logger.error(`STDOUT:\n${stdout}`);
171180
logger.error(`STDERR:\n${stderr}`);
172181
}
173182
throw error;
@@ -203,6 +212,19 @@ export default function(argv: { local?: boolean, snapshot?: boolean }, logger: l
203212
_rimraf(pkg.build);
204213
}
205214

215+
logger.info('Merging bazel-bin/ with dist/');
216+
for (const packageName of sortedPackages) {
217+
const pkg = packages[packageName];
218+
const bazelBinPath = pkg.build.replace(/([\\\/]dist[\\\/])(packages)/, (_, dist, packages) => {
219+
return path.join(dist, 'bazel-bin', packages);
220+
});
221+
if (fs.existsSync(bazelBinPath)) {
222+
packageLogger.info(packageName);
223+
_recursiveCopy(bazelBinPath, pkg.dist, logger);
224+
_rimraf(bazelBinPath);
225+
}
226+
}
227+
206228
logger.info('Copying resources...');
207229
const resourceLogger = logger.createChild('resources');
208230
for (const packageName of sortedPackages) {
@@ -274,9 +296,14 @@ export default function(argv: { local?: boolean, snapshot?: boolean }, logger: l
274296
logger.info('Removing spec files...');
275297
const specLogger = logger.createChild('specfiles');
276298
for (const packageName of sortedPackages) {
277-
specLogger.info(packageName);
278299
const pkg = packages[packageName];
279300
const files = glob.sync(path.join(pkg.dist, '**/*_spec?(_large).@(js|d.ts)'));
301+
302+
if (files.length == 0) {
303+
continue;
304+
}
305+
306+
specLogger.info(packageName);
280307
specLogger.info(` ${files.length} spec files found...`);
281308
files.forEach(fileName => _rm(fileName));
282309
}
@@ -285,9 +312,14 @@ export default function(argv: { local?: boolean, snapshot?: boolean }, logger: l
285312
const templateLogger = logger.createChild('templates');
286313
const templateCompiler = require('@angular-devkit/core').template;
287314
for (const packageName of sortedPackages) {
288-
templateLogger.info(packageName);
289315
const pkg = packages[packageName];
290316
const files = glob.sync(path.join(pkg.dist, '**/*.ejs'));
317+
318+
if (files.length == 0) {
319+
continue;
320+
}
321+
322+
templateLogger.info(packageName);
291323
templateLogger.info(` ${files.length} ejs files found...`);
292324
files.forEach(fileName => {
293325
const p = path.relative(

0 commit comments

Comments
 (0)