Skip to content

Instantly share code, notes, and snippets.

View metaskills's full-sized avatar
🧠
Adding Digital Intelligence

Ken Collins metaskills

🧠
Adding Digital Intelligence
View GitHub Profile
@metaskills
metaskills / jest-environment-samlocal.js
Created April 25, 2020 14:29
Using Jest SAM Local Environment
const { spawn } = require('child_process');
const NodeEnvironment = require('jest-environment-node');
const { timeout, TimeoutError } = require('promise-timeout');
class SamlocalEnvironment extends NodeEnvironment {
constructor(config) {
super(config);
}
async setup() {
@metaskills
metaskills / event-data.md
Last active March 26, 2020 16:23
Query Strings Event Values w/Lambda Integration using API Gateway (REST & HTTP API) & Application Load Balancers

This solely tests array query string values since I find these the most interesting edge case. So the query string would be colors[]=blue&colors[]=red for all cases below.

API Gateway HTTP API (version 2.0)

"rawQueryString": "colors[]=blue&colors[]=red",
"queryStringParameters": { "colors[]": "blue,red" }

API Gateway HTTP API (version 1.0)

@metaskills
metaskills / aurora-stack.ts
Last active June 7, 2020 13:36
Aurora Serverless IaC Example Using CDK & TypeScript
// Run `mkdir aurora && cd aurora && cdk init sample-app --language=typescript`
// and replace the `lib/aurora-stack.ts` with this file. May need to remove non-needed
// packages from package.json and add others like "@aws-cdk/aws-rds" and
// "@aws-cdk/aws-secretsmanager"
//
// Running assumes you pass in the following environment variables or hard code values.
//
// * ASCLUSTER_MASTER_USER
// * ASCLUSTER_MASTER_PASS
// * SUBNET_GROUP_NAME
@metaskills
metaskills / gist:3752c66ed2b50599e4b66b7664f1d856
Created December 28, 2019 23:11
ActiveRecord Aurora Serverless - Foreign Key Check Debugging
EXECUTE: SELECT 1 70195508832200
EXECUTE: SELECT @@FOREIGN_KEY_CHECKS 70195508832200
(26.8ms) SELECT @@FOREIGN_KEY_CHECKS
EXECUTE: SET FOREIGN_KEY_CHECKS = 0 70195508832200
(26.3ms) SET FOREIGN_KEY_CHECKS = 0
BEGIN AXicEuEN5ZSHrKMjPizpveE6eyVxSEAFGWl7G4+IL5btSET5zr1f99MtCpfIr0d7nPp3gXTUyMmuo5lVen73a8FDDAZvwQPZL6AQCIs851e1jczSJEOQjPo/ZIAG2tveP2YSzlmhWGPZrmmBRZhjBi5KA8z3wZ1Ma4FJ8KcBtvNtu3nq/TV0cj0= 70195508832200
EXECUTE: DELETE FROM `topics` AXicEuEN5ZSHrKMjPizpveE6eyVxSEAFGWl7G4+IL5btSET5zr1f99MtCpfIr0d7nPp3gXTUyMmuo5lVen73a8FDDAZvwQPZL6AQCIs851e1jczSJEOQjPo/ZIAG2tveP2YSzlmhWGPZrmmBRZhjBi5KA8z3wZ1Ma4FJ8KcBtvNtu3nq/TV0cj0= 70195508832200
Fixtures Load (27.2ms) DELETE FROM `topics`
EXECUTE: DELETE FROM `developers` AXicEuEN5ZSHrKMjPizpveE6eyVxSEAFGWl7G4+IL5btSET5zr1f99MtCpfIr0d7nPp3gXTUyMmuo5lVen73a8FDDAZvwQPZL6AQCIs851e1jczSJEOQjPo/ZIAG2tveP2YSzlmhWGPZrmmBRZhjBi5KA8z3wZ1Ma4FJ8KcBtvNtu3nq/TV0cj0= 70195508832200
Fixtures Load (27.7ms) DELETE FROM `developers`
@metaskills
metaskills / talk.md
Created July 16, 2019 16:33
AWS Washington DC Meetup

Title

Functions to Full-Stack & Back Again

Description

Learn how thinking big with AWS Lambda and moving to Full-Stack Serverless using Web Application Frameworks could help your company's cloud adoption & innovation cycles. This is Custom Ink's story of our lift & shift cloud migration to cloud-native using Lamby (https://lamby.custominktech.com), a Rack/HTTP adapter for API Gateway or Application Load Balancers, as one of our tools to help deliver AWS Well-Architected solutions in a versatile programming environment that uses many languages.

Bio

@metaskills
metaskills / log.txt
Created May 15, 2019 01:55
customink/ruby-vips-lambda Latest Runtime Build Errors
$ ./bin/build
Sending build context to Docker daemon 130.6kB
Step 1/12 : FROM lambci/lambda:build-ruby2.5
---> b71c0ed10ee3
Step 2/12 : WORKDIR /build
---> Running in 661fe3c895e3
Removing intermediate container 661fe3c895e3
---> 60ba7e7f1d27
Step 3/12 : ARG VIPS_VERSION=8.7.4
---> Running in e29f20323847
@metaskills
metaskills / global.sh
Created April 30, 2019 02:49
Cross-Region Replication S3 Buckets - Bash Glue
#!/bin/bash
set -e
if [ -z ${STAGE_ENV+x} ]; then
echo "Missing STAGE_ENV env variable!"
exit 126
fi
REGION1="us-east-1"
@metaskills
metaskills / deploy.sh
Created April 30, 2019 02:44
Cross-Region Replication S3 Buckets - Single CloudFormation Template.
aws cloudformation deploy \
--region ${AWS_DEFAULT_REGION} \
--template-file "template.yaml" \
--stack-name "my-buckets-${RAILS_ENV}" \
--s3-bucket "$CLOUDFORMATION_BUCKET" \
--s3-prefix "my-buckets-${RAILS_ENV}" \
--capabilities "CAPABILITY_IAM" \
--tags \
"env=${STAGE_ENV}" \
"group=ecommerce" \
@metaskills
metaskills / demo.rb
Last active November 28, 2018 03:08
Using IMGIX to Personalize Knolled Images
require 'open-uri'
require 'bundler/inline'
gemfile true do
source 'https://rubygems.org'
gem 'imgix'
gem 'launchy'
end
DESIGN_URL = 'https://www.customink.com/email/imgix/design.png'
@metaskills
metaskills / reconstructor.coffee
Created January 10, 2018 12:58
Turbolinks & jQuery ReConstructor Pattern
class Toolbar
constructor: ->
document.addEventListener 'turbolinks:before-cache', @turboBeforeCache
@reConstructor()
reConstructor: ->
@registerWaypoint()
registerWaypoint: ->