Skip to content

Instantly share code, notes, and snippets.

View lcguida's full-sized avatar
🏠

Leandro Guida lcguida

🏠
View GitHub Profile
@lcguida
lcguida / sendmail_staging.rb
Last active January 27, 2017 13:03
Custom delivery method to replace recipient on sendmail for a staging environment
# lib/utils/sendmail_staging.rb
class SendmailStaging < ::Mail::Sendmail
# mail object can be used to modify mail before we pass it
# to sendmail
def deliver!(mail)
mail['to'] = 'yourmail@yourcompany.com' #replace recipient
super(mail) #Let Sendmail do his work
end
@lcguida
lcguida / example.sql
Created December 12, 2016 11:30
Running SQL Examaple
-- Dudu query:
select part_id,produced_at
from (select part_id,produced_at
,dense_rank () over (partition by part_id order by produced_at) as dr
from part_subhourly_data
where produced_at < now() - interval '100 days'
) p
@lcguida
lcguida / active_admin.scss
Last active June 27, 2017 08:29 — forked from seanlinsley/active_admin.scss
Make Active Admin's primary color change between dev/staging/production
// SASS variable overrides must be declared before loading up Active Admin's styles.
//
// To view the variables that Active Admin provides, take a look at
// `app/assets/stylesheets/active_admin/mixins/_variables.css.scss` in the
// Active Admin source.
//
// For example, to change the sidebar width:
// $sidebar-width: 242px;
$primary-color: dynamic_active_admin_color();
@lcguida
lcguida / pre-push
Last active August 4, 2017 14:21 — forked from calebhaye/pre-push
Run tests before git push (within specified branches)
#!/bin/bash
branches_to_test=('master' 'staging' 'develop')
branch=`git rev-parse --abbrev-ref HEAD`
test_branch () {
local e
for e in "${branches_to_test[@]}"
do
@lcguida
lcguida / update_jenkins.sh
Created August 18, 2017 11:07
Jenkins update script
#!/bin/bash
JENKINS_PATH=/usr/share/jenkins
echo -n "Removing old jenkins.war backcups ... "
rm -rf $JENKINS_PATH/jenkins.war.*.bkp
echo "Done"
echo -n "Backing up the current jenkins.war file ... "
cp $JENKINS_PATH/jenkins.war $JENKINS_PATH/jenkins.war.$(date +"%Y%m%d").bkp
@lcguida
lcguida / must_call.rb
Created November 17, 2017 12:09
Minitest `must_call`
# Wrapper to mock.verify procedure when asserting
# a method is called in minitest
class Object
def must_call(method_name, returns: nil, arguments: [])
mock = Minitest::Mock.new
mock.expect(:call, returns, arguments)
self.stub(method_name, mock) do
@lcguida
lcguida / build_database_docker_image.sh
Last active June 4, 2018 12:48
Creating a postgresql docker image from production database
#!/bin/bash
# Fail script if a command fails
set -x
# Grab the latest postgresql:9.4-alpine image
docker pull postgres:9.4-alpine
# We will name our container as `pg_tmp`, so we will
# make sure that no container with this name is running
@lcguida
lcguida / export.rb
Last active August 30, 2018 12:54
Exemplo de batch action ActiveAdmin (Grupo Rails - Facebook)
ActiveAdmin.register MyModel do
# ..
# Configura essa página do active admin para utilizar batch actions
config.batch_actions = true
# Remove a action destory em batch (Você pode controlar outras coisas por aqui)
batch_action :destroy, false
# Cria a action export
@lcguida
lcguida / currency.1h.rb
Created September 7, 2018 15:53
BitBar script to show BRL currency
#!/usr/bin/env ruby
require 'net/http'
require 'json'
url = "http://data.fixer.io/api/latest?access_key=${ENV['FIXER_API_KEY']}&symbols=BRL"
response = Net::HTTP.get(URI(url))
body = JSON.parse(response)
rate = body['rates'] && body['rates']['BRL'] # sometimes I work with ruby 2.2 which doesnt have dig =(
@lcguida
lcguida / setup_ubuntu.sh
Last active November 28, 2018 16:10
Ubuntu new install setup
#!/bin/bash
set -xe
# Update the system
sudo apt -y update && sudo apt -y upgrade
# Make GRUB remeber the last chosen entry
function grub_set_remeber_last_option () {
grub_file=/etc/default/grub