Skip to content

Instantly share code, notes, and snippets.

@jhmartin
jhmartin / davincisrt.pl
Created July 18, 2018 19:27
Davinci Resolve Close-Captions SRT to Youtube SRT converter
#!/usr/bin/perl -w
use strict;
while (<STDIN>) {
chomp;
if (/^\s*$/) {
next;
}
if (/^\d+$/) {
@jhmartin
jhmartin / createpoints.rb
Last active August 19, 2018 21:37
DNS LB Test compose
#!/usr/bin/env ruby
# Input is an ip address. Map it to a position in a list.
positioncount=0
linecount=0
indexes=Hash.new
STDIN.read.split("\n").each do |a|
a=a.chomp
if (! indexes.has_key?(a))
@jhmartin
jhmartin / gist:481c713435985aa473f595cf1db40e09
Last active August 7, 2019 15:14
Generate Cloudformation command from stack
aws cloudformation describe-stacks --stack-name STACKNAMEHERE --output=text|grep -i PARAMETERS | awk '{print "ParameterKey=" $2 ",ParameterValue=" $3 " \\"}'
𝑸: How can I sort an inner array of an object? How can I sort all the arrays in a JSON entity? How can I modify a deeply nested array?
A: If the path to the inner entity is known, one can use |= as illustrated here:
{"array": [3,1,2] }
| .array |= sort
To sort all arrays in a JSON entity, no matter where they occur, one option is to use walk/1:
walk( if type == "array" then sort else . end )
Kernel warning that appears to be related to Trend Micro / Deep Security Agent (dsa_agent). Correlates to a mass failure of Amazon Linux 2 ECS tasks.
Linux xxx 4.14.173-137.229.amzn2.x86_64 #1 SMP Wed Apr 1 18:06:08 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[ 641.849894] ------------[ cut here ]------------
[ 641.852726] WARNING: CPU: 10 PID: 5454 at lib/vsprintf.c:2119 vsnprintf+0x2c1/0x4d0
[ 641.857834] Modules linked in: veth xt_REDIRECT nf_nat_redirect xt_nat xt_tcpudp xfs bmhook(OE) tmhook(OE) dsa_filter(POE) dsa_filter_hook(OE) ipt_MASQUERADE nf_nat_masquerade_ipv4 nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 xt_addrtype iptable_filter xt_conntrack nf_nat nf_conntrack libcrc32c br_netfilter bridge stp llc overlay crc32_pclmul ghash_clmulni_intel pcbc aesni_intel aes_x86_64 crypto_simd mousedev evdev glue_helper psmouse cryptd button sunrpc binfmt_misc ena ip_tables x_tables ext4 crc16 mbcache jbd2 fscrypto nvme crc32c_intel nvme_core ipv6
@jhmartin
jhmartin / gist:6db5b8b41d8ebc9de5e92479a76c4186
Created May 20, 2020 20:24
Cloud Custodian Date and Expiration Format
Cloud Custodian uses dateutil.parser to read dates, so date fields can be anything handled by this.
@jhmartin
jhmartin / gist:0e30486bded97d11dbe1aad729cbcce7
Created May 25, 2020 22:10
DigitalOcean monitoring installation w/chef
# Digital Ocean monitoring tool
yum_repository 'digitalocean-agent' do
description 'DigitalOcean Agent'
baseurl 'https://repos.insights.digitalocean.com/yum/do-agent/$basearch'
repo_gpgcheck false
enabled true
gpgkey 'https://repos.insights.digitalocean.com/sonar-agent.asc'
sslverify true
sslcacert '/etc/pki/tls/certs/ca-bundle.crt'
JSON.stringify(Game.market.getAllOrders(order => order.resourceType == RESOURCE_GHODIUM && order.type == ORDER_SELL && Game.market.calcTransactionCost(200, 'W12N64', order.roomName) < 500));
@jhmartin
jhmartin / tc.ps1
Last active August 30, 2020 17:04
Apply File Creation Time as TimeCode
mkdir tc
$files = Get-ChildItem * -include @("*.mp4", "*.mov")
foreach ($file in $files) {
$fileDate=(Get-Item $file).creationTime
$dateParts = $filedate -split " "
$fileParts = $file.Name -split "\."
$fbname = $fileParts[0]
$fext = $fileParts[1]
$ftime = $dateParts[1]
$fbase = $file.BaseName
@jhmartin
jhmartin / gist:009403005ad3d73135f244a607f34b03
Created September 29, 2022 19:31
Cloudfront POP specific request
curl --header "Host: xxx.cloudfront.net" http://xxx.AKL50-C2.cloudfront.net/ -iv