[This is part of a DevOps 101 Series written by Kat Cosgrove, Developer Advocate at JFrog.]
As software engineers, we strive to better our craft and leave a lasting mark on the organizations we work for. Throughout our careers, we balance two types of knowledge: the combination of business domain and technical stack is our bread and butter. Sometimes we might value the business domain over the technical stack and vice versa as we expand our toolkit. For example, we might work at a financial institution (let’s call it Acme Investment Bank) for a broad domain, but where the tech stack is not bleeding edge. On the other hand, we might roll the dice and work for a firm that has a bleeding-edge tech stack but where the domain is very specific, like a company that sells wine to your pets.
Enterprises around the world are waking up to the containers and Kubernetes trend. There are numerous benefits of delivering an application as container packages to Kubernetes but at the same time, the process of app containerization and the subsequent app deployment to Kubernetes can hit many roadblocks. Since the idea of using Kubernetes and containers for app delivery is fairly recent, the transition from traditional delivery systems to these modern delivery systems is a bumpy ride.
Three Ways Automated Testing Closes the Gap Between Development and Delivery
Building an on-demand, server less Continuous Delivery automation solution using Tekton and AWS EKS Fargate
We're going to create a CI/CD pipeline for a typical Python package. The text focuses on practical aspects and should be enough to get you started!
Kubernetes is the most widely used container-based orchestration platform today. Learn how to deploy apps with continuous delivery using Postman.
Jenkins down? Pipelines broken? Hackers making off with your data? It often stems from one fatal flaw. While Jenkins has been both loved and hated for being DevOps duct tape, every user knows there are plenty of issues to deal with. Over the past three years, as part of my work at Codefresh I’ve been helping teams migrate from Jenkins and I’ve seen all of these issues over and over again. The biggest issue may surprise you because it creates a cascade effect.
When it comes to deployment, a choice must be made. Find out what's the difference in code promotion and artifact promotion
It’s been nearly four decades since Microsoft developed their Project application as an internal management tool to organize their various software development projects. In 1984, they released it to the public (on floppy disk…CDs didn’t really become a software download mechanism until the mid-90s), and within a few years it became the dominant project-management software for the PC universe.
Automating The Automation Behind DevOps
In this post, I look at why there are so many definitions of lead time and how you can put them to use.
Continuous Delivery and Continuous Deployment are two complementary practices that help teams get their software into the hands of users faster.
“Do not deploy on Friday” is not a joke after all even if you have continuous deployment. With deciding to deploy anyway comes the subtle concern...
Continuous delivery (CD) is a software development practice that enables developers to release small but frequent software updates reliably and safely. Closely
In the common paradigm, dedicated QA teams solely focus on product quality. QAOps enables an efficient quality assurance process.
Disclaimer: This is NOT a press release by Netflix. Just my honest review of tech that helps us binge great content without hassle.
The continuous model implies the frequent and predictable release of quality products. Let's understand the business benefits of Continuous Delivery.
This post is the fifth and final article in our Tactical Guide to a Shorter Cycle Time five-part series. Read the previous post here.
With DevOps and Continuous Delivery gaining traction, are the principles behind Lean and Agile still relevant? How do they compare to the 5 Continuous...
There seems to be a debate that has gone on for quite some time now on the Twitters about whether or not you should do Friday deploys, and whether there should be Friday moratoriums, etc. There are a lot of accusations being thrown around about fear, testing, time to recover, and the like. To be very clear, I am not a big fan of Friday deploys. That opinion is not based on merely how I feel about deploying on Friday, but also based on the science of it, as well as my learned experience.
A quintessential piece for anyone working with distributed systems is the Fallacies of Distributed Computing by L Peter Deutsch. Even when working with modern platforms such as Kubernetes, the assertions made in the Fallacies of Distributed Computing prove to be very true around latency, bandwidth and system administration.
Because who doesn't want good boys to show up whenever they push?
Getting Spinnaker running is not an easy feat. Armory's Minnaker open source application gets you started in 10 minutes, so you can focus on Armory's value.
In this series of articles, we will explore the convergence happening between the IT and Telecom industries, which is referred to as “Telco Softwarisation”.
If you're using a traditional software development life cycle (SDLC) you may have questions about where DevOps fits in.
Metrics are crucial to DevOps and Continuous Delivery as part of the process of continuous improvement. However, you must balance collecting and displaying data
Benefits of Automation Testing, Strategies and Best Practices. Get unique insights on how to implement automation testing fast!
Continuous Delivery is the ability to ship code quickly, safely, and consistently, and it’s a necessity for teams that wish to remain innovative and competitive. It’s focused on delivering value to the user and starting that feedback loop early — the ideal state of Continuous Delivery is one in which your code is always ready to be deployed.
Many engineering leaders think of CD as a workflow and focus on the tooling and processes necessary to keep code moving from commit to deploy.
But CD is more than just a process — it’s a culture. To effectively practice CD, you need to:
Continuous integration and continuous delivery (CI/CD) are best practices in today’s software engineering development process.
We'll run through how to build and configure a CI/CD pipeline to deploy your business's website using AWS, Terraform & Gitlab.
Businesses continue to move forward on the digital acceleration path provoked by the pandemic, which means the demand for software testing will increase. What t
How do the big tech companies and unicorn startups succeed in agile product development while maintaining code quality.
… and incidentally establishing DevOps.
Learn how to create a simple Helm chart to package and deploy individual Kubernetes applications.
Why relying more on juniors and less on seniors is essential in dealing with systems debt before the problem goes completely out of the team's control.
In most DevOps settings you’ll find that there are multiple environments in the pipeline. You might have conditions that change the environment based on which branch was merged or when a branch is tagged for release. There are a number of reasons you want to have more than just a production environment, the biggest reason being testing.
Lean production is not a new concept. It comes from the manufacturing industry and was polished by Toyota in the seventies. However, Lean manufacturing principles turned out to be so practical and universal that they can be used to create innovations in other industries as well. In the Information Technology (IT) sphere, they are frequently used with the Six Sigma Principles, and in this article, we will explain what each principle means for Lean software development.
Many engineering teams are making the switch to a DevOps culture. This has a lot to do with the way the software development cycle has changed over the years. It used to take months to implement a new feature, get it through testing, fix any issues, and finally get it to production.
Kubernetes is now the de-facto standard for container orchestration. With more and more organizations adopting Kubernetes, it is essential that we get our fundamental ops-infra in place before any migration. This post will focus on pushing out new releases of the application to our Kubernetes cluster i.e. Continuous Delivery.
“Our analysis is clear: in today’s fast-moving and competitive world, the best thing you can do for your products, your company, and your people is institute a culture of experimentation and learning, and invest in the technical and management capabilities that enable it.” – Nicole Forsgren, Jez Humble, and Gene Kim, Accelerate.
All engineering teams strive to build the best product they can as quickly as possible. Some, though, stumble into a false dichotomy of choosing between speed and quality. While that choice may have been necessary in the past, it’s not the case today.
NPM automation tokens allow us to publish 2FA-protected packages from automation workflows.
There is plenty of content out there describing what Continuous Integration, Continuous Delivery and Continuous Deployment are. But what are these processes for in the first place?
Continuous Integration (CI) and Continuous Delivery (CD) are staples of a modern software development workflow that enable developers to release their code rapi
I wanted to write this guide for a while because DevOps is one of the things that is not discussed much yet there are a few straightforward actions that you can integrate into your workflow that will make your developer life much easier.
The rise of DevOps and Agile methodologies is apparent to anyone closely following the business world. Just last year, there was an 18 percent increase in DevOps adoption. Most business owners see the benefits of embracing both DevOps and Agile. With these methodologies in place, developers are able to get projects done in a timely and efficient manner.
Image courtesy of Pixabay
Many development teams skip having a staging environment for their applications. They often submit a PR, potentially run tests in a CI system, merge to master, and then deploy to production. This is a risky pipeline because there is no true integration environment or integration testing being performed. What’s worse is that if there is an issue they may engage in “cowboy coding” to try to resolve the issue on their live production environment.
Previously, we managed to make our app redeploy on each commit. As you can remember, we get the status of deployment by processing script execution results. So let's use it to send a notification to ourselves each time we deploy our code.
Buddy is the underdog of the CI/CD world. It's a frustrating world, filled with broken Jenkins servers and exhausting CodeBuild UIs. I discovered Buddy about a year ago and I've been raving about it ever since. It offers a different approach to a complex, difficult problem.
Continuous Delivery is one of the best practices for software development, but what are the best tools for it today? Here are my picks.
How can teams perform at their full potential?
I used to preach about Git Flow to keep my code releasable, rollback-able, and keep a clean history. But not anymore — now, bad code doesn’t make it into my codebase.
Using Deployment slots, we can perform Blue/Green deployments in Azure App Service to achieve zero-downtime deployments for our containerized workloads.
Buddy and Jenkins find themselves on completely opposite ends of the CI/CD spectrum. So which one should you go for? It certainly is a question of context. There are some clear technical differences but how they relate to actual value is circumstantial and should be taken on a case by case basis. As such, this comparison will be broken down into two sections.
This is a tutorial on how to setup an Electron app on Travis CI, so that new versions are deployed to Github Releases with a simple pull request.
Check out this guide and spin up a GitHub Action for your favorite stack fast—like Stack Overflow copy & paste fast.
In this world of cross-functional teams and microservice architecture, DevOps skills become increasingly important, and that starts with understanding CI/CD
Are you looking to transform your software development process? If yes, this blog post provides an introduces to orchestrating the CI-CD pipeline with AWS.
GitHub actions and workflows are great. We use them to deploy a web app to different cluster environments and I want to show you how we did it. Hopefully, this helps to simplify your deployment process as well. I’ve also written a companion article that describes our GitHub workflows for continuous integration.
How to use Platypush to set up self-hosted build and test pipelines for your Gitlab and Github projects.
Having someone to lead the DevOps space early and instill the culture will reduce overall release cycles friction and shorten the time to market.
We will configure a CI/CD pipeline with GitLab CI/CD and execute Selenium testing over it through LambdaTest, an online Selenium Grid of 2000+ real browsers.
Visit the /Learn Repo to find the most read stories about any technology.