Provision AWS Resources with a VSTS release pipeline.

Infrastructure as Code is one of the many practices teams have to fulfill the needs of modern systems. The provisioning of resources for systems in an automated versioned way supports also the need of consistent environments across different stages of system development, making it much more comfortable to develop, validate and test systems. Keep development, staging, and production as similar as possible.See also the Dev/prod parity practice of the 12 factor methodology. The principles of a pipeline also fit on pipelines which provision infrastructures. The artifacts should be versioned, validated, automated and more, see pipelines principles. Visual Studio Team Services and Amazon AWS VS... [More]

CICD for a cloud native services based system on Azure.

A flexible, cheap and innovative business are goals companies have. Moving to the cloud, change the way of working and make the systems more flexible are 3 drivers to reach this goal. Three forces are pushing the continues DevOps evolution: The Cloud Platform force, The System Architecture force and the Collaboration Force. 3 forces and 5 tips to stay relevant on changing DevOps. The 12-factor methodology describes practices for realizing and running cloud native systems. Practices described are supporting these business goals. … a triangulation on ideal practices for app development, paying particular attention to the dynamics of the organic growth of an app over time, the dynamics of... [More]

CICD Pipeline for Serverless, release Azure Functions with VSTS.

While Serverless, Azure Functions, are just a few lines of code, they still require a release with all the principles a good pipeline. For example: High quality by default. Work in small batches. Automate repetitive tasks. Continuous improvement. Everyone is responsible. Transparency everywhere. and some of the factors in the 12Factor methodology Azure Function via Portal. The implementation of an Azure Function can be written in the Azure portal (see: Create your first Azure Function). Not ideal for repeatability, automation, versioning, traceability, etc. (see list above and select more). Backed-up with GIT For more control the Azure Function can be connected to Gi... [More]

Serverless will eat Containers in the Microservices world.

IaaS is eaten by Containers for a while now. Making it easy to move workloads to the Cloud and split them in independent scalable units. Container technologies have (had) a maturity challenge with running systems in production. The vast number of tools needed around containers is a sign of immaturity (10 Open Source Docker Tools You Should Be Using). A good read: Docker in Production: A History of Failure, and don’t forget to read the comments and the Serverless article on Martin Fowler his blog. It will take some more time, although I think it is almost there, to get Containers to the level of maturity systems require in production. The benefit of containers, with the easy distribution an... [More]

The Cloud Center of Excellence… “What slows my team down in delivering business value?”

A flexible, cheap and innovative business is the main goal companies have. Moving to the cloud, change the way of working and make the systems more flexible are three drivers to reach this goal. Three forces are pushing the continues DevOps evolution: The Cloud Platform force, The System Architecture force and the Collaboration Force. 3 forces and 5 tips to stay relevant on changing DevOps. Just opt-in for a cloud subscription, isn’t the silver bullet, neither adopting a faster release cadence. All three must be focused on. A Cloud CoE is a service and practice center with deep and width knowledge on cloud platforms, design, delivery and run of cloud systems. The breadth and combination ... [More]

The Cloud tradeoff from a business quality attribute perspective.

Cloud platforms offer many different ways to implement and support business functionality. This business support is the ultimate goal and is leading in how guidelines and rules apply to the implementation choices of cloud solutions. Business support needs of systems are described in functionality and quality attributes. Both influence the decisions what and which cloud platform, service and implementation to select. There are many quality attributes for systems, this list and the severity vary per system. A common list of quality attributes is:  Availability Scalability Agility Interoperability Maintainability Manageability Performance Reliability Security Modifiability Testa... [More]

CI/CD Pipeline for Angular2 with VSTS.

“Zero touch testing and deployments” is a common DevOps mantra for your continuous integration and continuous deployment (CI/CD) pipeline. Also for you frontend projects. In this post a how to use and configure Visual Studio Team Services for this CI/CD practice on Angular2 projects. Continue reading and/or watch this overview video: The Angular2 Project. The time where you simply had to copy a JavaScript file to a server is over. There are many steps to take to prepare an Angular project for production. With TypeScript we need some compiling, we need to make it work for many versions with Shims, the JavaScript files needs to get bundeled, uglified, minified, validated and so on… and, we n... [More]

How to survive vacation as a computer nerd.

I know I’m addicted. Having a cold turkey when I don’t touch a keyboard for 24 hours. Love thinking on solutions, love writing code. This must sounds familiar to you, it is summertime, maybe you are on vacation and you are still reading this post. How do you survive on vacation, without getting that ‘you are working’ argument with family members. They don’t understand it is a primary live essential for us. Some tips. Start early in the morning. Something I always do, the moment I’m writing this is six in the morning. Everybody is a sleep, the temperature is still bearable, you grab your first coffee and happy working on some cool bits. No one is edgy because you are behind your screen, in ... [More]

Build, publish and release DotNet Core 1.0.0 apps on Azure Websites with VSTS.

Dotnet core is the new kid in town, ready to build, publish and release. Some background knowledge. Global.json The Global.json holds the version of the dotnet sdk used. See Hanselman’s post on running multiple versions of the sdk. This version needs to be available on compiling on the develop machine and on the build server. When you have the wrong version you get the message: [error]GETSDKTOOLINGINFO(0,0): Error : The project is configured to use .NET Core SDK version 1.0.0-preview2-003121 which is not installed or cannot be found under the path C:\Program Files\dotnet. These components are required to build and run this project. To overcome this, you can add the dotnet-install.ps1 as a ... [More]

101 Setup, configure and work with GIT VSTS Build and Release.

Visual Studio Team Services comes with many capabilities and features to support your version control needs. One of these features is an unlimited amount of free GIT repositories. The other valuable features are integration of work, build and release out of the box. This is a small how to when you want to start with GIT within VSTS. The start, setup structure. Create your VSTS account. While you also can create an unlimited amount of VSTS accounts it advisable to think of how your setup your structure. You can create all projects in one VSTS account or you can create a VSTS per project. Defining a projects scope is already challenging for many systems. A good decision maker can be to loo... [More]