<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ranjan Kumar Singh</title>
    <description>The latest articles on DEV Community by Ranjan Kumar Singh (@ranjansingh41).</description>
    <link>https://dev.to/ranjansingh41</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F321893%2F23a0b3fa-b26b-4258-8195-7de3e548b442.png</url>
      <title>DEV Community: Ranjan Kumar Singh</title>
      <link>https://dev.to/ranjansingh41</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ranjansingh41"/>
    <language>en</language>
    <item>
      <title>NPM 12 Will Change Script Execution Behavior to Prevent Attacks</title>
      <dc:creator>Ranjan Kumar Singh</dc:creator>
      <pubDate>Sun, 21 Jun 2026 07:20:38 +0000</pubDate>
      <link>https://dev.to/ranjansingh41/npm-12-will-change-script-execution-behavior-to-prevent-attacks-45lg</link>
      <guid>https://dev.to/ranjansingh41/npm-12-will-change-script-execution-behavior-to-prevent-attacks-45lg</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1lmue7qcljlkxzn3p7n4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1lmue7qcljlkxzn3p7n4.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;NPM 12 is changing the rules, and AI coding agents are the reason it can't come soon enough&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;For nineteen years, &lt;code&gt;npm install&lt;/code&gt; has quietly done something most developers never think about: it executes code. Not just downloads it runs them automatically via &lt;code&gt;preinstall&lt;/code&gt;, &lt;code&gt;install&lt;/code&gt;, and &lt;code&gt;postinstall&lt;/code&gt; lifecycle hooks before a human ever reviews a single line.&lt;/p&gt;

&lt;p&gt;That implicit trust model is finally ending. Starting with npm 12 (expected in July 2026), GitHub is flipping the default from opt-out to opt-in. As a cloud and security architect who has spent the last several years building landing zones and policy-as-code guardrails, I think this is one of the most consequential supply chain changes in npm's history and it's arriving at exactly the moment a new class of attacker has learned to target it.``&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What's actually changing in npm 12&lt;/strong&gt;
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;preinstall&lt;/code&gt;, &lt;code&gt;install&lt;/code&gt;, and &lt;code&gt;postinstall&lt;/code&gt; scripts from dependencies will no longer run automatically they require explicit approval via &lt;code&gt;npm approve-scripts&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Native module builds via &lt;code&gt;node-gyp&lt;/code&gt; (commonly triggered through a &lt;code&gt;binding.gyp&lt;/code&gt; file) are blocked by default unless explicitly allowed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Git dependencies and remote URL/HTTPS tarball dependencies will no longer resolve automatically you need &lt;code&gt;--allow-git&lt;/code&gt; or &lt;code&gt;--allow-remote&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;A new &lt;code&gt;min-release-age&lt;/code&gt; setting lets teams block freshly published package versions until they've existed for a configurable window, closing the door on attacks that rely on rapid adoption before detection.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Teams on npm 11.16.0+ can run &lt;code&gt;npm approve-scripts --allow-scripts-pending&lt;/code&gt; today to see exactly which dependencies in their tree currently run scripts, approve the ones they trust, and commit that allowlist to &lt;code&gt;package.json&lt;/code&gt; before the breaking change lands.&lt;/p&gt;

&lt;p&gt;This directly targets a pattern that has repeated for years event stream, ua-parser-js, and colors but recently escalated sharply. A backdoored version of Axios (400 million monthly downloads) shipped a cross-platform RAT that executed roughly one second into installation, before dependency resolution even finished. The malicious version sat live for just over three hours before removal, plenty of time for mass compromise.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Why this matters more in an agentic world&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Here's the part that should concern every security architect right now: the threat model just changed shape. It's no longer only humans running npm install.&lt;/p&gt;

&lt;p&gt;AI coding agents Claude Code, Cursor, Cline, and similar tools now run package installs autonomously, around the clock, without a human watching the terminal. When a postinstall hook drops a remote access trojan, a human developer might notice something feels off. An agent reports "dependencies installed" and moves on to the next task because nothing in its interface signals that a detached background process just started beaconing to a command-and-control server. &lt;/p&gt;

&lt;p&gt;Attackers have noticed. A few patterns worth knowing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Config-file prompt injection&lt;/strong&gt;:- Campaigns have planted hidden instructions including zero-width Unicode text inside &lt;code&gt;.cursorrules&lt;/code&gt; and &lt;code&gt;CLAUDE.md&lt;/code&gt; files. When a developer opens the project, the assistant reads these as legitimate project instructions and runs a "security scan" that quietly exfiltrates local secrets.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Documentation written for agents, not humans&lt;/strong&gt;:- Researchers have found malicious packages with unusually persuasive READMEs written, it turns out, less to convince a human and more to read as an attractive match to an LLM evaluating which package satisfies a function it needs.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Compromising the agent's own automation&lt;/strong&gt;:- In one disclosed case, a prompt-injection chain against an AI coding assistant's own GitHub issue-triage bot was used to steal the npm publishing credentials for that same tool, which were then used to push a malicious release to its own user base.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Evasion of script-based scanners&lt;/strong&gt;:- Some campaigns have shifted the trigger mechanism away from the lifecycle hooks most tools watch &lt;code&gt;(preinstall/postinstall)&lt;/code&gt; and into &lt;code&gt;binding.gyp&lt;/code&gt;-driven native builds which is precisely one of the gaps npm 12 closes.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;What this means for your architecture, not just your CI config&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;If you're designing platform guardrails, npm 12 gives you a real lever, but only if you build a process around it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Run the readiness check now&lt;/strong&gt;:- &lt;code&gt;npm approve-scripts --allow-scripts-pending&lt;/code&gt; against your dependency tree today, before the breaking change lands in July, so you're not debugging broken builds under deadline pressure.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Don't let agent autonomy bypass review gates&lt;/strong&gt;:- If AI agents in your environment can run &lt;code&gt;npm install&lt;/code&gt; or &lt;code&gt;--dangerously-skip-permissions&lt;/code&gt;, or similarly permissive flags, treat that as a privileged action requiring the same approval workflow as a human-initiated install not an exception to it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Treat &lt;code&gt;min-release-age&lt;/code&gt; as a CSPM control, not a developer inconvenience&lt;/strong&gt;:- A short publish-to-install delay window is one of the few mitigations that works against worm-style campaigns that rely on rapid, automated adoption before detection.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Extend lifecycle-script awareness to CI/CD runners and AI agent sandboxes equally&lt;/strong&gt;:- Several recent campaigns specifically targeted the credentials available inside build environments SSH keys, cloud tokens, and deployment secrets precisely because that's where blast radius is highest.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Audit what your agents are allowed to trust as "instructions"&lt;/strong&gt;:-If your coding assistant reads repo-level config files (&lt;code&gt;.cursorrules&lt;/code&gt;, &lt;code&gt;CLAUDE.md&lt;/code&gt;, equivalents) as authoritative, that's now an attack surface requiring the same scrutiny as any other trust boundary in your architecture.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;The bigger shift&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;NPM 12 is a narrow technical fix to a specific execution path. But the underlying lesson generalizes well beyond JavaScript tooling, every automation layer you add CI/CD, IaC pipelines, AI agents inherits the trust assumptions of the layer beneath it, often invisibly. Zero Trust principles that we've applied for years to human identity and network access now need to extend to non-human actors, making installation and execution decisions on our behalf.&lt;/p&gt;

&lt;p&gt;The npm ecosystem just decided implicit trust isn't good enough anymore. Worth asking the same question about every other automated decision-maker in your stack.&lt;/p&gt;

</description>
      <category>npm</category>
      <category>node</category>
      <category>ai</category>
      <category>attacks</category>
    </item>
    <item>
      <title>JFrog Pipelines</title>
      <dc:creator>Ranjan Kumar Singh</dc:creator>
      <pubDate>Mon, 06 Apr 2020 07:11:54 +0000</pubDate>
      <link>https://dev.to/ranjansingh41/jfrog-pipelines-2ab</link>
      <guid>https://dev.to/ranjansingh41/jfrog-pipelines-2ab</guid>
      <description>&lt;h1&gt;
  
  
  What is JFrog Pipelines?
&lt;/h1&gt;

&lt;p&gt;JFrog Pipelines is one of the most advanced DevOps automation solutions in Today's world to perform end-to-end automation tasks of building, testing, and deploying software as part of a system of (CI/CD).&lt;/p&gt;

&lt;p&gt;Some Important concept of &lt;a href="https://jfrog.com/pipelines/" rel="noopener noreferrer"&gt;JFrog Pipelines&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Steps
&lt;/h1&gt;

&lt;p&gt;Steps are executable units that perform a specific task, such as building an application, pushing to an artifactory, Docker, AWS, GoogleCloud, etc. provisioning the machine on ubuntu_16.04, ubuntu_18.04, CentOS_7 and windowServer_2019, etc.&lt;/p&gt;

&lt;h1&gt;
  
  
  Resource
&lt;/h1&gt;

&lt;p&gt;Resource typically contains information needed for&amp;nbsp;a step in a pipeline to execute and can also be used to store information produced by a step. For example source code control system (Git Repository ), Image, FileSpec, HelmChart etc.&lt;br&gt;
The available resource for Jfrog Pipelines are:&lt;br&gt;
&lt;a href="https://www.jfrog.com/confluence/display/CICD/Aql" rel="noopener noreferrer"&gt;Aql&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/BuildInfo" rel="noopener noreferrer"&gt;BuildInfo&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/DistributionRule" rel="noopener noreferrer"&gt;DistributionRule&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/FileSpec" rel="noopener noreferrer"&gt;FileSpec&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/GitRepo" rel="noopener noreferrer"&gt;GitRepo&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Image" rel="noopener noreferrer"&gt;Image&lt;/a&gt; , &lt;a href="https://www.jfrog.com/confluence/display/CICD/ReleaseBundle" rel="noopener noreferrer"&gt;ReleaseBundle&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/RemoteFile" rel="noopener noreferrer"&gt;RemoteFile&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/VmCluster" rel="noopener noreferrer"&gt;VmCluster&lt;/a&gt; and &lt;a href="https://www.jfrog.com/confluence/display/CICD/Webhook" rel="noopener noreferrer"&gt;Webhook&lt;/a&gt;. &lt;/p&gt;

&lt;h1&gt;
  
  
  Integrations
&lt;/h1&gt;

&lt;p&gt;Integrations are used to connect your Pipelines workflows to third party platforms or services and manage secrets like tokens, passwords, configuration detail that are needed for Steps in a Pipeline to interact with the source.&lt;br&gt;
All credential information is encrypted and maintained separately from the pipeline definition, and held in a secure storage.&lt;/p&gt;

&lt;p&gt;The available integration types for Jfrog Pipelines are:&lt;br&gt;
&lt;a href="https://www.jfrog.com/confluence/display/CICD/Airbrake+Integration" rel="noopener noreferrer"&gt;Airbrake&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Artifactory+Integration" rel="noopener noreferrer"&gt;Artifactory&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/AWS+Keys+Integration" rel="noopener noreferrer"&gt;AWS Keys&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Azure+Keys+Integration" rel="noopener noreferrer"&gt;Azure Keys&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Bitbucket+Integration" rel="noopener noreferrer"&gt;Bitbucket&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Digital+Ocean+Integration" rel="noopener noreferrer"&gt;Digital Ocean&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Distribution+Integration" rel="noopener noreferrer"&gt;Distribution&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Docker+Registry+Integration" rel="noopener noreferrer"&gt;Docker Registry&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/External+Webhook+Integration" rel="noopener noreferrer"&gt;External Webhook&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/File+Server+Integration" rel="noopener noreferrer"&gt;File Server&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Generic+Integration" rel="noopener noreferrer"&gt;Generic&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/GitHub+Enterprise+Integration" rel="noopener noreferrer"&gt;Github Enterprise&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/GitHub+Integration" rel="noopener noreferrer"&gt;Github&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/GitLab+Integration" rel="noopener noreferrer"&gt;Gitlab&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Google+Cloud+Integration" rel="noopener noreferrer"&gt;Google Cloud&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Internal+Webhook+Integration" rel="noopener noreferrer"&gt;Internal Webhook&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Jira+Integration" rel="noopener noreferrer"&gt;Jira&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Kubernetes+Integration" rel="noopener noreferrer"&gt;Kubernetes&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/NewRelic+Integration" rel="noopener noreferrer"&gt;Newrelic&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/PEM+Key+Integration" rel="noopener noreferrer"&gt;PEM Key&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/Slack+Integration" rel="noopener noreferrer"&gt;Slack&lt;/a&gt;, &lt;a href="https://www.jfrog.com/confluence/display/CICD/SMTP+Credentials+Integration" rel="noopener noreferrer"&gt;SMTP Credentials&lt;/a&gt; and &lt;a href="https://www.jfrog.com/confluence/display/CICD/SSH+Key+Integration" rel="noopener noreferrer"&gt;SSH Key&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Pipelines
&lt;/h1&gt;

&lt;p&gt;Pipelines is a collection of interconnected series and parallel steps to achieve an outcome.&lt;/p&gt;

&lt;h1&gt;
  
  
  Run
&lt;/h1&gt;

&lt;p&gt;Run is an instance of Pipelines execution. The Pipeline Run Logs view of Pipelines provides the facilities to view the log of execution, test results, and other information for steps in the pipeline.&lt;/p&gt;

&lt;p&gt;Unified Dashboard view of JFrog Pipelines&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frzu5gsh0otk85noluxtf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frzu5gsh0otk85noluxtf.png" alt="Alt Text" width="800" height="423"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can see each pipe and what is the status of its runs:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbevlmijqvr16g3o5rf6y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbevlmijqvr16g3o5rf6y.png" alt="Alt Text" width="799" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And for each task:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fkz0rie21diiqx60i8jt3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fkz0rie21diiqx60i8jt3.png" alt="Alt Text" width="799" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And even you can see the yml file that is used in each step:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbu7kbf3rz7iq28v57hnc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbu7kbf3rz7iq28v57hnc.png" alt="Alt Text" width="799" height="391"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Some of the important functionality of &lt;a href="https://www.jfrog.com/confluence/display/JFROG/Pipelines+Steps" rel="noopener noreferrer"&gt;Steps&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Generic Steps
&lt;/h1&gt;

&lt;p&gt;A generic step is for general-purpose execution. The Bash and PowerShell steps, which execute any series of shell commands you specify, are the single generic steps for Linux and Windows runtimes, respectively.&lt;/p&gt;

&lt;h1&gt;
  
  
  Native Steps
&lt;/h1&gt;

&lt;p&gt;Pipelines native steps, you only have to tell your automation server what to do, not how to do it. As part of the JFrog Platform, Pipelines natively knows the best way to publish your builds to Artifactory, as well as build and deliver release packages through Distribution. Native steps provide you quick building blocks to perform the everyday tasks that fill your Artifactory repositories.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://jfrog.com/artifactory/free-trial/?int_source=Blog%20Post" rel="noopener noreferrer"&gt;Start your free trial on JFrog Platform&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hope this helps! :)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>DevOps? In Today World!</title>
      <dc:creator>Ranjan Kumar Singh</dc:creator>
      <pubDate>Sun, 26 Jan 2020 13:36:01 +0000</pubDate>
      <link>https://dev.to/ranjansingh41/devops-in-today-world-4ago</link>
      <guid>https://dev.to/ranjansingh41/devops-in-today-world-4ago</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ferbodw18p9bs0qhatkjp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ferbodw18p9bs0qhatkjp.png" alt="Alt text of image" width="800" height="472"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;We have noticed that the word DevOps sparks confusion, especially for non-technical and many technical people. Sure, the word itself is a combination of two-word development and operations, but what is DevOps?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is DevOps?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The word DevOps is a combination of two words development and operations. “Dev” refers to software application development, and “Ops” refers to IT operations. DevOps is a culture that improves collaboration between Software Development and IT Operations Team to deploy code to production faster in an automated &amp;amp; repeatable way.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc0fwgm7fiseg1bl882n8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc0fwgm7fiseg1bl882n8.png" alt="Alt text of image" width="800" height="395"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;DevOps process involves a lot of development, testing and deployment technologies for developing automated CI/ CD pipelines. Following are some of the famous DevOps tools:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub, GitLab &amp;amp; Bitbucket&amp;nbsp;– Source code management &lt;/li&gt;
&lt;li&gt;Jfrog pipelines, Jenkins &amp;amp; TeamCity – Automation server, with plugins 
built for developing CI/ CD pipelines&lt;/li&gt;
&lt;li&gt;Robotium &amp;amp; Selenium &amp;nbsp;– Automation testing&lt;/li&gt;
&lt;li&gt;Docker – Software Containerization Platform&lt;/li&gt;
&lt;li&gt;Kubernetes – Container Orchestration tool&lt;/li&gt;
&lt;li&gt;Chef, Ansible &amp;amp; Puppet &amp;nbsp;– Configuration Management and Deployment&lt;/li&gt;
&lt;li&gt;Lansweeper &amp;amp; Nagios &amp;nbsp;– Continuous Monitoring&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5hs94dwfc369ya0x7ziu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5hs94dwfc369ya0x7ziu.png" alt="Alt text of image" width="799" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DevOps has four fundamental core values:-&lt;/strong&gt;&amp;nbsp;Culture, Automation, Measurement, and Sharing.&lt;br&gt;
&lt;strong&gt;DevOps practice has five levels:-&lt;/strong&gt;&amp;nbsp;values, principles, methods, practices, and tools.&lt;/p&gt;

&lt;p&gt;In any company developers, the team writes code for new products, features and bug fixes. In a traditional software development life-cycle process, it takes weeks for the&amp;nbsp;Dev team’s work to be placed into production.&lt;/p&gt;

&lt;p&gt;When the Development team code is finally deployed into the Production Environment, Some time unexpected errors or problems occur. This mostly happens because the&amp;nbsp;Development team is focused on writing code for its Development Environment.&lt;/p&gt;

&lt;p&gt;The Operations team is responsible for maintaining the uptime of the Production Environment. The tools that the&amp;nbsp;Operation team&amp;nbsp;uses to manage or administer servers might not be effective or efficient when the number of servers increases largely within the company.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fas4j47hw8kxulyebfqm4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fas4j47hw8kxulyebfqm4.png" alt="Alt Text" width="799" height="254"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This challenge affects how new code is deployed in the Production Environment which is why the Operations team&amp;nbsp;usually requires code deployments to be scheduled and are allowed only once a month in most cases. Once the code is deployed into the Production Environment, the&amp;nbsp;Operations team is responsible for error diagnoses or problems caused by the changes.&lt;/p&gt;

&lt;p&gt;Adopt DevOps require a new mindset, tools, and skills. DevOps integrates developers and operations teams in order to improve collaboration and productivity by automating infrastructure, workflow, and continuously measuring application performance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DevOps is The Secret to Doing More, Faster and Better.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DevOps can be implemented in&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automated Testing&lt;/li&gt;
&lt;li&gt;Continuous Integration&lt;/li&gt;
&lt;li&gt;Continuous Delivery&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Automated Testing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Automated testing&amp;nbsp;is a method in software&amp;nbsp;testing&amp;nbsp;that makes use of special software tools to control the execution of&amp;nbsp;tests&amp;nbsp;and then compares actual&amp;nbsp;test&amp;nbsp;results with predicted or expected results. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmux04jg6bidiz182s96o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmux04jg6bidiz182s96o.png" alt="Alt Text" width="800" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The process of using special automation tools to control the execution of software tests to&amp;nbsp;compare the outcome with the expected results is called Automation Testing. It is used to reduce the testing time of complex activities like regression testing and other laborious or extensive testing processes in the software development cycle.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Continuous Integration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Continuous integration -&amp;gt; CI -&amp;gt;set of processes -&amp;gt;Build pipeline/CI Pipeline&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8n80yzerubo74yuz97nk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8n80yzerubo74yuz97nk.png" alt="Alt Text" width="800" height="432"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Continuous integration&amp;nbsp;is a&amp;nbsp;DevOps&amp;nbsp;software development practice where developers regularly merge their code changes into a central repository, after which automated builds and tests are run&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Important benefits continuous Integration&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Minimizes the human error&lt;/li&gt;
&lt;li&gt;Faster Mean Time To Resolution&lt;/li&gt;
&lt;li&gt;Smaller Backlog&lt;/li&gt;
&lt;li&gt;Increase Team Transparency and Accountability&lt;/li&gt;
&lt;li&gt;Reduce Costs&lt;/li&gt;
&lt;li&gt;Easy Maintenance and Updates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Continuous Delivery&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Continuous delivery is the important process of delivering the Updates/software to production in smaller increments, ensuring that the software can be released at any time. The main focus and objective of continuous delivery is to build, test and release to the customer bit faster and more frequently.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7034yl8je3tcaat07ej7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7034yl8je3tcaat07ej7.png" alt="Alt Text" width="800" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Important benefits continuous Delivery:-&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Lower costs&lt;/li&gt;
&lt;li&gt;Increases the number of deliveries.&lt;/li&gt;
&lt;li&gt;Low-risk releases.&lt;/li&gt;
&lt;li&gt;Minimize the risk of failure in production.&lt;/li&gt;
&lt;li&gt;Reduces manual work.&lt;/li&gt;
&lt;li&gt;Increases confidence in the team.&lt;/li&gt;
&lt;li&gt;Higher quality&lt;/li&gt;
&lt;li&gt;It enables the team to automate everything.&lt;/li&gt;
&lt;li&gt;Better products.&lt;/li&gt;
&lt;li&gt;Enables faster feedback.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Continuous Deployment&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When software is deployed quickly into production since team members make sure the application goes through complete Automation or manual testing.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv7am5qzgt9195wclph54.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv7am5qzgt9195wclph54.png" alt="Alt Text" width="718" height="347"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DevOps Team:-&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Developer (Dev)&lt;/li&gt;
&lt;li&gt;Quality Assurance (QA)&lt;/li&gt;
&lt;li&gt;Operations (System Admin, Production support)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Benefits of DevOps:-&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Shorter Development Time, Faster Innovation&lt;/li&gt;
&lt;li&gt;Reduced Deployment Failures, Rollbacks, and Time to Recover.&lt;/li&gt;
&lt;li&gt;Better Communication and Cooperation&lt;/li&gt;
&lt;li&gt;Reduce Costs and IT Staff&lt;/li&gt;
&lt;li&gt;Lower cost&lt;/li&gt;
&lt;li&gt;Reduction of Bugs&lt;/li&gt;
&lt;li&gt;Increase the rate of software delivery and faster time to market.&lt;/li&gt;
&lt;li&gt;Good processes across IT and teams, including automation.&lt;/li&gt;
&lt;li&gt;Cross-skilling and self-improvement.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks!!&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
