diff --git a/.circleci/config.yml b/.circleci/config.yml index ae9183fdf07f..b2338349a82e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -706,22 +706,22 @@ workflows: requires: - build - create-sandboxes: - parallelism: 31 + parallelism: 32 requires: - build # - smoke-test-sandboxes: # disabled for now # requires: # - create-sandboxes - build-sandboxes: - parallelism: 31 + parallelism: 32 requires: - create-sandboxes - chromatic-sandboxes: - parallelism: 28 + parallelism: 29 requires: - build-sandboxes - e2e-production: - parallelism: 26 + parallelism: 27 requires: - build-sandboxes - e2e-dev: @@ -729,7 +729,7 @@ workflows: requires: - create-sandboxes - test-runner-production: - parallelism: 26 + parallelism: 27 requires: - build-sandboxes diff --git a/code/lib/cli/src/sandbox-templates.ts b/code/lib/cli/src/sandbox-templates.ts index 491c26ace8cc..f31375126b9e 100644 --- a/code/lib/cli/src/sandbox-templates.ts +++ b/code/lib/cli/src/sandbox-templates.ts @@ -497,6 +497,18 @@ const internalTemplates = { }, skipTasks: ['bench'], }, + 'internal/react16-webpack': { + name: 'React 16 (Webpack | TypeScript)', + script: + 'yarn create webpack5-react {{beforeDir}} --version-react=16 --version-react-dom=16 --version-@types/react=16 --version-@types/react-dom=16', + expected: { + framework: '@storybook/react-webpack5', + renderer: '@storybook/react', + builder: '@storybook/builder-webpack5', + }, + skipTasks: ['e2e-tests-dev', 'bench'], + isInternal: true, + }, 'internal/server-webpack5': { name: 'Server Webpack5', script: 'yarn init -y && echo "module.exports = {}" > webpack.config.js', @@ -617,6 +629,7 @@ export const daily: TemplateKey[] = [ 'qwik-vite/default-ts', 'preact-vite/default-js', 'html-vite/default-js', + 'internal/react16-webpack', ]; export const templatesByCadence = { normal, merged, daily }; diff --git a/scripts/get-template.ts b/scripts/get-template.ts index ee3b81b13025..ecb62a942f80 100644 --- a/scripts/get-template.ts +++ b/scripts/get-template.ts @@ -101,7 +101,7 @@ async function checkParallelism(cadence?: Cadence, scriptName?: TaskKey) { let isIncorrect = false; cadences.forEach((cad) => { - summary.push(`\n${cad}`); + summary.push(`\n${chalk.bold(cad)}`); const cadenceTemplates = Object.entries(allTemplates).filter(([key]) => templatesByCadence[cad].includes(key as TemplateKey) ); @@ -110,6 +110,7 @@ async function checkParallelism(cadence?: Cadence, scriptName?: TaskKey) { scripts.forEach((script) => { const templateKeysPerScript = potentialTemplateKeys.filter((t) => { const currentTemplate = allTemplates[t] as Template; + return ( currentTemplate.inDevelopment !== true && !currentTemplate.skipTasks?.includes(script as SkippableTask) @@ -153,6 +154,18 @@ async function checkParallelism(cadence?: Cadence, scriptName?: TaskKey) { summary.unshift('✅ The parallelism count is correct for all jobs in .circleci/config.yml:'); console.log(summary.concat('\n').join('\n')); } + + const inDevelopmentTemplates = Object.entries(allTemplates) + .filter(([_, t]) => t.inDevelopment) + .map(([k]) => k); + + if (inDevelopmentTemplates.length > 0) { + console.log( + `👇 Some templates were skipped as they are flagged to be in development. Please review if they should still contain this flag:\n${inDevelopmentTemplates + .map((k) => `- ${k}`) + .join('\n')}` + ); + } } type RunOptions = { cadence?: Cadence; task?: TaskKey; check: boolean };