The MS release toolchain is :trwtf:
-
Re: Releasing dotnet and sql packages
How do you guys even live? The build automation story just isn't there.
-
@Gribnit I don't have a problem. My MS life is similar to the life of developers on other platforms. I have the deployment pipeline do pre tasks like run automated tests and update version numbers. Then, MSBuild produces compiled output. Then, I distribute the result.
My process looks just like a C pipeline, but replace make with MSBuild.
My life is also full of short-sighted coworkers that reference shady NuGet packages, depend on things installed on their workstations, and embed pathnames that only work for them... but it seems that the majority of the development community wouldn't even recognize the problems this paragraph refers to.
-
I just push my changes to repository and create a pull request. When it's accepted Azure makes a new build, runs tests and pushes it to Octopus, which does versioning and configuration management and deploys the package to test environments. I get an email with report when it's done.
-
@Jaime said in The MS release toolchain is :
@Gribnit I don't have a problem. My MS life is similar to the life of developers on other platforms. I have the deployment pipeline do pre tasks like run automated tests and update version numbers. Then, MSBuild produces compiled output. Then, I distribute the result.
My process looks just like a C pipeline, but replace make with MSBuild.
My life is also full of short-sighted coworkers that reference shady NuGet packages, depend on things installed on their workstations, and embed pathnames that only work for them... but it seems that the majority of the development community wouldn't even recognize the problems this paragraph refers to.
How do all y'all achieve replicable builds and manage compiled artifacts? Does it handle the 1000s-of-artifacts range okay?
-
@Gribnit said in The MS release toolchain is :
How do all y'all achieve replicable builds and manage compiled artifacts? Does it handle the 1000s-of-artifacts range okay?
I use Jenkins. MSBuild can be used to drive the build process in whatever CI/CD tool you choose. I stay away from having MSBuild do anything fancy - it simply creates build output.
-
@Jaime Y'all'n should have seen the build process for NT 3.5, 3.5.1, and 4.0. (I worked for one of the very first and very few holders of a source license; they bet the farm on NT ~1991. They lost the farm, but that was only one of three major reasons.) It was based on an early incarnation of MSBuild (which was also the build tool bundled with the DDK for some number of further years). 6000 directories; I forget how many targets. A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
-
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
-
@Tsaukpaetra said in The MS release toolchain is :
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
What about Linux hardware?
-
@error said in The MS release toolchain is :
@Tsaukpaetra said in The MS release toolchain is :
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
What about Linux hardware?
Expect somewhere in-between or not at all.
-
@Tsaukpaetra said in The MS release toolchain is :
@error said in The MS release toolchain is :
@Tsaukpaetra said in The MS release toolchain is :
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
What about Linux hardware?
Expect somewhere in-between or not at all.
Truer words were never spoken.
-
@Frank-Wilhoit said in The MS release toolchain is :
consumed every square micron of a 9Gb drive.
Did it write-cycle much? It'd be neat if on SSD it actually consumed the drive's MTBF.
Gonna assume that 9G was "golden masters", a bunch of ISOs, take your pick?
-
@error said in The MS release toolchain is :
@Tsaukpaetra said in The MS release toolchain is :
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
What about Linux hardware?
If it is running Linux, expect the compilation to go about 5 to 10 times faster. I've measured this consistently with multi-platform builds of (virtually) the same codebase, and there's something about Windows that really slows things down. I suspect some tricky thing in I/O (which compilers do a lot of), but I don't really know. It isn't dependent on which compiler is in use; that only makes a 5–10% difference.
-
@dkf said in The MS release toolchain is :
@error said in The MS release toolchain is :
@Tsaukpaetra said in The MS release toolchain is :
@Frank-Wilhoit said in The MS release toolchain is :
A full build took 20 hours on a dual Pentium 90 and consumed every square micron of a 9Gb drive.
I wonder how long it would take on modern hardware?
What about Linux hardware?
If it is running Linux, expect the compilation to go about 5 to 10 times faster. I've measured this consistently with multi-platform builds of (virtually) the same codebase, and there's something about Windows that really slows things down. I suspect some tricky thing in I/O (which compilers do a lot of), but I don't really know. It isn't dependent on which compiler is in use; that only makes a 5–10% difference.
Keeping goddamn exclusive locks for everyfuckingthing can't be all that cheap.
-
@Frank-Wilhoit said in The MS release toolchain is :
consumed every square micron of a 9Gb drive.
Where did they get one of those?
-
@Gribnit said in The MS release toolchain is :
Keeping goddamn exclusive locks for everyfuckingthing can't be all that cheap.
Wow, somebody downvoted that?
This is the worst thing about working on Windows. Probably because I'm dealing with file locks during my builds constantly, every fucking day.
Edit: oh, somebody downvoted most of your posts in this thread. Aww, you have an admirer!
-
@error said in The MS release toolchain is :
Probably because I'm dealing with file locks during my builds constantly, every fucking day.
Like when the
anti-virus software fucks over the build?Edit: Properly named that scanning software.
-
@dcon said in The MS release toolchain is :
@error said in The MS release toolchain is :
Probably because I'm dealing with file locks during my builds constantly, every fucking day.
Like when the anti-virus software fucks over the build?
That's probably the root cause, but I can do fuck-all about it. Fighting group policy has gotten me nothing but trouble.
-
@topspin Don't know where they got it. It was 5.25" full-height and it ran hot enough to burn your finger. It was a grim sort of fun working inside 32-bit Windows, implementing PSExec before it existed, discovering that some of the DDK documentation was sheer bluff (cough spinlocks cough cough), that parts of the MP kernel weren't actually multiprocessor-safe, that some of the DCE RPC APIs were stubbed out (that one cost them one billion dollars, with a 'b'), finding the header comments in assembly-language files saying "This is 32-bit OS/2, Author: David Cutler", analyzing crash dumps due to bad memory, ...
-
@error said in The MS release toolchain is :
@dcon said in The MS release toolchain is :
@error said in The MS release toolchain is :
Probably because I'm dealing with file locks during my builds constantly, every fucking day.
Like when the anti-virus software fucks over the build?
That's probably the root cause, but I can do fuck-all about it. Fighting group policy has gotten me nothing but trouble.
This is another advantage of doing all actual work inside a VM.
-
@boomzilla said in The MS release toolchain is :
@error said in The MS release toolchain is :
@dcon said in The MS release toolchain is :
@error said in The MS release toolchain is :
Probably because I'm dealing with file locks during my builds constantly, every fucking day.
Like when the anti-virus software fucks over the build?
That's probably the root cause, but I can do fuck-all about it. Fighting group policy has gotten me nothing but trouble.
This is another advantage of doing all actual work inside a VM.
Ironically, I develop in a Vagrant VM, but since it's actually a shared folder on a Windows host, all the limitations of the host still apply.
-