DevOps & IT Processes

Setting a Custom Variable in an Azure DevOps Pipeline with PowerShell

1 Comment
Here’s a quick post on something simple which stumped me for a while, in the hopes that search engines help someone else who gets confused in the same way. Recently, I was doing a bit of work in Azure DevOps Services, preparing a demo for an upcoming webinar about Redgate’s solutions. (Shameless plug: the webinar is free.) Part of the demo does the following magic, using a branch policy and pull request automation trigger, combined with some of Redgate’s extensions: Builds/validates database codeCreates a lightweight clone of the “production” database (I’m using a copy of StackOverflow, thanks Brent & the folks at Stack)Creates a release artifact summarizing the changes that’ll be deployed to the clone, exports it, then deploys the changes This combination of actions is lovely — reviewers of the pull request have validation that the code builds, they know it deploys successfully, and they can even look at…
Read More

Key Findings for Database Professionals from the Accelerate State of DevOps Report 2019

1 Comment
The Accelerate: State of DevOps Report 2019 has just been published. This report is the latest in six years of research. With more than 31,000 survey responses, Accelerate is the longest running study of DevOps in academia or industry. In the 2019 edition, research continues to show that DevOps drives business value: high performers at DevOps are “twice as likely to meet or exceed their organizational goals.” While this isn’t a new finding, it’s very important that this continues to be true: why invest in improving at DevOps if it doesn’t drive business value? While there are a ton of valuable insights in the report, in this post I will focus in on the findings which I believe are most relevant to those of us who work “close to a database.” There are three very interesting aspects of the research which hit close to home: Speed and stability are not…
Read More

Azure DevOps: How to Set a Custom Release Branch Folder Filter in Build Pipeline Triggers (video)

This is the first in a series of posts about simple things that I had a hard time figuring out in Azure DevOps services. It can be very useful to enable Continuous Integration for multiple folders in your DevOps pipeline — say, for every branch created under releases/ or features/. But configuring this can be strangely confusing! In this video, I show how to get a custom release branch folder set in your triggers for both build and release pipelines. Then I show a quick test of the automation at work in my demo pipeline. Spoiler: the fix is to type directly into the filter box and hit enter. It looks like that box is only for filtering existing branches, but you can use it for edits! The fix starts in the video at 1:50 if you only want to see that bit.
Read More

How to Persuade Your Company to Change

Like a lot of developers and database administrators, I do a fair amount of short-term problem solving during the course of my normal work week. I get to join some Redgate sales calls, often during Proof-of-Concept exercises, and this frequently involves helping brainstorm about the best way to use our tools to solve a specific need for monitoring, database development, or automation. I also pick up customer questions from the #Redgate channel in the SQL Server Community Slack and answer forum questions for Redgate when I can. Inevitably, when you do a regular amount of troubleshooting and brainstorming with customers, you start to notice patterns and have ideas about how to make things easier, faster, or better in some ways. Sometimes this is an idea for a new process or a new product, or it might be a big change to existing processes or products. The challenge is getting it…
Read More

Managing Cross-Database Dependencies in Builds (Redgate video)

Building your database code is an essential practice to ensure that it compiles from source and that dependencies are met. But things can get tricky when you have objects in some databases which is dependent upon objects in other databases — or even circular dependencies. In this 20 minute video, I give an overview of the two most popular options that Redgate customers use to manage cross-database dependencies when building SQL Server databases with Redgate’s SQL Change Automation.
Read More

DBAs: Stop Denying Sysadmin to Developers

I recent chatted with some folks who have a permissions problem in SQL Server. The permissions problem isn’t technical — it’s a process problem. The issue is that these folks are trying to configure a build for their SQL Server databases using Redgate tools, but they aren’t allowed sysadmin permissions on any SQL Server instance in their organization (even in development environments), because of a policy set by the Database Administrators in IT. Why do DBAs deny sysadmin permissions in development? You may find this type of policy puzzling — and for good reason. After all, if you don’t trust developers to keep their own development environment running, why would you ever trust any code they’ve written enough to deploy it to production? In that question is a bit of an answer: this policy occurs when there is a fundamental lack of trust between development and operations. The policy that…
Read More
Menu