I'm trying to figure out how to use rebar to:
- create erlang project
- add a dependency on an erlang module from github
- start the app via the erl console
- create a release and start the app from the release (via the generated scripts)
| #!/usr/bin/env bash | |
| # Use this one-liner to produce a JSON literal from the Git log: | |
| git log \ | |
| --pretty=format:'{%n "commit": "%H",%n "author": "%aN <%aE>",%n "date": "%ad",%n "message": "%f"%n},' \ | |
| $@ | \ | |
| perl -pe 'BEGIN{print "["}; END{print "]\n"}' | \ | |
| perl -pe 's/},]/}]/' |
| These properties can be used to alter runtime behavior for perf or compatibility. | |
| Specify them by passing -X<property>=<value> | |
| or if passing directly to Java, -Djruby.<property>=<value> | |
| or put <property>=<value> in .jrubyrc | |
| compiler settings: | |
| compile.mode=[JIT, FORCE, OFF] | |
| Set compilation mode. JIT = at runtime; FORCE = before execution. Default is JIT. | |
| compile.dump=[true, false] |
| require 'java' | |
| require 'lwjgl.jar' | |
| require 'slick.jar' | |
| java_import org.newdawn.slick.Image | |
| require 'pong/image_context' | |
| require 'pong/collidable_attributes' | |
| module Pong |
| # | |
| # Mirah REPL -- hacked to bits | |
| # | |
| # assuming your ruby is jruby, | |
| # $ gem install mirah | |
| # $ ruby -rubygems repl.rb | |
| # m> class Foo | |
| # m> def bar | |
| # m> 12 | |
| # m> end |
| #!/bin/bash | |
| while : | |
| do | |
| clear | |
| git --no-pager log -$1 --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative | |
| sleep 1 | |
| done |
| -- show running queries (pre 9.2) | |
| SELECT procpid, age(clock_timestamp(), query_start), usename, current_query | |
| FROM pg_stat_activity | |
| WHERE current_query != '<IDLE>' AND current_query NOT ILIKE '%pg_stat_activity%' | |
| ORDER BY query_start desc; | |
| -- show running queries (9.2) | |
| SELECT pid, age(clock_timestamp(), query_start), usename, query | |
| FROM pg_stat_activity | |
| WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%' |
| -module(barber). | |
| -export([run/2, barber/1, clients/1, simulator/2]). | |
| -define(CUT_DUTAION, 20). | |
| run(RoomSize, Duration) -> | |
| % create barber | |
| BPid = spawn(?MODULE, barber, [?CUT_DUTAION]), | |
| % run simulartor with barber PID | |
| SPid = spawn(?MODULE, simulator, [BPid, RoomSize]), |
| # you can make a text file of request times (in ms, one number per line) and import it here, or you can use a probability distribution to simulate request times (see below where setting req_durations_in_ms) | |
| # rq = read.table("~/Downloads/request_times.txt", header=FALSE)$V1 | |
| # argument notes: | |
| # parallel_router_count is only relevant if router_mode is set to "intelligent" | |
| # choice_of_two, power_of_two, and unicorn_workers_per_dyno are only relevant if router_mode is set to "naive" | |
| # you can only select one of choice_of_two, power_of_two, and unicorn_workers_per_dyno | |
| run_simulation = function(router_mode = "naive", | |
| reqs_per_minute = 9000, |
| (require 'offlineimap) | |
| (add-to-list 'load-path "~/.emacs.d/lib/mu4e") | |
| (require 'mu4e) | |
| (require 'mu4e-maildirs-extension) | |
| (mu4e-maildirs-extension) | |
| (setq mu4e-drafts-folder "/drafts" | |
| mu4e-sent-folder "/sent" | |
| mu4e-trash-folder "/trash") | |
| (setq mu4e-maildir-shortcuts |