Difference between revisions of "DevOps"

From Wiki @ Karl Jones dot com
Jump to: navigation, search
(Created page with "'''DevOps''' (a clipped compound of development and operations) is a culture, movement or practice that emphasizes the collaboration and communication of both software develop...")
 
(DevOps toolchain)
Line 12: Line 12:
  
 
* Code – Code development and review, continuous integration tools
 
* Code – Code development and review, continuous integration tools
* Build – [[Version control]] tools, code merging, build status
+
* Build – [[Revision control]] tools, code merging, build status
 
* Test – Test and results determine performance
 
* Test – Test and results determine performance
 
* Package – Artifact repository, application pre-deployment staging
 
* Package – Artifact repository, application pre-deployment staging

Revision as of 12:45, 17 August 2016

DevOps (a clipped compound of development and operations) is a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals while automating the process of software delivery and infrastructure changes.

Description

It aims at establishing a culture and environment where building, testing, and releasing software can happen rapidly, frequently, and more reliably.

DevOps toolchain

Because DevOps is a cultural shift and collaboration between development, operations and testing, there is no single DevOps tool, rather a set or DevOps toolchain consisting of multiple tools.

Generally, DevOps tools fit into one or more of these categories, which is reflective of the software development and delivery process:

  • Code – Code development and review, continuous integration tools
  • Build – Revision control tools, code merging, build status
  • Test – Test and results determine performance
  • Package – Artifact repository, application pre-deployment staging
  • Release – Change management, release approvals, release automation
  • Configure – Infrastructure configuration and management, Infrastructure as Code tools
  • Monitor – Applications performance monitoring, end user experience

Though there are many tools available, certain categories of them are essential in the DevOps toolchain setup for use in an organization. Some attempts to identify those basic tools can be found in the existing literature.[13]

Tools such as Docker (containerization), Jenkins (continuous Integration), Puppet (Infrastructure as Code) and Vagrant (virtualization platform) among many others are often used and frequently referenced in DevOps tooling discussions.

See also

External links