Skip to content

Instantly share code, notes, and snippets.

View willrax's full-sized avatar
🍿

Will Raxworthy willrax

🍿
View GitHub Profile
defp set_status(:ok, site) do
ConCache.update(:sites, site.name, fn(old) ->
case old do
%{incident_key: incident_key} ->
Pagexduty.Server.resolve("#{site.name} health check has passed", incident_key)
_ ->
nil
end
{:ok, %{status: :ok}}
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});
@willrax
willrax / event_manager.ex
Created July 8, 2016 14:42
walnut_event-manager.ex
def site_checked(site = %{status: status}, status) do
payload = {:nochange, site, %{}}
GenServer.cast(__MODULE__, {:notify, {:site_checked, payload}})
end
def site_checked(site = %{status: new_status, reason: reason}, old_status) do
payload = {:change, site, %{from: old_status, to: new_status, reason: reason}}
GenServer.cast(__MODULE__, {:notify, {:site_checked, payload}})
end
@willrax
willrax / pagerduty.ex
Created July 8, 2016 14:46
PagerDuty Event
def handle_event({:site_checked, {:change, site, payload}}, state) do
%{from: old_status, to: new_status} = payload
trigger_pagerduty(site, new_status, old_status)
{:ok, state}
end
def handle_event(_, state), do: {:ok, state}
@willrax
willrax / controllers.application.js
Created July 14, 2016 14:50
composable-helpers
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
actions: {
myAction() {
// do big action!
return true;
}
import Ember from 'ember';
export default Ember.Controller.extend({
});
@willrax
willrax / controllers.application.js
Last active September 22, 2016 08:05
properties
import Ember from 'ember';
const { computed } = Ember;
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
model: {
name: 'will'
},
@willrax
willrax / controllers.application.js
Last active September 20, 2017 13:37 — forked from poteto/controllers.application.js
ember-changeset-validations demo
import Ember from 'ember';
import AdultValidations from '../validations/adult';
import ChildValidations from '../validations/child';
import { reservedEmails } from '../validators/uniqueness';
import { schema } from '../models/user';
const { get } = Ember;
const { keys } = Object;
export default Ember.Controller.extend({
#!/bin/sh
# Base16 Eighties - Shell color setup script
# Chris Kempson (http://chriskempson.com)
if [ "${TERM%%-*}" = 'linux' ]; then
# This script doesn't support linux console (use 'vconsole' template instead)
return 2>/dev/null || exit 0
fi
color00="2d/2d/2d" # Base 00 - Black
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle'
});