diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 410d1f8f..33d0f2c8 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -952,6 +952,7 @@ jobs: env: BRANCH: ${{ github.head_ref || github.ref_name }} BUILD_VERSION: ${{ needs.setup_release.outputs.release_tag }} + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} COMMIT: ${{ needs.setup_release.outputs.release_commit }} run: | mkdir -p build diff --git a/package.json b/package.json index 96fc8fc8..f504e49c 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "vue-i18n": "11.1.3" }, "devDependencies": { + "@codecov/vite-plugin": "1.9.0", "@vitejs/plugin-vue": "4.6.2", "serve": "14.2.3", "vite": "4.5.9", diff --git a/vite.config.js b/vite.config.js index 36397f4f..60bdc2a2 100644 --- a/vite.config.js +++ b/vite.config.js @@ -3,13 +3,14 @@ import fs from 'fs'; import { resolve } from 'path' import { defineConfig } from 'vite' import { ViteEjsPlugin } from "vite-plugin-ejs"; +import { codecovVitePlugin } from "@codecov/vite-plugin"; import vue from '@vitejs/plugin-vue' import process from 'process' /** * Before actually building the pages with Vite, we do an intermediate build step using ejs - * Importing this separately and joining them using ejs - * allows us to split some repeating HTML that cannot be added + * Importing this separately and joining them using ejs + * allows us to split some repeating HTML that cannot be added * by Vue itself (e.g. style/script loading, common meta head tags, Widgetbot) * The vite-plugin-ejs handles this automatically */ @@ -49,7 +50,16 @@ export default defineConfig({ } }, base: './', - plugins: [vue(), ViteEjsPlugin({ header })], + plugins: [ + vue(), + ViteEjsPlugin({ header }), + // The Codecov vite plugin should be after all other plugins + codecovVitePlugin({ + enableBundleAnalysis: process.env.CODECOV_TOKEN !== undefined, + bundleName: "sunshine", + uploadToken: process.env.CODECOV_TOKEN, + }), + ], root: resolve(assetsSrcPath), build: { outDir: resolve(assetsDstPath),