Having your cake, and eating it too! - DDDScotland

Download Having your cake, and eating it too! - DDDScotland

Post on 23-Jan-2018

501 views

Category:

Software

2 download

TRANSCRIPT

  1. 1. Having your Cake, and eating it too! Gary Ewan Park Email: gep13@gep13.co.uk Twitter: @gep13 Web: http://www.gep13.co.uk
  2. 2. What is Cake?
  3. 3. A Definition Cake (C# Make) is a cross platform build automation system with a C# DSL to do things like compiling code, copy files/folders, running unit tests, compress files and build NuGet packages. Reference http://cakebuild.net/
  4. 4. Typical Build Workflow Clean Build Unit Tests Test Coverage StyleCop FxCop DupFinder InspectCode Package Publish Package Restore
  5. 5. How does Cake work? build.cake cake.exe #tool #addin #reference #load Roslyn or Mono nupkg Exe Msi Tests Anything you can think of Arguments Configuration
  6. 6. What Tools am I able to use with Cake? Chocolatey DNU DotCover DupFinder Fixie GitLink GitReleaseManager GitReleaseNotes GitVersion ILMerge ILRepack InspectCode MSBuild MSTest NSIS NUnit OctopusDeploy OpenCover ReportGenerator ReportUnit Roundhouse SignTool SpecFlow TextTransform WiX XBuild XUnit IIS Xamarin PowerShell Gitter Kudu CMake TopShelf Yaml Docker Gulp S3 FluentMigrator EC2 XCode Json VsCode WebDeploy CloudFront ReSharperReports ElasticLoadBalancing DocFx Wyam StyleCop StrongNameTool Orchard XdtTransform Npm Slack
  7. 7. Okay, but why do I need it?
  8. 8. What are the main philosophies of Cake? Non intrusive It should just work Be highly configurable No binaries should be checked into your repository Easy to implement your own tools Build should behave the same way regardless of Operating System Environment
  9. 9. We build Cake with Cake on 8 different CI Servers 3 different operating systems
  10. 10. Cant I just use MAKEFAKECMakeMSBuildNAntPsakeBau?
  11. 11. Lets bake some Cake! Clean Build Unit Tests Test Coverage StyleCop FxCop DupFinder InspectCode Package Publish Package Restore
  12. 12. Source Code http://gep13.me/CakeDemos
  13. 13. Demos
  14. 14. Questions? Feel free to get in touch Email: gep13@gep13.co.uk Twitter: @gep13 Web: http://www.gep13.co.uk
  15. 15. Resources Cake Documentation o http://cakebuild.net/docs MS Dev Show Podcast Episode o http://msdevshow.com/2016/04/cakebuild-with-mattias-karlsson-and-gary-ewan-park/ Motz Codes Live: Continuous Integration for Libraries with Jon Dick aka Redth o https://www.youtube.com/watch?v=D0gWjHhJ3IU Source Code o https://github.com/cake-build/cake Blog Posts o Moving to Cake (C# Make) Laurent Kempe http://laurentkempe.com/2016/04/05/Moving-to-Cake-CSharp-Make/

Recommended

View more >