Skip to content

Instantly share code, notes, and snippets.

View mikeatlas's full-sized avatar
💻

Mike Atlas mikeatlas

💻
View GitHub Profile
@mikeatlas
mikeatlas / new_invitation.html.erb
Last active April 17, 2022 19:36
How to invite users in active admin with devise_invitable
<!-- /app/views/admin/users/new_invitiations.html.erb -->
<h2>Send invitation</h2>
<%= form_for @user, :url => send_invitation_admin_users_path do |f| %>
<table style='width: 50%'>
<tr>
<td><%= f.label :first_name %></td>
<td><%= f.text_field :first_name %></td>
@mikeatlas
mikeatlas / circle.yml
Created May 31, 2013 23:15
Sample circle.yml - How to precompile assets of a rails project (using the turbo-sprockets-rails3 gem) before pushing to heroku
deployment:
continuous_integration_deployment_test:
branch: master
commands:
- git config --global user.email "ci@test.com"
- git config --global user.name "Continuous Integration"
- git checkout -b with_precompiled_assets
- bundle exec rake assets:precompile assets:clean_expired:
timeout: 1500
- git add public/assets
@mikeatlas
mikeatlas / push_to_heroku.rake
Last active December 18, 2015 03:09
Example of how to dynamically set a rails secret_token per-heroku app instance. This sets a heroku environment variable on deployment, which is attempted to be read as a secret_token key file. If the token is not found, a new one is generated on the fly (draw back here is that a dynamic secret_key is used every time the app restarts, causing all…
desc 'Pushes to heroku demo app'
task :push_to_demo => :environment do |t, args|
app_name = 'demo'
push app_name
end
def push(app_name)
puts "$$$$$$$$$$ Pushing to heroku app: #{app_name}"
puts "$$$$$ Pushing to heroku app: #{app_name}"
@mikeatlas
mikeatlas / clear_dev_logs_in_rails.rb
Last active February 28, 2021 14:39
automatically clear rails development logs on startup if they're too big
# config/initializers/clear_logs.rb
# This snippet simply clears your logs when they are too large.
# Every time you start the rails environment it checks log sizes
# and clears the logs for you if necessary.
if Rails.env.development?
MAX_LOG_SIZE = 10.megabytes
logs = File.join(Rails.root, 'log', '*.log')
@mikeatlas
mikeatlas / .git-flow-branch-in-prompt.sh
Last active December 20, 2015 20:08
git flow branch in bash prompt (add to ~/.bash_profile)
# http://henrik.nyh.se/2008/12/git-dirty-prompt
# http://www.simplisticcomplexity.com/2008/03/13/show-your-git-branch-name-in-your-prompt/
# username@Machine ~/dev/dir[master]$ # clean working directory
# username@Machine ~/dev/dir[master*]$ # dirty working directory
function parse_git_dirty {
[[ $(git status 2> /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "*"
}
function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e "s/* \(.*\)/[\1$(parse_git_dirty)]/"
-# put this in your layout
-# what this does it is loads the split_asset application.css file using the correct sprockets name
/[if lt IE 10]
= stylesheet_link_tag stylesheet_path('application').gsub(/\/assets\//, '/split_assets/')
@mikeatlas
mikeatlas / gist:0b69b354a8d713989147
Last active August 30, 2017 17:53
splitting polyline paths across the international dateline in leaflet (sorry that it uses a mix of jQuery and lo-dash for helpers and is in coffeescript)
Array.prototype.splitAtEvery = (callback) ->
sections = []
arrayClone = this.slice(0)
$.each(arrayClone, (idx, item) =>
sectionsLength = 0
_.each(sections, (section) =>
sectionsLength += section.length;
)
if callback(this, idx, item) == true
sections.push(arrayClone.slice(0, idx+1-sectionsLength))
@mikeatlas
mikeatlas / GeoMesa-CDH-5.3.md
Last active August 29, 2015 14:14
Getting GeoMesa 1.0 to work on Cloudera CDH 5.3 with Accumulo 1.6

Getting GeoMesa 1.0 to work on Cloudera CDH 5.3 with Accumulo 1.6

by @mikeatlas

Thanks goes out to @manasdebashiskar for helping me work through all these steps!

Getting GeoMesa to work on Accumulo 1.6 using Cloudera's CDH 5.3 is not any less easy than getting it to work on the officially supported version of Accumulo 1.5.x, but here are the steps you can take to make it happen.

First, you will need to setup an Accumulo 1.6 cluster in CDH. This requires you create a Zookeeper cluster, an HDFS cluster, and a Hadoop MapReduce cluster. For my purposes, I have the following setup (yours may differ as you see fit/need):

  • 3-host Zookeeper cluster, each running Ubuntu 12.02 (ami-018dd631 EC2 image) on t2.medium instances
@mikeatlas
mikeatlas / pom.xml
Created February 2, 2015 20:31
GeoMesa CDH 5.3 Accumulo 1.6 pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright 2014 Commonwealth Computer Research, Inc.
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
@mikeatlas
mikeatlas / pom.xml
Created February 2, 2015 20:57
GeoMesa Quickstart CDH 5.3 Accumulo 1.6 pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<repositories>
<repository>
<id>maven2-repository.dev.java.net</id>
<name>Java.net repository</name>