My project is a .Net solution. Node is installed to support Angular. My build schema is cake. I don’t have access to the Jenkins server. I can only make checkins via git and use the Jenkins UI. I don’t often need to build but it seems like when I do there is something different that I have to get someone with access to the server to help with. I’m posting here to see if there are things I’m not aware of that can help me overcome my current issue. The build fails with this error “No matching version found for stylus@0.54.5.” I’m not using Stylus. It must be a dependency of something I am using. I know one thing that it is a dependency of which is “angular-devkit/build-angular”. I can’t do without that. The version of stylus named was removed from github because it contained malicious software. I assume that’s why it is no longer on Jenkins. I updated my packages.json to override the stylus version like this “^0.54.6”. To me that reads any version 0.54.6 and above. I get a similar error but this time whatever I version I try to override is shown in the message. I tried several versions. That implies there is no version of stylus on Jenkins. My issues don’t get prioritized because most of the business is on Linux as are most of the Jenkins servers. Is there anything I can do with build.cake or the project on Jenkins or in my packages.json or in my local jenkinsfile or something else? Help.
TBH this sounds more like an issue with your Node project rather than with Jenkins itself. Or, considering that you mention you don’t have access to Jenkins servers – an issue with the way your infra team have CI configured.
Jenkins per-se does not manage Node packages in any way. So unless the build agents in your Jenkins have some additional caching/indirection layer for Node packages, I would expect the error to be reproducible locally. Does npm ci
(or whatever you use instead there) work on your machine if you remove all of your build folders and do a clean rebuild?
I can’t get any support from my Jenkins team. However, I did learn that when I override a module, I can also specify where to get it. When I overrode and specified github as my source for styus then my project built. Either stylus is missing from my Jenkins server completely or the cache is corrupted or something. But I’m past the issue. Thanks!