Showing posts with label TeamCity. Show all posts
Showing posts with label TeamCity. Show all posts

Saturday 25 April 2015

DevOps Tooling

DevOps Tooling Notes

DevOps Tooling is broken down into the following areas, note the tools often overlap in function.  The list is not exhaustive but these are the more common tools I have come across.
  1. Version Control: TFS, Git, SVN, ...
  2. Bug Tracking: ServiceNow, Jira, ZenDesk
  3. Continuous Testing: Selenium, Jasmin or Mocha or Unit.js (JavaScript testing), NUnit, Web Tests (Visual Studio), SpecFlow
  4. Continuous Integration (CI)TeamCity, Jenkins, Azure DevOps (bigger) 
  5. Configuration Management and Deployment:  Puppet, Chef, ANSIBLE, SALT  (all installed on Linux, obviously work on Windows environments)
  6. Containers: Docker, Kubernetes, Microsoft Containers. I think the Azure AKS is pretty much containers for Azure now.
  7. Other:  PowerShell, VMWare, HyperV
RESTful API Tooling
  1. Swagger - awesome.  Swagger is a set of tools that help document, build and test your API  (Your API conforms to the OpenAPI specification or Swagger specification).  Great way to get a contract for users of the API early on.  Updated 2019/11/25Link to Swagger post
  2. Swagger UI, Swagger Integrator,...
  3. Apiary - UI to create an API and publish with mocks.  I prefer Swagger or on simple projects APIM.
  4. API Management (APIM) - flexible Azure service for bring together multiple API securely.  Same as MuleSoft.  Can import OpenAPI's v2 or v3 to create a hosted API.  Can mock and built in test tool.
  5. RAML is an alternative to Swagger and Apiary (never used)
  6. Blueprint - API documentation tool.  Pretty simple and nice results.
  7. Postman - send http requests to the API.  Postman is a REST client useful to check your API.  This is my main tool for testing, exploring REST based API's.  
  8. SoapUI - if working with SOAP/XML.
  9. Slate - API documentation - I always use OAS/OpenAPI/Swagger.
  10. Fiddler - I'm old school and still love Fiddler and it's capabilities.  Fiddler is a great HTTP debugger.  
  11. BURP - an HTTP debugger to review traffic.  I've used BURP for security testing and it is great for API debugging.  
  12. Charles is another HTTP debugger (never used).
  13. cURL - Cmd line to test API's using HTTP, separate exe to run on Windows, Windows 10 has cURL built in.
  14. Visual Studio
  15. Wireshark - Over the years I have needed packet sniffing to fix issues and always go to Wireshark, I used the tool in the 90's but it had a different name.  Extremely useful for issues relating to firewalls, especially when an environment reacts differently to another working DTAP environment.
  16. Tcpdump is another packet sniffer
Testing:
http://www.incyclesoftware.com/2014/02/executing-selenium-ui-tests-release-management/

More Info:
http://blog.sharepointsite.co.uk/2014/02/devops-and-sharepoint.html
http://www.networkworld.com/article/2172097/virtualization/puppet-vs--chef-vs--ansible-vs--salt.html
http://blog.sharepointsite.co.uk/2013/11/iac-presentation-for-sharepoint.html


Friday 7 June 2013

Why I like VS/TFS 2012 no I mean VS/TFS 2013


Visual Studio (VS) 2013 and Team Foundation Server (TFS) 2013 is being released in the next few weeks - that was quick.  I'm just getting comfortable with VS 2012 and the announcement comes that VS 2013 is being released later this month.

http://blogs.msdn.com/b/bharry/archive/2013/06/03/visual-studio-2013.aspx

So, this is going to be a blog on VS 2012 with TFS, my number 1 favourite new feature in VS 2012 is local workspaces.  Pre VS2012 all workspaces were Server based workspaces.  "Local" workspaces differ in that when you go offline you have version control on your local machine.  You can rollback/compare to an old version.  So for me and my laptop on client sites I find it a big improvement.  Very simply this is how GitHub works (from my extremely limited knowledge of GitHub).  You have local version control and this is synced up with the central source control repository.

Another feature worth looking at will be Release Management.  I am working with TeamCity to build my Infrastructure (PowerCli for VMware and Powershell to build SQL Server.  Autoinstaller runs the SP part).
TFS 2012 - Scrum template home page

Team Rooms are already on TFSPreview, seems like a nice idea - not sure how the takeup will be from devs.

Tuesday 19 March 2013

Automating SharePoint Environment Builds using Team City


"TeamCity is a closed source, Java-based build management and continuous integration server from JetBrains" - Wilipedia.

And for SharePoint build automation it is a nice tool.  I have build scripts for various SharePoint environments and these are automated to run daily or on an adhoc basis.  TFS could achieve all the build pieces I have put together for automating my environment creation consisting of:
  • Create VM's using PowerCLI on VMware ESXi 5.0;
  • Create SQL 2012 databases servers with Always on high availability groups;
  • SharePoint 2013 or SharePoint 2010 with FAST using AutoSPInstaller;
  • Deploying the SharePoint code and creating the sites, webs, activating the features and deploying web parts. 
Below are the screen shots of Team City.