@platform/react.ssr
Version:
A lightweight SSR (server-side-rendering) system for react apps bundled with ParcelJS and hosted on S3.
36 lines (35 loc) • 1.18 kB
JavaScript
import { Config } from '../config';
import { log } from './common';
export async function run(args) {
const { cli } = args;
const config = args.config || (await Config.create());
let manifest;
log.info();
await cli
.task('pull manifest', async (e) => {
manifest = await config.manifest.s3.pull({ force: true, loadBundleManifest: true });
})
.run({ concurrent: true });
if (!manifest) {
log.error('\nManifest could not be found.');
log.info.gray(config.manifest.s3.url);
return cli.exit(1);
}
await print({ config, manifest });
}
export async function print(args) {
const { config, manifest } = args;
log.info();
log.info.gray(`url: ${config.manifest.s3.url}`);
log.info.gray(`local: ${config.manifest.local.path}`);
log.info();
manifest.sites.forEach(site => {
const { name, version, size } = site;
const domain = site.domain.join(', ');
log.info(name);
log.info.gray(` - version: ${log.cyan(version)}`);
log.info.gray(` - size: ${size}`);
log.info.gray(` - domain: ${domain}`);
log.info();
});
}