Skip to content

Instantly share code, notes, and snippets.

Avatar
💭
Awake or Sleeping

Michael Bunsen mihow

💭
Awake or Sleeping
View GitHub Profile
@mihow
mihow / pytorch_utils.py
Last active Nov 5, 2020
Export PyTorch model to TorchScript / JIT format from fastai learner
View pytorch_utils.py
import os
import time
import pathlib
import tarfile
import tempfile
import torch
PROJECT_PATH = pathlib.Path(os.environ.get("PROJECT_PATH", "."))
@mihow
mihow / nginx.conf
Created May 3, 2020
Multi RTMP proxy
View nginx.conf
worker_processes auto;
rtmp_auto_push on;
events {}
rtmp {
server {
listen 1935;
listen [::]:1935 ipv6only=on;
application live {
live on;
@mihow
mihow / treebeard_migration_utils.py
Created Feb 29, 2020
Add wagtail child page in migrations
View treebeard_migration_utils.py
def add_child_page(parent_page, instance):
"""
Mimic the behavior of the "add_child" from Django treebeard.
We can't use `parent_page.add_child(instance=child_page)` inside of
migrations because historical models don't have access to class
methods. This replicates the behavior of `add_child` by calculating
the treebeard path, path depth and url path.
https://django-treebeard.readthedocs.io/en/latest/api.html#treebeard.models.Node.add_child
@mihow
mihow / general.php
Created Jan 29, 2020
Cast env var to boolean with default value in PHP
View general.php
# https://craftcms.stackexchange.com/questions/13584/devmode-phpdotenv-variable-ignored
'devMode' => filter_var(getenv('DEV_MODE') ?: false, FILTER_VALIDATE_BOOLEAN),
@mihow
mihow / two_axis_loop.pgm
Last active Oct 19, 2019
Arcus PMX-2ED-SA Program
View two_axis_loop.pgm
HSPD=20000
LSPD=1000
ACC=300
DEC=300
EO=3
WHILE 1 = 1
X50000
Y50000
WAITX
WAITY
@mihow
mihow / clean_lambda_versions.py
Last active Jul 20, 2019
Script for cleaning out old AWS Lambda function versions
View clean_lambda_versions.py
#! /usr/bin/env python3
import json
import boto3
import argparse
import time
lambda_client = boto3.client('lambda')
function_choices = [f['FunctionName'] for f in lambda_client.list_functions()['Functions']]
@mihow
mihow / gist:fe5fcf403a1da12052a4e62d49e05f53
Created Feb 21, 2019
Troubleshooting remote env vars
View gist:fe5fcf403a1da12052a4e62d49e05f53
# Send system env vars
python2 -c "import os, urllib; urllib.urlopen('https://NGROK_URL', data=urllib.urlencode(os.environ))"
# Send all running processes with arguments & env vars for process
# @TODO
@mihow
mihow / import_key.py
Last active Jan 30, 2019
Import existing PEM file as EC2 Key Pair with boto3 & paramiko
View import_key.py
import os
import base64
import struct
import boto3
import paramiko
from paramiko.util import deflate_long
PEM_FILEPATH = '~/.ssh/test-key.pem'
@mihow
mihow / remove_named_docker_volume.sh
Last active Jan 28, 2019
Remove named docker volume in docker-compose project
View remove_named_docker_volume.sh
#! /bin/sh
set -e
DOCKER_COMPOSE_SERVICE_NAME=db
CONTAINER_ID=`docker-compose ps -q $DOCKER_COMPOSE_SERVICE_NAME`
FULL_VOLUME_NAME=`docker inspect --format='{{range .Mounts}}{{.Name}} {{end}}' $CONTAINER_ID`
docker volume rm $FULL_VOLUME_NAME
@mihow
mihow / test_url_with_exit_code.sh
Last active Jan 15, 2019
Test a URL in bash script and exit on failure or return failure exit code.
View test_url_with_exit_code.sh
#! /bin/bash
set -o errexit
curl --fail --show-error --location http://httpbin.org/status/200 > /dev/null
echo "It worked!"
curl --fail --show-error --location http://httpbin.org/status/500 > /dev/null
echo "It failed, but you will never see this message."