adobe / adobe/aem-project-archetype
Usage of 'npm ci' for Build Pipelines
- Dominant language
- JavaScript
- Stars
- 596
- Forks
- 431
- Avg merge
- 10d 6h
- Merged PRs (30d)
- 1
Description
### Expected Behaviour
Local build always also corresponds to CI/CD build using 'npm ci'
See for more information:
- https://docs.npmjs.com/cli/v7/commands/npm-ci/
- https://stackoverflow.com/questions/52499617/what-is-the-difference-between-npm-install-and-npm-ci
### Actual Behaviour
Because of the overarching use of npm install, it is not impossible that the local build differs from the build in the pipeline, due to dependency updates.
### Reproduce Scenario (including but not limited to)
#### Steps to Reproduce
#### Platform and Version
Archetype 31 and previous
#### Sample Code that illustrates the problem
see: https://github.com/eirslett/frontend-maven-plugin#running-npm
Using the frontend-maven-plugin used in the archetype, it is possible to customize the arguments via the plugin configuration (install -> ci).
#### Logs taken while reproducing problem
Contributor guide
Research direction
Start at the frontend-maven-plugin configuration used by the archetype, where the npm command and arguments can be customized. Check how the generated build pipeline invokes npm and compare it with the requested ci behavior. Done means the pipeline consistently uses npm ci so dependency installation matches the local build expectations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- build-system, ci-cd
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100