Skip to content

Instantly share code, notes, and snippets.

View varunchandak's full-sized avatar
🏠
Working from home

Varun Chandak varunchandak

🏠
Working from home
View GitHub Profile
@varunchandak
varunchandak / phrases-for-work.md
Created November 21, 2022 17:08
Phrases for Work
  • Were you BORN this stupid? Or did it just take years of practice?
  • I don't know what your problem is, but I'll bet it's hard to pronounce.
  • The beatings will continue until morale improves
  • How about never? Is never good for you?
  • I see you've set aside this special time to humiliate yourself in public.
  • Busy, you thought busy was a policeman. "In England for some reason, they call the policeman busy
  • I'm really easy to get along with once you people learn to worship.
  • I'll try being nicer if you'll try being smarter.
@varunchandak
varunchandak / linkedin-connection-remover.js
Created October 24, 2022 07:42
LinkedIn Connection Bulk Remover
function stepOne(){
document.querySelector('button.mn-connection-card__dropdown-trigger.artdeco-button--tertiary.artdeco-button--muted.artdeco-button--circle.p1.artdeco-dropdown__trigger.artdeco-dropdown__trigger--placement-bottom.ember-view').click();
window.zorro++;
setTimeout(function () {
document.querySelector('button.display-flex').click();
window.zorro++;
@varunchandak
varunchandak / iam_authentication_for_rds.md
Created May 1, 2019 04:54
IAM Authentication for RDS

RDS Authentication via IAM User/Role

  1. Enable IAM Authentication in existing RDS using the link here: Enabling and Disabling IAM Database Authentication

  2. Login to RDS with master username password.

    mysql -h <RDS_ENDPOINT> --user <MASTER_USERNAME> --password
@varunchandak
varunchandak / single-iam-user-with-password.yml
Created July 28, 2022 12:57
CloudFormation template provisions a single IAM User with password
AWSTemplateFormatVersion: '2010-09-09'
Description: This template provisions a single IAM User with password
Metadata:
Authors:
Description: Will Nave (will@1strategy.com)
Purpose:
Description: "This template is used to create a stack that implements a single IAM User. The user can
be associated with an IAM Group and/or one of several Managed Policies offered by AWS. Each managed policy maps
to a traditional user job function/role. The stack exports both the user name and ARN on successful
deployment."
@varunchandak
varunchandak / delete-unused-disks-from-gcp-project.sh
Created June 23, 2022 15:15
Script to delete unused disks from GCP project
export GCP_PROJECT=<PROJECT_ID>
IFS=','
gcloud compute disks list \
--format json \
--project "$GCP_PROJECT" | \
jq -r '.[]|select(.users == null)|.name, .zone' | \
paste -d, - - | \
sed "s,https://www.googleapis.com/compute/v1/projects/$GCP_PROJECT/zones/,,g" | \
while read DISK_NAME ZONE_ID; do
@varunchandak
varunchandak / jenkins-upgrade-script.sh
Last active June 10, 2022 12:11
Automated Jenkins Upgrade Script
#!/bin/bash
# This script will auto upgrade jenkins to latest stable version if found.
export EPOCH_DATE="$(date +%s)"
export JENKINS_UPGRADE_URL="http://mirrors.jenkins-ci.org/war-stable/latest/jenkins.war"
export JENKINS_DIR="/usr/share/java"
export TEMP_DIR="/tmp/jenkins-upgrade-"$EPOCH_DATE"/"
export WEBHOOK="https://hooks.slack.com/services/XXXX/YYYY/ZZZZZ"
# Create temp directory
@varunchandak
varunchandak / bhagawad-geeta-one-liners.md
Created June 7, 2022 09:49
bhagawad-geeta-one-liners.md

One liner Bhagawad Geeta

Chapter 1 - Wrong thinking is the only problem in life.

Chapter 2 - Right knowledge is the ultimate solution to all our problems.

Chapter 3 - Selflessness is the only way to progress and prosperity.

Chapter 4 - Every act can be an act of prayer.

@varunchandak
varunchandak / delete-unused-aws-iam-roles-using-aws-cli.sh
Last active April 20, 2022 08:05
delete unused aws iam roles using aws cli
#!/bin/bash
aws iam list-roles --max-items 1000 | jq -r '.Roles[]|[.RoleName, .Arn, .CreateDate]|@csv' | grep -v -e '/aws-service-role/' -e '"AWSServiceRoleFor' -e '/aws-reserved/' | tr -d '"' | cut -d, -f1 | while read ROLE_NAME; do
echo "$ROLE_NAME"
aws iam get-role --role-name "$ROLE_NAME" | jq -r '.Role|.CreateDate, .RoleLastUsed.LastUsedDate // "UNUSED"'
done | paste -d, - - - | grep ",UNUSED$" | cut -d, -f1 | while read UNUSED_ROLE_NAME; do
echo "$UNUSED_ROLE_NAME is unused"
aws iam list-attached-role-policies --role-name "$UNUSED_ROLE_NAME" | jq -r '.AttachedPolicies[].PolicyArn' | while read ATTACHED_POLICY; do
aws iam detach-role-policy --role-name "$UNUSED_ROLE_NAME" --policy-arn "$ATTACHED_POLICY"
done
@varunchandak
varunchandak / terraform.yml
Created January 26, 2022 05:41
terraform validate and plan github action
---
name: "Validate Terraform files"
on:
push:
branches:
- main
pull_request:
jobs:
terraform:
name: Validate Terraform files
@varunchandak
varunchandak / enable-aws-config-all-regions.sh
Last active January 23, 2022 11:50
Enable AWS Config in all regions
#!/bin/bash
aws ec2 describe-regions | jq -r '.Regions[].RegionName' | while read REGION; do
export AWS_DEFAULT_REGION="$REGION"
export AWS_REGION="$REGION"
export AWS_DEFAULT_OUTPUT="json"
export AWS_ACCOUNT_ID="$(aws sts get-caller-identity --output json | jq -r .Account)"
export CENTRAL_AWS_BUCKET="config-bucket-123456789012"
echo "$REGION"
echo "{\"name\": \"default\",\"s3BucketName\": \"$CENTRAL_AWS_BUCKET\",\"configSnapshotDeliveryProperties\": {\"deliveryFrequency\": \"Three_Hours\"}}" > deliveryChannel.json