SlideShare a Scribd company logo
(ONE) MODERN INFRA DEV
ENVIRONMENT
A PEEK AT
Stephen Kuenzli, QualiMente
DevOpsDays Phoenix Oct 24, 2017
ONCE UPON A TIME…
WE WERE ASKED TO MIGRATE
TO THE CLOUD…
Jamie Infra
AND EVERY WEEK WE ADDED
A NEW TOOL TO OUR
WORKFLOW…
Jamie Infra
UNTIL ONE DAY WE THREW UP
OUR HANDS FROM ALL THE
BUMPS & FRICTION
Jamie Infraworks on my machine
regressions
slow feature delivery
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
INFRASTRUCTURE AS CODE
ECOSYSTEM
IS IMMATURE
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
CLASSIC SOFTWARE DEVELOPMENT LIFECYCLE
inspecttest
design implementation testing operations
design
review
prototyping unit
test
integration
test
functional
test
load test beta test
pairing desk
checking
code
review
static
analysis
t / $
monitoring
+35% 40% +25%
30%
65%
35% 30%
+35%
% defects detected by the practice (Code Complete 2nd ed)
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
DEVELOP AN GENERIC INFRA MODULE
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
CONTINUOUS INTEGRATION
▸ All project assets go into source control
▸ Automate the build
▸ Build tests the artifact
▸ Engineers merge to mainline daily
▸ Every commit built by integration machine
▸ Fix broken builds immediately
▸ Keep the build fast
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
MODERN BUILDS
Java Javascript Terraform
Runner Maven npm make
Compile java babel terraform validate
Unit Test JUnit jest ?
Analyze Sonar eslint tflint
Integration
Test
JUnit jest
kitchen + rspec +
awsspec
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
MO TOOLS, MO PROBLEMS
works on my machine
5-page, out-of-date wiki
ok, everybody update the rspec gem!
ugh…seems like CI machine has old libs
env vars or ~/.aws/credentials?
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
YOUR PROJECT
OR
YOUR FUTURE?
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
WHAT GOES INTO A BUILD?
▸ source code, both dev & release
▸ build and test programs
▸ libraries
▸ env vars and secrets
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
CONTAINERS
Package environments in a format that
is easy to handle and store
Isolate environments via virtualization
so they don’t conflict
like … like …
AMI
but supports metadata & inspection, space-efficient but highly programmable, quick to start
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
CODIFIED, PORTABLE DEV ENVIRONMENT
▸ put all the tools in one Docker image
▸ tag and share via artifact repository
▸ thin wrapper manages build commands
▸ strict control over what goes in & out of build process
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
LET’S MAKE
INFRA
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
SUMMARY
▸ Infra dev world does not have to be crazy — construct an IDLC!
▸ Improve infra delivery by applying classic software dev techniques
▸ Treat as investment in platform & product
Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx
DIVING DEEPER
Repo for Modern Infra Dev Env with Terraform
https://github.com/qualimente/terraform-infra-dev
Questions & Help
@skuenzli
www.qualimente.com

More Related Content

What's hot

DevOps: All About Automation
DevOps: All About AutomationDevOps: All About Automation
DevOps: All About Automation
Johannes Engelke
 
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a ProSkip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Codefresh
 
GitHub Actions with Node.js
GitHub Actions with Node.jsGitHub Actions with Node.js
GitHub Actions with Node.js
Stefan Stölzle
 
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
Puppet
 
Game of Codes: the Battle for CI
Game of Codes: the Battle for CIGame of Codes: the Battle for CI
Game of Codes: the Battle for CI
Atlassian
 
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps_Fest
 
Know the flow to master agility
Know the flow to master agilityKnow the flow to master agility
Know the flow to master agility
Darren Byrne
 
Dockerized apps on Kubernetes
Dockerized apps on KubernetesDockerized apps on Kubernetes
Dockerized apps on Kubernetes
Łukasz Barulski
 
QConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
QConSP 2014 - Continuous Delivery - Part 03 - Continuous IntegrationQConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
QConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
Rodrigo Russo
 
Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)
dev2ops
 
Why to docker
Why to dockerWhy to docker
Why to docker
Karthik Gaekwad
 
Jenkins Reviewbot
Jenkins ReviewbotJenkins Reviewbot
Jenkins Reviewbot
Yardena Meymann
 
5 Habits of High-Velocity Teams Using Kubernetes
5 Habits of High-Velocity Teams Using Kubernetes5 Habits of High-Velocity Teams Using Kubernetes
5 Habits of High-Velocity Teams Using Kubernetes
Codefresh
 
Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014
Andreas Rehn
 
Unlimited Staging Environments
Unlimited Staging EnvironmentsUnlimited Staging Environments
Unlimited Staging Environments
Codefresh
 
Deploying Apps on OpenStack
Deploying Apps on OpenStackDeploying Apps on OpenStack
Deploying Apps on OpenStack
Anne Gentle
 
Continuously serving the developer community with Continuous Integration and...
Continuously serving the developer community with  Continuous Integration and...Continuously serving the developer community with  Continuous Integration and...
Continuously serving the developer community with Continuous Integration and...
Thoughtworks
 
Continuous Delivery with Cloud Foundry
Continuous Delivery with Cloud FoundryContinuous Delivery with Cloud Foundry
Continuous Delivery with Cloud Foundry
Platform CF
 
Azure DevOps with VSTS
Azure DevOps with VSTSAzure DevOps with VSTS
Azure DevOps with VSTS
Microsoft Tech Community
 
You only have to change on thing to do the DevOps, everything
You only have to change on thing to do the DevOps, everythingYou only have to change on thing to do the DevOps, everything
You only have to change on thing to do the DevOps, everything
Ken Mugrage
 

What's hot (20)

DevOps: All About Automation
DevOps: All About AutomationDevOps: All About Automation
DevOps: All About Automation
 
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a ProSkip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
Skip Staging! Test Docker, Helm, and Kubernetes Apps like a Pro
 
GitHub Actions with Node.js
GitHub Actions with Node.jsGitHub Actions with Node.js
GitHub Actions with Node.js
 
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
PuppetConf 2016: Keynote: Pulling the Strings to Containerize Your Life - Sco...
 
Game of Codes: the Battle for CI
Game of Codes: the Battle for CIGame of Codes: the Battle for CI
Game of Codes: the Battle for CI
 
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CDDevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
DevOps Fest 2020. Kohsuke Kawaguchi. GitOps, Jenkins X & the Future of CI/CD
 
Know the flow to master agility
Know the flow to master agilityKnow the flow to master agility
Know the flow to master agility
 
Dockerized apps on Kubernetes
Dockerized apps on KubernetesDockerized apps on Kubernetes
Dockerized apps on Kubernetes
 
QConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
QConSP 2014 - Continuous Delivery - Part 03 - Continuous IntegrationQConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
QConSP 2014 - Continuous Delivery - Part 03 - Continuous Integration
 
Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)Rundeck + Nexus (from Nexus Live on June 5, 2014)
Rundeck + Nexus (from Nexus Live on June 5, 2014)
 
Why to docker
Why to dockerWhy to docker
Why to docker
 
Jenkins Reviewbot
Jenkins ReviewbotJenkins Reviewbot
Jenkins Reviewbot
 
5 Habits of High-Velocity Teams Using Kubernetes
5 Habits of High-Velocity Teams Using Kubernetes5 Habits of High-Velocity Teams Using Kubernetes
5 Habits of High-Velocity Teams Using Kubernetes
 
Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014Building a Service Delivery Platform - JCICPH 2014
Building a Service Delivery Platform - JCICPH 2014
 
Unlimited Staging Environments
Unlimited Staging EnvironmentsUnlimited Staging Environments
Unlimited Staging Environments
 
Deploying Apps on OpenStack
Deploying Apps on OpenStackDeploying Apps on OpenStack
Deploying Apps on OpenStack
 
Continuously serving the developer community with Continuous Integration and...
Continuously serving the developer community with  Continuous Integration and...Continuously serving the developer community with  Continuous Integration and...
Continuously serving the developer community with Continuous Integration and...
 
Continuous Delivery with Cloud Foundry
Continuous Delivery with Cloud FoundryContinuous Delivery with Cloud Foundry
Continuous Delivery with Cloud Foundry
 
Azure DevOps with VSTS
Azure DevOps with VSTSAzure DevOps with VSTS
Azure DevOps with VSTS
 
You only have to change on thing to do the DevOps, everything
You only have to change on thing to do the DevOps, everythingYou only have to change on thing to do the DevOps, everything
You only have to change on thing to do the DevOps, everything
 

Similar to A peek at (one) Modern Infrastructure Development Environment

From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
Dynatrace
 
Beyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms OrganizationsBeyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms Organizations
Sauce Labs
 
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
Puppet
 
Practical Devops and Continous Delivery
Practical Devops and Continous DeliveryPractical Devops and Continous Delivery
Practical Devops and Continous Delivery
Anuraj S.L
 
Modern_Continuous-Integration_Webinar
Modern_Continuous-Integration_WebinarModern_Continuous-Integration_Webinar
Modern_Continuous-Integration_Webinar
Abhijit Pendyal
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
Callon Campbell
 
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
Hugo Messer
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
Ganesh Samarthyam
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
CodeOps Technologies LLP
 
DevQAOps - Surviving in a DevOps World
DevQAOps - Surviving in a DevOps WorldDevQAOps - Surviving in a DevOps World
DevQAOps - Surviving in a DevOps World
Winston Laoh
 
Agile Evolution
Agile EvolutionAgile Evolution
Agile Evolution
Mikalai Alimenkou
 
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Edureka!
 
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Stefana Muller
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
Callon Campbell
 
Devops CI-CD pipeline with Containers
Devops CI-CD pipeline with ContainersDevops CI-CD pipeline with Containers
Devops CI-CD pipeline with Containers
NuSpace
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
Steve Povilaitis
 
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
QASymphony
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to Production
Karthik Gaekwad
 
Jenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous DeliveryJenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous Delivery
Virendra Bhalothia
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
Sunil Dalal
 

Similar to A peek at (one) Modern Infrastructure Development Environment (20)

From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
 
Beyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms OrganizationsBeyond the Release: CI That Transforms Organizations
Beyond the Release: CI That Transforms Organizations
 
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
PuppetConf 2016: Continuous Delivery and DevOps with Jenkins and Puppet Enter...
 
Practical Devops and Continous Delivery
Practical Devops and Continous DeliveryPractical Devops and Continous Delivery
Practical Devops and Continous Delivery
 
Modern_Continuous-Integration_Webinar
Modern_Continuous-Integration_WebinarModern_Continuous-Integration_Webinar
Modern_Continuous-Integration_Webinar
 
Tour of Azure DevOps
Tour of Azure DevOpsTour of Azure DevOps
Tour of Azure DevOps
 
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...Practical DevOps & Continuous Delivery –  A Webinar to learn in depth on DevO...
Practical DevOps & Continuous Delivery – A Webinar to learn in depth on DevO...
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
 
DevOps - A Gentle Introduction
DevOps - A Gentle IntroductionDevOps - A Gentle Introduction
DevOps - A Gentle Introduction
 
DevQAOps - Surviving in a DevOps World
DevQAOps - Surviving in a DevOps WorldDevQAOps - Surviving in a DevOps World
DevQAOps - Surviving in a DevOps World
 
Agile Evolution
Agile EvolutionAgile Evolution
Agile Evolution
 
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
Introduction to DevOps Tools | DevOps Training | DevOps Tutorial for Beginner...
 
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
Lessons Learned: Continuous Deployment For Docker (presented at Cloud Expo We...
 
Azure DevOps in Action
Azure DevOps in ActionAzure DevOps in Action
Azure DevOps in Action
 
Devops CI-CD pipeline with Containers
Devops CI-CD pipeline with ContainersDevops CI-CD pipeline with Containers
Devops CI-CD pipeline with Containers
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
 
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
Quality Jam 2017: Elise Carmichael and Corey Pyle "Jumpstarting Your Test Aut...
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to Production
 
Jenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous DeliveryJenkins - From Continuous Integration to Continuous Delivery
Jenkins - From Continuous Integration to Continuous Delivery
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 

Recently uploaded

Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
fredae14
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 

Recently uploaded (20)

Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Recommendation System using RAG Architecture
Recommendation System using RAG ArchitectureRecommendation System using RAG Architecture
Recommendation System using RAG Architecture
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 

A peek at (one) Modern Infrastructure Development Environment

  • 1. (ONE) MODERN INFRA DEV ENVIRONMENT A PEEK AT Stephen Kuenzli, QualiMente DevOpsDays Phoenix Oct 24, 2017
  • 2. ONCE UPON A TIME… WE WERE ASKED TO MIGRATE TO THE CLOUD… Jamie Infra
  • 3. AND EVERY WEEK WE ADDED A NEW TOOL TO OUR WORKFLOW… Jamie Infra
  • 4. UNTIL ONE DAY WE THREW UP OUR HANDS FROM ALL THE BUMPS & FRICTION Jamie Infraworks on my machine regressions slow feature delivery
  • 5. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx INFRASTRUCTURE AS CODE ECOSYSTEM IS IMMATURE
  • 6. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx CLASSIC SOFTWARE DEVELOPMENT LIFECYCLE inspecttest design implementation testing operations design review prototyping unit test integration test functional test load test beta test pairing desk checking code review static analysis t / $ monitoring +35% 40% +25% 30% 65% 35% 30% +35% % defects detected by the practice (Code Complete 2nd ed)
  • 7. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx DEVELOP AN GENERIC INFRA MODULE
  • 8. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx CONTINUOUS INTEGRATION ▸ All project assets go into source control ▸ Automate the build ▸ Build tests the artifact ▸ Engineers merge to mainline daily ▸ Every commit built by integration machine ▸ Fix broken builds immediately ▸ Keep the build fast
  • 9. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx MODERN BUILDS Java Javascript Terraform Runner Maven npm make Compile java babel terraform validate Unit Test JUnit jest ? Analyze Sonar eslint tflint Integration Test JUnit jest kitchen + rspec + awsspec
  • 10. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx MO TOOLS, MO PROBLEMS works on my machine 5-page, out-of-date wiki ok, everybody update the rspec gem! ugh…seems like CI machine has old libs env vars or ~/.aws/credentials?
  • 11. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx YOUR PROJECT OR YOUR FUTURE?
  • 12. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx WHAT GOES INTO A BUILD? ▸ source code, both dev & release ▸ build and test programs ▸ libraries ▸ env vars and secrets
  • 13. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx CONTAINERS Package environments in a format that is easy to handle and store Isolate environments via virtualization so they don’t conflict like … like … AMI but supports metadata & inspection, space-efficient but highly programmable, quick to start
  • 14. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx CODIFIED, PORTABLE DEV ENVIRONMENT ▸ put all the tools in one Docker image ▸ tag and share via artifact repository ▸ thin wrapper manages build commands ▸ strict control over what goes in & out of build process
  • 15. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx LET’S MAKE INFRA
  • 16. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx SUMMARY ▸ Infra dev world does not have to be crazy — construct an IDLC! ▸ Improve infra delivery by applying classic software dev techniques ▸ Treat as investment in platform & product
  • 17. Stephen Kuenzli | QualiMente| @skuenzli | #devopsdaysphx DIVING DEEPER Repo for Modern Infra Dev Env with Terraform https://github.com/qualimente/terraform-infra-dev Questions & Help @skuenzli www.qualimente.com