CI/CD processes should eliminate unnecessary repetition and redundant operations across projects and builds. This includes avoiding repeated warning messages, preferring template-based configurations over runtime string replacements, and ensuring operations are performed once at the appropriate level rather than repeatedly for each project.
CI/CD processes should eliminate unnecessary repetition and redundant operations across projects and builds. This includes avoiding repeated warning messages, preferring template-based configurations over runtime string replacements, and ensuring operations are performed once at the appropriate level rather than repeatedly for each project.
Key practices:
Example of the problem:
// Avoid: Warning shown for every project
logger.warn(
`Docker support is experimental. Breaking changes may occur and not adhere to semver versioning.`
);
// Better: Show warning once at the process level during nx-release
Example of preferred approach:
// Instead of runtime string replacement logic
// Update the template at packages/node/src/generators/application/files/common/webpack.config.js__tmpl__
// This ensures consistent configuration without repeated processing
This approach reduces build times, minimizes log noise, and creates more maintainable CI/CD pipelines by eliminating unnecessary duplication of operations.
Enter the URL of a public GitHub repository