Skip to content

Instantly share code, notes, and snippets.

View Warrenn's full-sized avatar

Warrenn Enslin Warrenn

  • Busyweb
  • South Africa
View GitHub Profile
locals {
tierpoint_provider = "tierpoint.provider"
bck_folder = "./backup-ec2-scripts"
backup_script_map = {
for name in [for f in fileset(local.bck_folder, "*") : f if f != "user-data.sh"] :
name => templatefile("${local.bck_folder}/${name}", {
region = "${var.region}",
borg_bucket_name = "${aws_s3_bucket.s3_borg_bucket.id}",
lz_bucket_name = "${aws_s3_bucket.s3_lz_bucket.id}",
binaries_bucket_name = "${var.binaries_bucket_name}",
using System.Diagnostics;
public static class CommandLine
{
/// <summary>
/// Helper to run an external process and capture stdout.
/// </summary>
public static Task<string> RunProcessAsync(string fileName, string args)
{
var psi = new ProcessStartInfo
sudo openssl dgst -sha256 -sign /var/s3-backup/certs/client/client.key -out - <<< "test" | sudo openssl base64 -in - -out signature.txt
#!/bin/bash
host_name="$(sed 's/[\[]/\\[/g; s/[\]]/\\]/g; s/[(]/\\(/g; s/[)]/\\)/g' <<< "$1")"
task_name="$(sed 's/[\[]/\\[/g; s/[\]]/\\]/g; s/[(]/\\(/g; s/[)]/\\)/g' <<< "$2")"
start_pattern="TASK \[$task_name\]"
host_pattern=": \[$host_name\] => "
# State machine flags
found_task=0
@Warrenn
Warrenn / export.sh
Created April 27, 2025 16:40
export .env as environment variables
export $(cat .env | xargs)
@Warrenn
Warrenn / cloudformation-docker.yml
Last active February 25, 2024 21:28
install docker image from ecr
AWSTemplateFormatVersion: "2010-09-09"
Description: Template to deploy funding-arbitrage futures instance
Metadata:
cfn-lint:AWSTemplateFormatVersion: "2010-09-09"
Description: Template to deploy funding-arbitrage futures instance
Metadata:
@Warrenn
Warrenn / execute-nonquery
Created August 18, 2022 16:27
execute database update insert or delete
function Execute-NonQuery([psobject[]]$sqlCommands, $connectionString) {
$connection = new-object system.data.SqlClient.SQLConnection($connectionString)
$connection.Open()
$command = $connection.CreateCommand()
$transaction = $connection.BeginTransaction()
$command.Connection = $connection
$command.Transaction = $transaction
try {
@Warrenn
Warrenn / powershell get-dataset
Created August 17, 2022 18:26
get a dataset from a database
function Get-DataSet($sqlCommand, $parameters, $connectionString) {
$connection = new-object system.data.SqlClient.SQLConnection($connectionString)
$command = new-object system.data.sqlclient.sqlcommand($sqlCommand,$connection)
$dataset = New-Object System.Data.DataSet
$parameters | Select-Object -ExpandProperty Keys | %{
$command.Parameters.Add($_, $parameters[$_])
}
try{
@Warrenn
Warrenn / gist:856defce94e2d3d899f5884d5e5a0a8d
Created May 4, 2022 11:51
FallbackCredentialsFactory.cs
FallbackCredentialsFactory.CredentialsGenerators.Insert(0, () =>
{
var profileName = Environment.GetEnvironmentVariable("AWS_PROFILE");
if (string.IsNullOrWhiteSpace(profileName)) return null;
var chain = new CredentialProfileStoreChain();
return !chain.TryGetProfile(profileName, out var profile) ? null : new BasicAWSCredentials(profile.Options.AccessKey, profile.Options.SecretKey);
});
@Warrenn
Warrenn / StaticAsyncMediator.cs
Created May 3, 2022 07:57
facilitates async await
public static class StaticAsyncMediator
{
private static readonly IDictionary<string, object>
CompletionSources = new ConcurrentDictionary<string, object>();
private static TaskCompletionSource<T> GetCreateSource<T>(string key)
{
var fullKey = $"{typeof(T).FullName}:{key}";
if (CompletionSources.ContainsKey(fullKey) && CompletionSources.TryGetValue(fullKey, out var returnValue))
return (TaskCompletionSource<T>) returnValue;