From dba1b8a7e92ebd18132e0e714d5109f87b9ab7a9 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Tue, 13 Mar 2018 17:55:16 +0100 Subject: Consolidate docs generation and uploading logic --- packages/monorepo-scripts/src/postpublish_utils.ts | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'packages/monorepo-scripts/src') diff --git a/packages/monorepo-scripts/src/postpublish_utils.ts b/packages/monorepo-scripts/src/postpublish_utils.ts index 6c8771c6f..a36408ccd 100644 --- a/packages/monorepo-scripts/src/postpublish_utils.ts +++ b/packages/monorepo-scripts/src/postpublish_utils.ts @@ -81,5 +81,31 @@ export const postpublishUtils = { }); return fileIncludesAdjusted; }, + async generateAndUploadDocsAsync( + dirname: string, + cwd: string, + includedFiles: string[], + version: string, + S3BucketPath: string, + ) { + const jsonFilePath = `${dirname}/../${postpublishUtils.generatedDocsDirectoryName}/index.json`; + const projectFiles = includedFiles.join(' '); + const result = await execAsync( + `JSON_FILE_PATH=${jsonFilePath} PROJECT_FILES="${projectFiles}" yarn docs:json`, + { + cwd, + }, + ); + if (!_.isEmpty(result.stderr)) { + throw new Error(result.stderr); + } + const fileName = `v${version}.json`; + utils.log(`POSTPUBLISH: Doc generation successful, uploading docs... as ${fileName}`); + const s3Url = S3BucketPath + fileName; + await execAsync(`S3_URL=${s3Url} yarn upload_docs_json`, { + cwd, + }); + utils.log(`POSTPUBLISH: Docs uploaded to S3 bucket: ${S3BucketPath}`); + }, generatedDocsDirectoryName, }; -- cgit