Skip to content

Instantly share code, notes, and snippets.

View fadhlirahim's full-sized avatar
💭
Most happiest building code that make sense.

Fadhli Rahim fadhlirahim

💭
Most happiest building code that make sense.
View GitHub Profile
@fadhlirahim
fadhlirahim / load_cassete.rb
Created January 16, 2024 01:08
Reading ruby gem vcr cassette binary
require 'yaml'
require 'oj'
path = 'spec/vcr_cassettes/cassette.yml'
loaded = YAML.load_file(path)
body_string = loaded['http_interactions'][0]['response']['body']['string']
Oj.load(body_string)
@fadhlirahim
fadhlirahim / s3_bucket_size
Created October 4, 2023 01:33
Bash function to get the size of S3 bucket
# Usage:
#
# s3_bucket_size your-bucket-name
#
function s3_bucket_size() {
if [ -z "$1" ]; then
echo "Please provide a bucket name."
return 1
fi
@fadhlirahim
fadhlirahim / elixir.json
Created September 20, 2022 10:14
VSCode elixir snippet
{
"lv_module": {
"prefix": "lv",
"body": [
"defmodule ${WORKSPACE_NAME/((^[a-z])|_([a-z]))/${2:/upcase}${3:/upcase}/g}Web.${4}Live do",
" use ${WORKSPACE_NAME/((^[a-z])|_([a-z]))/${2:/upcase}${3:/upcase}/g}Web, :live_view",
"end",
],
"description": "LiveView module"
},
@fadhlirahim
fadhlirahim / google_play_verification.rb
Created April 7, 2021 07:07 — forked from jkotchoff/google_play_verification.rb
Verifying an Android subscription in a Ruby on Rails app using the Google Play API
class GooglePlayVerification
require 'google/api_client'
# Refer:
# https://code.google.com/p/google-api-ruby-client/issues/detail?id=72
# and
# http://jonathanotto.com/blog/google_oauth2_api_quick_tutorial.html
# and
# http://milancermak.wordpress.com/2012/08/24/server-side-verification-of-google-play-subsc/
GOOGLE_KEY = 'xxx-xxx.apps.googleusercontent.com'
@fadhlirahim
fadhlirahim / install-wireguard-server.sh
Created March 5, 2021 16:30 — forked from jph00/install-wireguard-server.sh
Installation of Wireguard server. Tested on Ubuntu 20.04. Should work on 18.04 as well.
#!/usr/bin/env bash
set -e
echo
if ! [[ $(id -u) = 0 ]]; then
echo "Please run 'sudo ./install-wireguard.sh'" >&2
exit 1
fi
read -e -p "Use VPN for *all* internet traffic? [y/n] " -i n ROUTE_ALL
@fadhlirahim
fadhlirahim / config.yml
Created January 14, 2020 07:46 — forked from sjparkinson/config.yml
Deploy a Fastly service using Terraform and CircleCI 2.0.
version: 2
jobs:
validate_terraform:
docker:
- image: hashicorp/terraform
steps:
- checkout
- run:
name: Validate Terraform Formatting
@fadhlirahim
fadhlirahim / rails-jsonb-queries
Created March 30, 2018 13:07 — forked from mankind/rails-jsonb-queries
Rails-5 postgresql-9.6 jsonb queries
http://stackoverflow.com/questions/22667401/postgres-json-data-type-rails-query
http://stackoverflow.com/questions/40702813/query-on-postgres-json-array-field-in-rails
#payload: [{"kind"=>"person"}]
Segment.where("payload @> ?", [{kind: "person"}].to_json)
#data: {"interest"=>["music", "movies", "programming"]}
Segment.where("data @> ?", {"interest": ["music", "movies", "programming"]}.to_json)
Segment.where("data #>> '{interest, 1}' = 'movies' ")
Segment.where("jsonb_array_length(data->'interest') > 1")
Verifying my Blockstack ID is secured with the address 183sRivGhZ3eMkoN4aJE2fS7j4kRpnHKd https://explorer.blockstack.org/address/183sRivGhZ3eMkoN4aJE2fS7j4kRpnHKd
@fadhlirahim
fadhlirahim / nginx.conf
Created October 17, 2017 04:45 — forked from nateware/nginx.conf
Nginx sample config for EC2
#
# Sample nginx.conf optimized for EC2 c1.medium to xlarge instances.
# Also look at the haproxy.conf file for how the backend is balanced.
#
user "nginx" "nginx";
worker_processes 10;
error_log /var/log/nginx_error.log info;
@fadhlirahim
fadhlirahim / snapshots.py
Created March 29, 2017 15:46 — forked from Eyjafjallajokull/README.md
AWS EBS - Find unused snapshots - this script generates csv raport about snapshot usage
import re
import boto3
import csv
from botocore.exceptions import ClientError
ec2 = boto3.client('ec2')
def get_snapshots():
return ec2.describe_snapshots(OwnerIds=['self'])['Snapshots']