Skip to content

Instantly share code, notes, and snippets.

View Alex-Yates's full-sized avatar

Alex Yates (Personal) Alex-Yates

View GitHub Profile
# UPDATE ME!!!!
$rgCloneEndpoint = "https://update-me:8132/"
# DON'T CHANGE ANYTHING ELSE
###############################################################
<#
For more information, see:
https://documentation.red-gate.com/redgate-clone/using-the-cli/cli-installation
#>
$testMode = $true # By default, don't actually delete anything. Just print out the commands you would execute without executing them. Set this to false if you want to actually delete stuff
$images = (rgclone get di --output json) | ConvertFrom-Json
$failedImageIds = ($images | Where-Object {$_.status -like "Failed"}).Id
$containers = (rgclone get dc --output json) | ConvertFrom-Json
$failedContainerIds = ($containers | Where-Object {$_.status -like "Failed"}).Id
if ($failedImageIds.length -ne 0){
$failedImageIds | ForEach-Object {
:: DO NOT BLINDLY RUN THIS FILE!!!!
:: It won't work.
:: Also, it's important you understand what each bit does.
:: Instead, step through it, one line at a time, reading the comments (::) as you go.
::
:: STEP 0 - Download the rgclone command line
:: It's available here. (NOTE: You need to provide your own rgclone URL and port!):
:: https://rgclone-url.com:port/cloning-api/download/cli/windows-amd64
sourceType: Backup
name: pagila-pg
engine: postgresql
version: 14
backups:
- file: pagila-pg/dump-pagila_dev.sql
- file: pagila-pg/dump-pagila_shadow.sql
initialDatabaseName: pagila
postScript: |
CREATE ROLE redgate WITH LOGIN SUPERUSER PASSWORD 'not_the_real_password';
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- If you want to use a different name for the table, update this variable
DECLARE @TABLENAME AS NVARCHAR(100)=N'flyway_schema_history';
@Alex-Yates
Alex-Yates / Set-SqlDefaultPath.ps1
Created September 10, 2021 16:53
Set-SqlDefaultPath.ps1
function Set-SqlDefaultPath {
param (
[Parameter(Mandatory=$true)][string]$SqlInstance,
$NewDefaultDataPath = "",
$NewDefaultLogPath = "",
$NewDefaultBackupPath = ""
)
try {
import-module dbatools
}
Session type:
Lightning Talk
Title:
Dante's 9 Levels of Database Deployment Hell
Abstract:
Got a monolithic database with a zillion wicked dependencies?
Do database deployments send fear down your spine?
Have a dark sense of adventure?
DevOps Flow Series, part 2 of 4
Title:
Simple database deployments with GitHub and SSDT
Abstract:
For many of us, database deployments are time consuming, painful and risky.
The automated deployment of applications, and even servers, is now ubiquitous
- but most of us have not applied the same principles to our databases.
17th July 2020
As a cis, white, straight, middle class, able-bodied man, I recognise my royal flush of privilege.
I'm very lucky. I was born into a loving and supportive family and I've had remarkably few obstacles
put in my way. Had I not been born with all those advantages, I probably would not have achieved
everything that I have achieved.
Representation is important. I understand that for various reasons it is not easy for events to
create agendas with speakers that fully reflect their community. I also understand that the community
is divided on how best to solve this problem. I don't pretend to have all the answers. I also don't
DevOps Flow Series, part 4 of 4
Title:
Zero downtime database deployments
Abstract:
You understand that big bang deployments are painful, but
each deploy may disrupt users, so you are restricted to
tight deployment windows for your database. The consequences
of missing your windows aren't worth thinking about - but it