From 4f4d603d8e4e2132b0fd1d90e929dc47a208d1ba Mon Sep 17 00:00:00 2001 From: Nitin Date: Sun, 4 Feb 2024 12:20:10 +0530 Subject: [PATCH] ci: fix --- .github/workflows/blade-danger.yml | 1 + packages/blade/PRBundleSizeStats.json | 4 +-- packages/blade/dangerfile.js | 2 +- packages/blade/scripts/generateBundleDiff.js | 27 +++++++++++++++----- 4 files changed, 25 insertions(+), 9 deletions(-) diff --git a/.github/workflows/blade-danger.yml b/.github/workflows/blade-danger.yml index 1c19fec0595..00d76bb403c 100644 --- a/.github/workflows/blade-danger.yml +++ b/.github/workflows/blade-danger.yml @@ -30,3 +30,4 @@ jobs: env: DANGER_GITHUB_API_TOKEN: ${{ env.GITHUB_ACCESS_TOKEN }} DANGER_DISABLE_TRANSPILATION: 'true' + BASE_BUNDLE_SIZE_STATS_URL: 'https://raw.githubusercontent.com/razorpay/blade/test-bundle-size-diff/baseBundleSizeStats.json' diff --git a/packages/blade/PRBundleSizeStats.json b/packages/blade/PRBundleSizeStats.json index 5d843f5d3fb..e25cfa44d4f 100644 --- a/packages/blade/PRBundleSizeStats.json +++ b/packages/blade/PRBundleSizeStats.json @@ -2,14 +2,14 @@ { "name": "Button", "passed": true, - "size": 28142, + "size": 223142, "sizeLimit": 2000000, "loading": 0.5496484375 }, { "name": "Card", "passed": true, - "size": 38142, + "size": 3142, "sizeLimit": 2000000, "loading": 0.5496484375 } diff --git a/packages/blade/dangerfile.js b/packages/blade/dangerfile.js index c539cf1c9c7..38e43ed706f 100644 --- a/packages/blade/dangerfile.js +++ b/packages/blade/dangerfile.js @@ -5,7 +5,7 @@ const showBundleSizeDiff = async () => { const { diffTable } = await generateBundleDiff(danger); markdown(` - ## Bundle Size Diff + ## Bundle Size Report ${diffTable} `); }; diff --git a/packages/blade/scripts/generateBundleDiff.js b/packages/blade/scripts/generateBundleDiff.js index 24ebdc7c08e..b6e647fa16c 100644 --- a/packages/blade/scripts/generateBundleDiff.js +++ b/packages/blade/scripts/generateBundleDiff.js @@ -21,17 +21,32 @@ const generateBundleDiff = async () => { ); } + bundleDiff.forEach((component) => { + const currentComponent = currentBundleSizeStats.find((stat) => stat.name === component.name); + const baseComponent = baseBundleSizeStats.find((stat) => stat.name === component.name); + + if (baseComponent && !currentComponent) { + component.diffSize = -baseComponent.size; + component.baseSize = baseComponent.size; + component.prSize = 0; + } else if (!baseComponent && currentComponent) { + component.diffSize = currentComponent.size; + component.baseSize = 0; + component.prSize = currentComponent.size; + } else { + component.diffSize = currentComponent.size - baseComponent.size; + component.baseSize = baseComponent.size; + component.prSize = currentComponent.size; + } + }); + const diffTable = ` | Component | Base Size | Current Size | Diff | | --- | --- | --- | --- | ${bundleDiff .map( - ({ name, size: baseSize }) => - `| ${name} | ${baseBundleSizeStats.length === 0 ? '-' : baseSize} | ${ - currentBundleSizeStats.find((stat) => stat.name === name).size / 1000 - } | ${ - (currentBundleSizeStats.find((stat) => stat.name === name).size - baseSize) / 1000 - } kb |`, + ({ name, baseSize, prSize, diffSize }) => + `| ${name} | ${baseSize / 1000} | ${prSize / 1000} | ${diffSize / 1000} kb |`, ) .join('\n')} `;