|
1 | 1 | import 'dotenv/config'; |
2 | | -import { z } from 'zod'; |
3 | 2 | import { |
4 | 3 | coverageCoreConfigNx, |
5 | 4 | eslintCoreConfigNx, |
6 | 5 | jsDocsCoreConfig, |
| 6 | + jsDocsExclusionPatterns, |
7 | 7 | jsPackagesCoreConfig, |
8 | 8 | lighthouseCoreConfig, |
| 9 | + loadEnv, |
| 10 | + mergeConfigs, |
9 | 11 | typescriptPluginConfig, |
10 | 12 | } from './code-pushup.preset.js'; |
11 | 13 | import type { CoreConfig } from './packages/models/src/index.js'; |
12 | | -import { mergeConfigs } from './packages/utils/src/index.js'; |
13 | 14 |
|
14 | | -// load upload configuration from environment |
15 | | -const envSchema = z.object({ |
16 | | - CP_SERVER: z.string().url(), |
17 | | - CP_API_KEY: z.string().min(1), |
18 | | - CP_ORGANIZATION: z.string().min(1), |
19 | | - CP_PROJECT: z.string().min(1), |
20 | | -}); |
21 | | -const { data: env } = await envSchema.safeParseAsync(process.env); |
| 15 | +const projectName = 'cli'; |
22 | 16 |
|
23 | 17 | const config: CoreConfig = { |
24 | | - ...(env && { |
25 | | - upload: { |
26 | | - server: env.CP_SERVER, |
27 | | - apiKey: env.CP_API_KEY, |
28 | | - organization: env.CP_ORGANIZATION, |
29 | | - project: env.CP_PROJECT, |
30 | | - }, |
31 | | - }), |
32 | | - |
| 18 | + ...(await loadEnv(projectName)), |
33 | 19 | plugins: [], |
34 | 20 | }; |
35 | 21 |
|
36 | 22 | export default mergeConfigs( |
37 | 23 | config, |
38 | | - await coverageCoreConfigNx(), |
39 | 24 | await jsPackagesCoreConfig(), |
| 25 | + await coverageCoreConfigNx(projectName), |
40 | 26 | await lighthouseCoreConfig( |
41 | 27 | 'https://github.com/code-pushup/cli?tab=readme-ov-file#code-pushup-cli/', |
42 | 28 | ), |
43 | | - await typescriptPluginConfig({ |
44 | | - tsconfig: 'packages/cli/tsconfig.lib.json', |
45 | | - }), |
46 | | - await eslintCoreConfigNx(), |
| 29 | + await eslintCoreConfigNx(projectName), |
47 | 30 | jsDocsCoreConfig([ |
48 | | - 'packages/**/src/**/*.ts', |
49 | | - '!packages/**/node_modules', |
50 | | - '!packages/**/{mocks,mock}', |
51 | | - '!**/*.{spec,test}.ts', |
52 | | - '!**/implementation/**', |
53 | | - '!**/internal/**', |
| 31 | + `packages/${projectName}/src/**/*.ts`, |
| 32 | + ...jsDocsExclusionPatterns, |
54 | 33 | ]), |
| 34 | + await typescriptPluginConfig({ |
| 35 | + tsconfig: `packages/${projectName}/tsconfig.lib.json`, |
| 36 | + }), |
55 | 37 | ); |
0 commit comments