Fixing intermittant 'EPERM: operation not permitted' on npm install

The npm install step in my Teamcity CI build for an angular app I have been working has been failing intermittently and I finally uncovered the reason. TL/DR The combination of McAfee Anti-virus and network mounted user AppData folders was the culprit - moving them to an unscanned local folder fixed it. npm install was failing the build intermittently when run by our build software Teamcity on a windows agent with ugly errors like:...

July 4, 2016 · 2 min · 410 words · Alastair Crabtree

400 (Bad Request) when pushing a package to Octopus Deploy using nuget push

Stumbled on a little gotcha today when using nuget packages as deployment artifacts to be send to Octopus Deploy and thought it worth documenting so i don’t forget next time. The quick answer is that you cannot push the same package and version to the built in octopus deploy package repository - if you try you get 400 (Bad Request). Our build process goes a little like this: Install the Octopack nuget package in each deployable project in the solution Compile the solution using Teamcity and msbuild, specifying the octopack build property to output packages msbuild MySolution....

May 4, 2016 · 2 min · 242 words · Alastair Crabtree

Continuous Integration - am I doing it right?

You have a substantial development project with several people working on it and you expect to be around for a while. Having your source built by Teamcity/TFS/Jenkins etc is a good start, but there is plenty more you should probably be doing. To help out, here is my checklist of a good quality continuous integration/continuous delivery pipeline. It takes a while and some experience to set it all up but the long term benefits to developer productivity are well worth it....

November 23, 2015 · 3 min · 462 words · Alastair Crabtree