Skip to content

Instantly share code, notes, and snippets.

View bsodmike's full-sized avatar

Michael de Silva bsodmike

View GitHub Profile
@terranware
terranware / snsToSlack.js
Last active March 22, 2025 16:43
AWS Lambda function to Slack Channel hookup
var https = require('https');
var util = require('util');
exports.handler = function(event, context) {
console.log(JSON.stringify(event, null, 2));
console.log('From SNS:', event.Records[0].Sns.Message);
var postData = {
"channel": "#aws-sns",
"username": "AWS SNS via Lamda :: DevQa Cloud",
@ChuckJHardy
ChuckJHardy / example_activejob.rb
Last active March 12, 2025 21:24
Example ActiveJob with RSpec Tests
class MyJob < ActiveJob::Base
queue_as :urgent
rescue_from(NoResultsError) do
retry_job wait: 5.minutes, queue: :default
end
def perform(*args)
MyService.call(*args)
end
@kylev
kylev / aws-op-list.rb
Last active March 17, 2021 02:51
A script to print all the operations in each AWS service endpoint. Useful for crafting well-formed IAM permissions.
#!/usr/bin/env ruby
# List all the (known) operations on each AWS service API. This is
# incredibly useful for building well-restricted IAM access
# rules. With this list you can quickly see what "s3:Get*" matches, or
# just glance through and look for something that might be missing and
# breaking your app.
# I can't believe I had to write this myself. I'm pretty sure there
# are a lot of people out there with near-god-mode permission on IAM
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "Setting up your own private and secure VPN",
"Mappings": {
"AWSInstanceType2Arch": {
"High.Speed.VPN-Paid": {
"InstanceType": "t2.medium"
},
"Standard.VPN-Free": {
"InstanceType": "t2.micro"
@dexterous
dexterous / psql_check.sh
Last active August 15, 2017 18:12
Quick n' dirty script to monitor PostgreSQL connectivity and connect latency and post metrics to AWS Cloudwatch
#!/bin/bash
export PGPASSWORD='password'
IFS=':'
echo ''
date '+%F %T'
for HOST in www.{foo,bar}.com; do
@KodrAus
KodrAus / Profile Rust on Linux.md
Last active August 12, 2024 12:37
Profiling Rust Applications

Profiling performance

Using perf:

$ perf record -g binary
$ perf script | stackcollapse-perf.pl | rust-unmangle | flamegraph.pl > flame.svg

NOTE: See @GabrielMajeri's comments below about the -g option.

@ishan-marikar
ishan-marikar / ssh-ssl.js
Last active March 1, 2017 15:02
An SSH/HTTPS proxy that listens on port 443 and proxies traffic depending on what kind of data it is.
const net = require('net');
const LISTENING_PORT = 443;
const HTTPS_PORT = 4443;
const SSH_PORT = 22;
var proxySwitch = function(connection) {
connection.once('data', function(buffer) {
// A TLS handshake record starts with byte 22.
if (buffer[0] === 22) {
#!/bin/bash
for d in /sys/kernel/iommu_groups/*/devices/*; do
n=${d#*/iommu_groups/*}; n=${n%%/*}
printf 'IOMMU Group %s ' "$n"
lspci -nns "${d##*/}"
done
@jimmychu0807
jimmychu0807 / string-conversion.rs
Created November 21, 2019 10:20
Conversion between String, str, Vec<u8>, Vec<char> in Rust
use std::str;
fn main() {
// -- FROM: vec of chars --
let src1: Vec<char> = vec!['j','{','"','i','m','m','y','"','}'];
// to String
let string1: String = src1.iter().collect::<String>();
// to str
let str1: &str = &src1.iter().collect::<String>();
// to vec of byte
@jjenkins70
jjenkins70 / README.md
Created January 23, 2020 19:29
HashiCorp Vault TLS Certificate Auth Samples

Simple Vault TLS Certificate validation & testing

Set of scripts to deploy locally, vault and configure TLS server and user certificates for testing TLS AUTH.

credit to @reard3n (https://github.com/reard3n) and @v6 (https://github.com/v6) for the gist this grew from

Notes

This was tested using Vagrant and Ubuntu

Getting Setup

  • On the OS of your choice copy VaultCASetup.sh script locally and update any variables that would be specific to your environment and/or