Skip to content

Instantly share code, notes, and snippets.

View happysundar's full-sized avatar

Sundar Rajagopalan happysundar

View GitHub Profile

fpm -s dir -t rpm -C /build -a all --verbose --no-depends --provides email-insights.jar -n email-insights -v 1.0.4 --prefix /opt/idp/email-insights email-insights.jar

@happysundar
happysundar / docker_commands.md
Last active February 1, 2017 04:38
docker commands

Creating an image

  1. Create a single Dockerfile in ~/dockerfile/Dockerfile
FROM centos
VOLUME /Users/sundar.rajagopalan/Downloads
VOLUME /Users/sundar.rajagopalan/docker-dir
RUN ["useradd", "builder"]
RUN ["yum", "install", "rpm-build", "-y"]
@happysundar
happysundar / setup.py
Created May 11, 2016 19:40
Sample setup.py
# $ virtualenv venv
# $ . venv/bin/activate
# $ pip install --editable
from setuptools import setup
setup(
name='repl_domstore',
version='0.1',
py_modules=['repl_domstore'],

tmux cheatsheet

As configured in my dotfiles.

start new:

tmux

start new with session name:

@happysundar
happysundar / LogstashAppender.java
Created April 12, 2015 05:35
Logstash appender for dropwizard : this generates a logstash compatible log file that can be synced using the logstash-forwarder
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.Appender;
import ch.qos.logback.core.FileAppender;
import ch.qos.logback.core.Layout;
import com.fasterxml.jackson.annotation.JsonTypeName;
import io.dropwizard.logging.FileAppenderFactory;
import net.logstash.logback.encoder.LogstashEncoder;
@happysundar
happysundar / cleanup_schemas.sql
Created October 23, 2014 23:40
posgresql function to cleanup the schemas within a database
DROP FUNCTION IF EXISTS cleanup( ) CASCADE;
CREATE OR REPLACE FUNCTION
cleanup()
RETURNS VOID
AS $$
DECLARE
row RECORD ;
BEGIN
FOR row IN WITH T1 AS (SELECT nspname :: TEXT AS schema_name
FROM pg_catalog.pg_namespace), T2 AS (SELECT schema_name
@happysundar
happysundar / get_column_names
Created October 19, 2014 18:42
Get all the column names of a table...
DROP FUNCTION IF EXISTS get_column_names_csv( TEXT, TEXT ) CASCADE;
CREATE OR REPLACE FUNCTION
get_column_names_csv(input_schema_name TEXT, input_table_name TEXT)
RETURNS SETOF TEXT IMMUTABLE
AS $$
BEGIN
RETURN QUERY
WITH T1 AS (
SELECT column_name
FROM rovi.information_schema.columns
@happysundar
happysundar / plpython_returning_record.py
Last active August 7, 2020 23:05
Example of a PLPythonU method that returns a record
DROP FUNCTION IF EXISTS get_role_to_actor_and_actor_to_role( INOUT BIGINT, OUT JSONB, OUT JSONB );
CREATE OR REPLACE FUNCTION get_role_to_actor_and_actor_to_role(
INOUT program_id BIGINT,
OUT actor_to_role JSONB,
OUT role_to_actor JSONB)
RETURNS RECORD IMMUTABLE
AS $plpython_function$
import json
@happysundar
happysundar / JSONB to array
Created August 22, 2014 23:34
how to extract an array out of JSONB in postgres
select array_agg(value) from jsonb_each_text('{"3d": "2011-05-20", "wide": "2011-05-20", "imax_3d": "2011-05-20"}'::jsonb);
@happysundar
happysundar / install_python.yaml
Created August 7, 2014 22:31
playbook to get virtualenv + pythoz installed in a Centos box
---
- hosts: all
sudo: yes
tasks:
- name: install the EPEL and remi repos
yum: name={{item}}
state=installed
with_items:
- http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
- http://rpms.famillecollet.com/enterprise/remi-release-6.rpm