RSSAmplifier

Blog

Push Build Test Deploy — Yuval Oren on DevOps & AI

Recent content on Push Build Test Deploy — Yuval Oren on DevOps & AI

pushbuildtestdeploy.comRSS feed ↗31 posts

Latest posts

My Case Against Spec-Driven Development

This is my unpopular take on Spec Driven Development. Most developers I talked to are doubling down on it. AWS is definitely putting emphasis on it with Kiro, and I do understand why. Look, I still use Plan Mode and don’t prompt without thinking, providing a lot of context and having a conversation to raise the best course of action. But I still keep it a short cycle and emphasize getting…

About

Hi, I’m Yuval Oren . I’ve spent about 20 years in and around production systems - starting in networking, moving through security, and landing squarely in DevOps, where “push, build, test, deploy” stopped being a slogan and became the day job. I’m Israeli and based in Israel. I’ve built and broken enough pipelines, clusters, and cloud accounts to have opinions…

Unstable Builds - Good or the Source of All Evil?

TLDR; I’m going to try and discourage you from using build warnings / unstable status - those you see in CI platforms like Jenkins. A few months ago, I started working on a project, and we choose CircleCI for the CI platform. As the work went along, our client asked us to set a “warning” status for the build in some use cases. They wanted it for the duration of the transition to…

Range in DevOps

Last week I started reading the book Range by David Epstein , which talks about how specialization and the “10,000-hours rule” may not be the only path for being an effective professional. Instead, he claims that breadth of knowledge and experience may give you a professional advantage in modern times. It’s now ok to be a generalist - You don’t have to hide anymore. Malcolm…

We Used to Do It Differently At ...

I’m still not 100% sure about Clubhouse, but even if it’s just a hyped-up app, you can definitely catch fascinating conversations here and there. Last week, I listened to a conversation with Andrew Bosworth, Facebook’s head of Reality Labs, who, among other topics, talked about teams and engineering. There was something he said that resonated with me. Sometimes, we will have a…

Understanding S3 Encryption

I think that there is enough confusion when talking about encryption in S3 that it’s worth a short overview to help you avoid mistakes and a false sense of security. You may be looking at S3 encryption because you want to keep your data safe, or maybe to check off a few boxes with regulation, but at the end of the day, we all want private information to stay private.

Encryption in Transit and Rest

I started writing a post about S3 encryption and thought it would be a good idea to have a separate post that covers encryption at rest and encryption in transit. It’s a short read, so go on and take 4 minutes to read it before returning to the original post. Encryption in transit When we want to ensure that information stays private while it moves across the network, we implement…

Granting Temporary Access to S3 Objects

Unless you are hosting public files on S3, like your website’s static content, the chances are that you are going to keep your buckets private. And that is great, but sometimes when working with private buckets, you may want to be able to allow access to someone else. It could be for someone that doesn’t have privileges on that bucket, a different account, or maybe a customer who wants…

On Hidden Costs and the Value of DevOps

When you think about cost in the DevOps world, the first thing that will come to mind is your AWS bill, or maybe that Datadog subscription. However, the cost is not always as straightforward as receiving an invoice, and in the DevOps world, the hidden cost is about doing it wrong. I believe that being aware of hidden costs is a “mental model” you can use when making decisions. Without…

Your #1 Tip for Starting a New DevOps Position

When starting in a new DevOps position, things always seem overwhelming. You probably know that feeling that you get in the first few days when you receive the laptop and try to kill some time until it’s ok to go home. You are sitting there idle, no one really has the time for you, but it would look bad if you leave before 18:00 on your first day of work.

Your Developers hate using kubectl? Try this instead

![](/images/kubectl-alternatives.png) When you hand over the reins of Kubernetes to your developers, kubectl is always a friction point for them. I think that developers should get to know kubectl, just like they should know how to use other command-line tools, but having said that, you can and SHOULD implement tools that will take kubectl out of the daily workflow. Central Logging With Pods and…

Spring Boot application.properties in Kubernetes

What is the best way to keep environment-specific variables when migrating a Spring Boot application to Kubernetes? Should you create different “application.properties” files and use profiles? Use environment variables? What about security? A common friction point between developers and DevOps is around injecting specific environment settings to the application. Some developers…

When Do Kubernetes Operators Make Sense?

I remember that everyone started talking about Docker. We found ourselves having the same discussion over and over again about whether it’s right for the new client project. For a long time, the answer was NO . That was until Docker matured, and the ecosystem started to expand. Why am I telling you this? Because I think that Kubernetes Operators are such a tech. It’s here to stay, and…

Keeping AWS Credentials Files Secret With AWS Vault

You know all those “accessKeys (9).csv” files that are lying around in your Downloads folder? And then you have the ~/.aws/credentails file, that is all in clear text? I mean, we are trying to do everything as securely as possible, but then AWS doesn’t have the minimal encryption for these credentials. Well, aws-vault by 99 Designs is a sweet little tool that lets you use your OS…

Accessing Kubernetes Volumes When Using Telepresence

Telepresence does a great job when it comes to local development environments for remote Kubernetes clusters. When you launch it for the first time, it’s pretty apparent that it exposes the environment variables that are available to the original pod. But what about volumes, or secrets and config maps that the deployment mounts as files? You want to be able to access the persistent storage…

9 Ways to Speed Up Your CI/CD Pipelines

![](/images/9-ways-to-speed-up-your-ci-cd-pipelines.png) Do you know that one web service you have that builds multiple executables, a database migration script, and downloads a million libraries? You wait an hour just to watch it get to 80% when it fails. For the third time by now, which means you have to make more pipeline modifications. And of course, wait another hour to see if that worked.…

Keep Passwords and Keys Secret With Ansible Vault

![](/images/ansible-vault.png) In my previous article about Secrets Managers , I mentioned Ansible Vault as one solution, and if you are already using Ansible for deployment, it may be an obvious choice. I’m guessing that your Ansible code has sensitive information that is scattered all over: Passwords Database connection strings API Keys Private keys for server access Private keys for SSL…

I Swear I've Seen This Error Before

![](/images/seen-this-error-before.png) I’m currently in the midst of a substantial Kubernetes migration project, and the other day, after a messy merge, an error came up that I’ve definitely seen before. I remember solving it, but as time passed, the solution slipped away from me. I couldn’t remember what did the trick. Well, I bet git will tell me. Scrolling down the history log did highlight a…

Why Do We Need Secrets Managers?

The term Secrets Management is trending in the DevOps realm, and you may be struggling to understand the problem it solves. You may be thinking, “What am I missing here?” So let’s get back to the basics and look at a few simple examples of secrets management to better understand the use case. ; TLDR this is where you should be keeping all of your passwords, API Keys, private…

Are You Skimping on Your Staging Environment?

How did we not catch it before it went on production? Oh, that never happened on Staging before, and we can’t seem to reproduce it on your test environments. You’ve been there before - After spending hours on hours in the trenches, you figure out that the staging database has a different version than production, or that your “stateless” app is not 100% stateless, but how…

Unit Testing for Jenkins Shared Libraries

If you are working with Jenkins Shared libraries, you may be missing out on what in my opinion is a great way to structure and test your project. I found a great blog post that explains how to do it (link below). When you work with Jenkins pipelines, soon enough your Jenkins file will get messy. If you have a team working on the same project, it becomes a pull request race where everyone is…

Should I Use This Helm Chart?

![](/images/helm-charts.png) There are so many Helm charts out there, and it’s very tempting to just pick one and go, but making a rash decision can come back and haunt you later down the road. I have to admit that the official Helm repository has come a long way and if it used to mostly serve half baked Charts, by now most of them even work! So, before you blindly pick a Helm chart and…

How to run an Internal Load Balancer with SSL on GKE

I’ve spent too much time on this problem, and I hope you don’t have to as well. When you create an Ingress configuration on GKE, it automatically launches a Layer 7 load balancer with all the bells and whistles. It’s also easy to enable HTTPS and even use their own managed certificate service. All is well until you understand that it only supports external load balancers and,…

Jenkins on Kubernetes - Building Docker Images

When I first started migrating Jenkins to run on Kubernetes, I used the “official” Helm chart, and it got a little confusing. One would assume that if you are planning to run Jenkins on Kubernetes, you may be in the business of building Docker images. /sarcasm I expected the slave pod to allow me to build docker images out of the box, which it didn’t. However, after giving it…

Using Jenkins's replay feature to work on without repeatedly committing the Jenkinsfile

Sometimes, when working on Jenkins jobs, I find myself stuck in this cycle of committing the Jenkinsfile, pushing it, and running the job over and over again. I have to admit it gets old real fast. Working on the pipeline code is time consuming as it is, especially if your build time is inherently long, and any added overhead can be agonizing. Oh, and as an added bonus, my git history gets filled…

Contact

Want to talk shop — DevOps, cloud, security, AI, or something you read here? I’d genuinely like to hear from you. The fastest ways to reach me are LinkedIn and Twitter/X . Prefer email? Drop me a note below and I’ll get back to you. Name: Email: Message: Send

Hide your shameful commits with Git Squash

We all do it, and I’m sure that you do too. You know, the rapid commits when you are testing something, then fixing a typo, then commit again, push, test and on and on. I usually do it when I’m working on deployment or build code, positive that it’s just a tiny fix, one little modification and that’s it. So I commit with a meaningless message, push test and, see an error.…

Making Sense of a Chaotic AWS Account

We’ve all been there, given access to an AWS account at your new job or project, and now you’re expected to deliver results. Yeah, it’s always overwhelming and can trigger an imposter syndrome even for the most experienced DevOps, especially if the account is particularly messy. Oh, and they’re always messy. How do you make sense and grasp what is happening in this AWS…

What should I use for running multiple Docker containers on a single server?

There are SO many options for running Docker containers today and if you are new to DevOps, you may find it a little overwhelming. Along with these options, there are also strong opinions about what you need to do, all while you try to figure out a solution to Your problem. Sometimes all you need is to run multiple Docker containers on a single server, and choosing between the options could seem a…

Testing your Ansible deployments with Molecule

Ansible projects usually start small and “under control” but as time passes by and your codebase grows (along with the product) things can start getting a little messy. You all know this mesh of “we’re going microservices but not really,” which require more roles and more platforms to support. We see more and more companies embracing the Microservices architecture,…

Security code review for public Kubernetes and Helm code

![](/images/security-code-review-for-public-kubernetes-and-Helm-code-notxt.png) As Kubernetes is gaining momentum, the community grows and with it, the public knowledge and code that can save us time by reusing public experience. Helm came into the picture and allowed us to use public packages that will spin off many commonly used services that we may require to run on our cluster. These…